16 Commits

Author SHA1 Message Date
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
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
e0db8767c7
Align code style (#40)
- Mutex -> Mutex*
- Cleanup enum names
- Other small changes
2024-02-11 00:58:43 +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
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
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
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
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