341 Commits

Author SHA1 Message Date
Ken Van Hoeylandt
03aa8f62ba
Updated desktop icons (#37) 2024-02-10 21:29:52 +01:00
Ken Van Hoeylandt
5558edccce
Statusbar improvements (#36)
- Added sdcard service: it updates a statusbar icon and it can auto-unmount sdcards that were physically ejected by the user.
- Added `is_mounted` check for sdcard drivers
- Refactored assets: moved them from `tactility-esp/` to `data/`
- Made assets work with sim build
- Refactored wifi statusbar icons
- Refactored wifi_manage app access point icons
- Support not having an initial image icon when registering a new icon in statusbars. When a statusbar icon is added, it is now visible/invisible depending on whether an image was specified.
- Keep track of app memory on app start to find memory leaks (needs fine-tuning in the future)
- `tt_init()` assigns `config_instance` earlier, so it can be used during service init
2024-02-09 23:53:29 +01:00
Ken Van Hoeylandt
29ea47a7ba
Improvements for Files app and statusbar icon (#35)
- Created `tt_get_platform()` to use with more complex platform checks aside from the `ESP_PLATFORM` preprocessor directive
- Expand PC/sim memory to 256k so we can load the max amount of entries in Files without memory issues. I decided to skip the LVGL buffer entirely so it's easier to catch memory leaks.
- Simplified logic in `files_data.c`
- Implement statusbar as a proper widget
- Implement statusbar widget for wifi service
- Implement statusbar widget for sdcard mounting/unmounting
2024-02-07 23:11:39 +01:00
Ken Van Hoeylandt
5880e841a3
Implemented Files app (#33)
- Created Files app to browse PC and ESP32 files.
- Refactored toolbars so it's now a proper widget and allows for changing its properties from the app
- Toolbar now has extra action buttons
- Settings app now has a proper icon
- Minor cleanup in Desktop app
2024-02-06 23:18:34 +01:00
Ken Van Hoeylandt
93e4378a9e
Various improvements (#34)
* Cleanup function declarations
* Align window toolbar title to the left
2024-02-04 17:59:25 +01:00
Ken Van Hoeylandt
69165263f1
Various improvements (#32)
- Set DPI for Waveshare S3 board
- Cleanup whitespace in test
- Replace FreeRTOS semaphore in `Loader` to `Mutex`
2024-02-03 15:45:53 +01:00
Ken Van Hoeylandt
4f89918e91
Timer fixes & tests added 2024-02-02 22:19:36 +01:00
Ken Van Hoeylandt
47377439dd
Implement unit testing (#30)
- Create `test` and `tactility-core-tests` subprojects
- Created tests for `thread.c`
- Fixed issue with thread cleanup (see what I did there? :P)
- Removed functions from `thread.h` that did not exist anymore
- Updated `ideas.md`
2024-02-02 00:12:36 +01:00
Ken Van Hoeylandt
50e7fb92c8
Updated README.md (#29) 2024-01-31 22:37:30 +01:00
Ken Van Hoeylandt
77f386f0b9
Simplify Hello World apps and update docs (#28)
* Simplify Hello World apps
* Updated docs
2024-01-31 22:26:22 +01:00
Ken Van Hoeylandt
7f133e65c5
Added settings app (#27)
- Added Settings app to show all apps of type `AppTypeSettings`.
- Removed the `AppTypeSettings` apps from the Desktop app.
2024-01-31 21:00:46 +01:00
Ken Van Hoeylandt
d171b9a231
Display brightness support (#26)
* cleanup

* brightness control and app

* cleanup

* persistant storage of display settings

* fix for missing include

* header cleanup

* fix pc build

* add docs

* move display app to tactility project
2024-01-31 20:39:12 +01:00
Ken Van Hoeylandt
ae5c828f42
Cleanup of Waveshare board drivers 2024-01-28 22:39:29 +01:00
Ken Van Hoeylandt
ddf46b07e9
SD card support for 2432S024C and some fixes (#24)
- Implemented SD card support for Yellow Board 2432S024C
- Fix for locking bug when showing gui keyboard
- T-Deck driver naming fixes
- Loader tag name consistency improvement
2024-01-28 21:52:05 +01:00
Ken Van Hoeylandt
d27579848a
SD card support (#23)
### General
- Added support for SD cards in `HadwareConfig`
- Properly disabled PC build for now (I was still getting error emails)
- Updated `README.md` with a device compatibility table

### T-Deck:
- Implemented SD card support
- Logging message cleanup
- Updated `config,h` with various new settings
- Reduced stack depth from `8096` to `5000`
2024-01-28 16:34:25 +01:00
Ken Van Hoeylandt
618f557a16
Simplify keyboard support (#22)
* simplify keyboard support

* removed cleanup code as it wasn't necessary

* improved docs
2024-01-28 00:04:47 +01:00
Ken Van Hoeylandt
7a7b31e426
Various improvements (#21)
* T-Deck stability and naming improvements

* allow main task to clean itself up

* remove unused includes

* various lvgl improvements

* added docs
2024-01-27 23:13:17 +01:00
Ken Van Hoeylandt
a2f0399c9f
Improved startup sequence (#20)
* Improved startup sequence

* updated comments/order
2024-01-27 16:28:48 +01:00
Ken Van Hoeylandt
ccbe6b7ab8
LilyGo T-Deck keyboard support & display driver improvements (#19)
* LilyGo T-Deck keyboard support

* reverse logic

* docs and readability

* cleanup

* optimize driver buffer

* cleanup
2024-01-27 12:34:02 +01:00
Ken Van Hoeylandt
14eb43211d
Support for Waveshare S3 Touch LCD 4.3 (#18)
* initial changes for waveshare s3 touch support

* fix lvgl locking

* fix for lvgl locking

* cleaned up dependencies

* boards now depend on tactility instead of tactility-esp

* revert deletion

* remove component

* working touch&display driver

* added waveshare to github actions

* cleanup

* fix for driver

* fix for sim build

* build fixes

* updated docs

* updated docs

* attempt new sdl2 github action

* revert

* fixes for clion/cmdline build

environment wasn't parsed properly

* temporarily disable pc sim build
2024-01-26 21:36:21 +01:00
Ken Van Hoeylandt
ed2d0cc78a
Move FreeRTOSConfig.h to app-sim (#17)
* Move FreeRTOSConfig.h to app-sim

* improved docs

* updated ideas.md and removed finished todos
2024-01-22 00:27:17 +01:00
Ken Van Hoeylandt
d6baf40d0b
Implement LVGL with SDL for simulator (#16)
* Implemented LVGL with SDL for simulator

* cleanup

* added SDL to build

* build fix

* mutex fixes

* sim app cleanup and improvements

* docs updated

* fix for sdl?

* fix for SDL cmake setup
2024-01-21 22:27:00 +01:00
Ken Van Hoeylandt
18a5c5aa45
Move Config back to tactility project (#15) 2024-01-20 16:23:33 +01:00
Ken Van Hoeylandt
e2209ccba8
Move app/service code from tactility-core to tactility (#14)
* Move app/service code from tactility-core to tactility

* fix formatting

* updated dev docs
2024-01-20 15:41:01 +01:00
Ken Van Hoeylandt
0c724e2e68 Improved gitignore for cmake directory generation 2024-01-20 14:21:38 +01:00
Ken Van Hoeylandt
6bd65abbb4
Tactility modules refactored (#13)
* refactor modules

* moved esp_lvgl_port to libs/

* added missing file

* fix for sim build

* various sim/pc fixes

* lvgl improvements

* added missing cmake files
2024-01-20 14:10:19 +01:00
Ken Van Hoeylandt
a94baf0d00
Support for PC platform (#12)
* improvements for cross-platform compiling

* moved tactility-core to libs/

* splitup improvements

* remove git/gitmodules from freertos

* better platformbetter platform checks

* added build scripts

* delete mbedtls

* re-add mbedtls

* fixes and improvements

* added pc build

* simplify build scripts

* revert build scrpit

* updated builds

* fix for pc

* fix for pc

* fix for build
2024-01-19 17:39:30 +01:00
Ken Van Hoeylandt
c830c66063 View and state updating simplified 2024-01-17 23:59:04 +01:00
Ken Van Hoeylandt
aa6f05e54c Use TT logging instead of ESP 2024-01-17 23:56:02 +01:00
Ken Van Hoeylandt
468bbdc308 Use CBC not ECB 2024-01-17 23:52:31 +01:00
Ken Van Hoeylandt
36f24776b1 Prepare code for non-ESP usage 2024-01-17 23:21:45 +01:00
Ken Van Hoeylandt
1ed7489088 Don't store ssid when encryption failed 2024-01-17 23:16:07 +01:00
Ken Van Hoeylandt
d8b22912e6 cross-platform logging 2024-01-17 22:49:25 +01:00
Ken Van Hoeylandt
6550fa4583 move mlib to libs folder 2024-01-17 21:45:57 +01:00
Ken Van Hoeylandt
a931b83435 removed cmsis lib and references 2024-01-17 21:02:08 +01:00
Ken Van Hoeylandt
622c9f780c Revert "fix for flash size in default config"
This reverts commit 38e7a359109115f4e3d6fdda963009e3544a6ef3.
2024-01-17 20:52:08 +01:00
Ken Van Hoeylandt
38e7a35910 fix for flash size in default config 2024-01-17 20:50:19 +01:00
Ken Van Hoeylandt
74bfe5e792 Removed custom string implementation 2024-01-15 00:21:53 +01:00
Ken Van Hoeylandt
d9c42ab326 Removed heap tracing and custom output 2024-01-15 00:21:38 +01:00
Ken Van Hoeylandt
16dc1e385c Various UI/UX improvements
- Implemented keyboard in gui service
- Various UI/UX improvements in wifi apps
2024-01-14 23:26:37 +01:00
Ken Van Hoeylandt
ba1f81f599
Implemented wifi credentials storage (#11)
* implemented wifi credentials storage

* encrypt wifi credentials
2024-01-14 18:46:04 +01:00
Ken Van Hoeylandt
069416eee5
Rename furi to tactility-core (#10)
* renamed module

* renamed code

* more renames

* cleanup
2024-01-13 22:12:40 +01:00
Ken Van Hoeylandt
64a01df750
Wifi support and much more (#9)
* add wifi service

* updates for service/app registry changes

* wifi wip

* basic wifi functionality

radio on/off is working
scanning state is working

* fix for wifi switch state

* reduce singleton usage

* various improvements

* improved error handling for low memory issues

* working scanning

* various improvements

* various improvements and fixes

+ added auto-start support in Config

* allow hardwareconfig customizations

* fix for rgb format

* increased lvgl fps

17ms works but 16ms makes the touch events hang for some reason

* layout improvements

* wip on multi-screen view

* basic connection dialog

* more connection logic

* created proper app stack and lifecycle

* cleanup

* cleanup

* cleanup lv widgets

* proper toolbar implementation

* split up wifi apps

* wip

* revert naming

* wip

* temp fix for internal disconnect

* added bundle

* app/service vs appdata/servicedata

* working wifi connect parameters
2024-01-13 14:15:53 +01:00
Ken Van Hoeylandt
83e226f696
implemented service registry (#8)
+ implemented app and service context for data sharing
2024-01-06 20:37:41 +01:00
Ken Van Hoeylandt
051b1548ec added spi ram support 2024-01-06 13:03:51 +01:00
Ken Van Hoeylandt
28bd80c1f1
Rename project to tactility (#7)
* wifi wip

* renamed project to Tactility

* renamed code files and defines

* changed prefixes to tt_

* removed wifi wip code
2024-01-06 12:24:38 +01:00
Ken Van Hoeylandt
b0ffa04d78
semaphore cleanup (#6) 2024-01-05 20:56:44 +01:00
Ken Van Hoeylandt
73ed5a5ebe added comment about hardware 2024-01-05 20:53:14 +01:00
Ken Van Hoeylandt
1d1dd820df simplify config 2024-01-05 19:40:08 +01:00
Ken Van Hoeylandt
e842e30ab3
created ServiceManifest (#5)
based on AppManifest
2024-01-05 19:38:39 +01:00