mirror of
https://github.com/ByteWelder/Tactility.git
synced 2026-02-18 10:53:17 +00:00
* 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
Overview
Tactility is a front-end application platform for ESP32. It is mainly intended for touchscreen devices. It provides an application framework that is based on code from the Flipper Zero project.
Tactility provides:
- A hardware abstraction layer
- UI capabilities (via LVGL)
- An application platform that can run apps and services
Requirements:
- ESP32 (any?)
- esp-idf 5.1.2 or a newer v5.1.x
- a display (connected via SPI or I2C)
Status: Alpha
Technologies
UI is created with lvgl via esp_lvgl_port.
LCD and input drivers are based on esp_lcd and esp_lcd_touch.
Supported Hardware
Devices
Predefined configurations are available for:
- Yellow Board: 2.4" with capacitive touch (2432S024C) (see AliExpress 1, 2)
- LilyGo T-Deck (see lilygo.cc, AliExpress)
- (more will follow)
Other configurations can be supported, but they require you to set up the drivers yourself:
- Display drivers: esp-bsp and Espressif Registry.
- Touch drivers: Espressif Registry.
Guide
Until there is proper documentation, here are some pointers:
- Sample application: bootstrap and app
- Tactility: the main platform with default services and apps
- Furi: the core platform code, based on Flipper Zero firmware
Building Firmware
First we have to select the correct device:
- If you use CLion, close it and delete the
cmake-build-debugfolder. - Run
idf.py fullcleanto remove any cache from previous builds (or deletebuildfolder manually) - Copy the
sdkconfig.board.YOUR_BOARDintosdkconfig. Usesdkconfig.defaultsif you are setting up a custom board.
Now you can run idf.py flash monitor
License
Description
Languages
C++
61.4%
C
31.5%
Python
3.9%
HTML
1.6%
CMake
1.5%
Other
0.1%