287 Commits

Author SHA1 Message Date
Ken Van Hoeylandt
881c8517bf
Simplified toolbar creation (#83) 2024-11-22 23:47:18 +01:00
Ken Van Hoeylandt
a4593c6248
Update docs (#82) 2024-11-22 23:36:48 +01:00
Ken Van Hoeylandt
854fefa1a1
Thread and Timer converted to class (#81) 2024-11-22 23:08:18 +01:00
Ken Van Hoeylandt
85e26636a3
C++ conversion (#80)
Converted project to C++
2024-11-22 20:26:08 +01:00
Ken Van Hoeylandt
6d80144e12
WiFi improvements (#79) 2024-11-14 22:31:13 +01:00
Ken Van Hoeylandt
e3c8747867
Wi-Fi client improvements and more (#78)
+ Updated docs
+ Wi-Fi mock improved
+ Wi-Fi status icon improved
2024-11-12 23:59:39 +01:00
Ken Van Hoeylandt
8b6463d060
Wi-Fi improvements (#77)
Refactoring, new features and stability improvements.
2024-11-12 21:36:23 +01:00
Ken Van Hoeylandt
8086cd5d82
GPIO PC mock & Update docs (#76)
* Updated docs

* Make HAL to mock GPIO API for PC

* Update screenshots
2024-11-10 16:15:33 +01:00
Ken Van Hoeylandt
85f47aa43c
Move system apps (#75)
Flatten directory structure
2024-11-10 15:42:10 +01:00
Ken Van Hoeylandt
5632d74db6
Added text viewer app (#74) 2024-11-10 15:20:35 +01:00
Ken Van Hoeylandt
18e4383bcf
Added image viewer app (#73) 2024-11-10 12:33:38 +01:00
Ken Van Hoeylandt
369180cb5a
M5Stack sdcard cleanup (#72) 2024-11-07 23:34:45 +01:00
Ken Van Hoeylandt
67b9fc710a
M5stack CoreS3 support (#71) 2024-11-07 23:17:26 +01:00
Ken Van Hoeylandt
68aa34ad14
Use Bundle consistently (#70) 2024-11-04 21:19:24 +01:00
Ken Van Hoeylandt
c11d63ef2d
Introduce touch offset (#69) 2024-11-03 22:51:02 +01:00
Ken Van Hoeylandt
28c456e2d9
Add power enabled check to power API (#68) 2024-11-03 22:30:41 +01:00
Ken Van Hoeylandt
632d7ccccf
Implemented power management (#67)
- Implemented HAL for for power management
- Implemented the Power app (accessible via Settings app)
- Implemented status bar icon for battery status
2024-11-02 23:40:26 +01:00
Ken Van Hoeylandt
6520655795
Revert to ESP-IDF v5.2 (#66) 2024-10-30 22:01:40 +01:00
Ken Van Hoeylandt
5412f929c5
Reintroduce LVGL-related changes (#65) 2024-10-28 23:23:13 +01:00
Ken Van Hoeylandt
62d30e8b7b
Revert to LVGL 9.0.0 (#64)
* Revert "Update ESP LCD Touch dependencies (#63)"

This reverts commit cbd0355cec25e9d0f83f328ac2cae78e0e3b83e3.

* Revert "Updated board configs for LVGL changes (#62)"

This reverts commit 52d769854f6805407f7ee08adaa78b3a406fa13e.

* Revert "Various updates (#60)"

This reverts commit a8a664703b131963222d2035a3a85ecede29e633.
2024-10-28 23:08:24 +01:00
Ken Van Hoeylandt
cbd0355cec
Update ESP LCD Touch dependencies (#63) 2024-10-28 21:53:56 +01:00
Ken Van Hoeylandt
52d769854f
Updated board configs for LVGL changes (#62) 2024-10-28 21:53:40 +01:00
Ken Van Hoeylandt
272082319b
Update M5Stack dependencies to 0.1.17 (#61)
Using develop branch commit for M5Unified due to a required compilation
fix on that branch
2024-10-20 00:16:03 +02:00
Ken Van Hoeylandt
a8a664703b
Various updates (#60)
- update lvgl to v9.2.0
- update esp_lvgl_port to v2.3.3
- various code correctness improvements
2024-10-19 22:52:08 +02:00
Ken Van Hoeylandt
5f8149c198
Update ESP-IDF to v5.3.1 (#59) 2024-09-23 22:32:41 +02:00
Ken Van Hoeylandt
a67ae35aae
Headless improvements (#58)
- Refactored headless init
- Cleanup of statusbar updater
2024-09-23 21:46:29 +02:00
Ken Van Hoeylandt
fd27799826
Fix screenshot app (#57)
Make it part of the correct platform build
2024-08-31 18:10:52 +02:00
Ken Van Hoeylandt
660833f2ec
Updated docs (#56) 2024-08-31 18:05:30 +02:00
Ken Van Hoeylandt
27730260e0
Project restructuring: add tactility-headless (#55)
- Created `tactility-headless` to support ESP32 firmwares that don't require graphics
- `tactility` subproject now contains both PC and ESP32 code (to avoid having to split up `tactility` and `tactility-headless` into separate projects, which would result in a very complex dependency tree)
- `tactility` subproject is now defined as component for ESP32 and as regular module for PC
- Improvements for dispatcher
- Added `project-structure.puml` to docs
- `Gui` service now depends on `Loader` service instead of the reverse
- Added `statusbar_updater` service for updating Wi-Fi and SD card icons
2024-08-31 17:56:28 +02:00
Ken Van Hoeylandt
b659d5b940
Added Dispatcher and fix sim (#54)
- Add dispatcher mechanism (a queue for function calls) and tests
- Added tests for MessageQueue
- Fix FreeRTOS config for simulator
- Explicit dependencies for touch-related libs, because minor version changes caused broken builds on CI.
2024-08-24 19:21:22 +02:00
Ken Van Hoeylandt
69a0c01686
Gitmodule branch removals (#53)
- Specify commits for git submodules, not branches
- Use official M5GFX git repository
2024-02-28 08:13:19 +01:00
Ken Van Hoeylandt
c3d2083399
LVGL 9 as submodule (#52) 2024-02-28 07:59:30 +01:00
Ken Van Hoeylandt
a2e2c0ad67
Mbedtls as submodule (#51) 2024-02-28 07:19:29 +01:00
Ken Van Hoeylandt
b22ce5210a
Freertos kernel submodule fix (#50) 2024-02-28 06:46:49 +01:00
Ken Van Hoeylandt
dc0c8915b0
ESP-IDF 5.2 (#49)
- Updated IDF from 5.1.2 to 5.2
- Updated FreeRTOS from 10.4.6 to 10.5.1
- Updated M5GFX with bugfix for IDF 5.2
- FreeRTOS-Kernel is now a submodule
2024-02-27 08:15:58 +01:00
Ken Van Hoeylandt
d58f131033
M5Stack Core2 support (#48) 2024-02-22 18:26:11 +01:00
Ken Van Hoeylandt
473fb673bd
Update to LVGL 9.0.0 (#47)
- Updated LVGL from 8.3 to 9.0 (removed example/docs/demo folders)
- Updated esp_lvgl_port  to current status of the `lvgl9` branch on `esp-bsp`: https://github.com/espressif/esp-bsp/tree/lvgl9
- Updated all boards and drivers
- Removed `libs/lv_drivers` subproject as SDL is now supported by LVGL directly (although keyboard input seems broken)
- Updated `libs/lv_screenshot`
- Fixed the way `tt_statusbar` widget works due to behaviour change in LVGL
- Updated other lvgl code
2024-02-18 17:40:02 +01:00
Ken Van Hoeylandt
5fef25fb13
Various improvements (#46)
- Specify IDF SDK version in a safer way
- Fix for crash when polling SD card presence (Need to implement a universal locking mechanism later on)
- Updated `ideas.md`
- SD card task prio set to low
2024-02-17 17:41:56 +01:00
Ken Van Hoeylandt
de34cbfd7a
Added GPIO app (#45)
- Implemented GPIO app
- LVGL now allocates freely (as opposed to using a fixed-size buffer): when it goes OOM, it just deletes image cache and starts behaving erratically.
2024-02-13 22:40:17 +01:00
Ken Van Hoeylandt
bec24614d3
Cleanup (#44)
* remove incorrect usages of TT_UNUSED
* updated readme
2024-02-12 22:01:46 +01:00
Ken Van Hoeylandt
159118f19a
Cleanup (#43)
- Updated README.md, screenshot layout
- Cleanup of incorrect `TT_UNUSED` usage
2024-02-11 22:53:59 +01:00
Ken Van Hoeylandt
3250943345
Screenshot app & service (#42)
- Added screenshot app & service (PC-only for now)
- Updated docs with screenshots and new device photo
- Add fake statusbar icons for PC/sim build
- added `lv_screenshot` library based on `lv_100ask_screenshot` from https://github.com/100askTeam/lv_lib_100ask
- T-Deck WiFi is now allocated into SPI RAM
- Created `tt_service_find()` to find services by their id
2024-02-11 22:40:53 +01:00
Ken Van Hoeylandt
0bdc4bd32f
Fix for crash when no SPI memory available (#41) 2024-02-11 18:15:10 +01:00
Ken Van Hoeylandt
e0db8767c7
Align code style (#40)
- Mutex -> Mutex*
- Cleanup enum names
- Other small changes
2024-02-11 00:58:43 +01:00
Ken Van Hoeylandt
9327d61427
Improved System Info app (#39) 2024-02-10 23:51:03 +01:00
Ken Van Hoeylandt
6dc8b897d6
Display orientation setting (#38)
- Implemented display orientation in Display app
- Increased LVGL task stack for T-Deck
2024-02-10 22:51:59 +01:00
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