Devicetree updates (#481)

* **New Features**
  * Added I2S audio support (i2s0) for LilyGO TLora Pager, M5Stack Cardputer (standard & Adv), M5Stack Core2, M5Stack CoreS3, and Guition JC1060P; moved i2s0 entry in LilyGO TDeck.

* **Chores**
  * Device-tree grammar now separately recognizes and ignores line (//) and block (/* */) comments.
  * Added reference docs to severa DTS files

* **Documentation**
  * Reworked ideas/roadmap
This commit is contained in:
Ken Van Hoeylandt
2026-02-05 19:31:47 +01:00
committed by GitHub
parent a1c835e073
commit 4fe4faf422
10 changed files with 124 additions and 37 deletions
+19 -25
View File
@@ -3,18 +3,29 @@
## Before release
- Add `// SPDX-License-Identifier: GPL-3.0-only` and `// SPDX-License-Identifier: Apache-2.0` to individual files in the project
- Change ButtonControl to work with interrupts and xQueue
- TCA9534 keyboards should use interrupts
- GT911 drivers should use interrupts if it's stable
- Elecrow Basic & Advance 3.5" memory issue: not enough memory for App Hub
- App Hub crashes if you close it while an app is being installed
- Fix glitches when installing app via App Hub with 4.3" Waveshare
- Calculator bugs (see GitHub issue)
- Try out speed optimizations: https://docs.espressif.com/projects/esp-faq/en/latest/software-framework/peripherals/lcd.html
(relates to CONFIG_ESP32S3_DATA_CACHE_LINE_64B that is in use for RGB displays via the `device.properties` fix/workaround)
## Higher Priority
- Add kernel listening mechanism so that the root device init can be notified when a device becomes available:
Callback for device/start stop with filtering on device type:
- on_before_start: e.g. to do the CS pin hack for SD card on a shared bus
- on_after_start: e.g. to initialize an I2S device via its I2C connection, once I2C becomes available
- on_before_stop: e.g. to stop using a device that was started before
- on_after_stop: ?
- DTS: support for #defines
- DTS: support for aliases
- SPI kernel driver
- iomux kernel driver
- Kernel concepts for ELF loading (generic approach for GUI apps, console apps, libraries).
- Fix glitches when installing app via App Hub with 4.3" Waveshare
- TCA9534 keyboards should use interrupts
- GT911 drivers should use interrupts if it's stable
- Change ButtonControl to work with interrupts and xQueue
- Fix Cardputer (original): use LV_KEY_NEXT and _PREV in keyboard mapping instead of encoder driver hack (and check GPIO app if it then hangs too)
- Logging with a function that uses std::format
- Expose http::download() and main dispatcher to TactiltyC.
@@ -35,6 +46,8 @@
## Medium Priority
- Filtering for apps in App Hub:
- apps that only work on a specific device
- Diceware app has large "+" and "-' buttons on Cardputer. It should be smaller.
- Create PwmRgbLedDevice class and implement it for all CYD devices
- TactilityTool: Make API compatibility table (and check for compatibility in the tool itself)
@@ -77,6 +90,8 @@
- `UiScale` implementation for devices like the CYD 2432S032C
- Bug: CYD 2432S032C screen rotation fails due to touch driver issue
- Calculator app should show regular text input field on non-touch devices that have a keyboard (Cardputer, T-Lora Pager)
- Allow for WSAD keys to navigate LVGL (this is extra nice for cardputer, but just handy in general)
- Create a "How to" app for a device. It could explain things like keyboard navigation on first start.
# Nice-to-haves
@@ -115,29 +130,8 @@
- Display touch calibration
- RSS reader
- Static file web server (with option to specify path and port)
- Diceware
- Port TamaFi https://github.com/cifertech/TamaFi
# App Store
- Register user
- Name
- Company
- Email
- Password
- Create/destroy session
- List apps
- Install app
- App ID
- App version
- Add/remove API key
- Upload app
- Category
- File
- Name
- Description
- List apps
# Notes on firmware size
- adding esp_http_client (with esp_event) added about 100kB