Mplatform

deki-tactility-integration

Runs a Deki game as an app inside Tactility, the operating system for ESP32 boards, instead of as firmware that owns the whole device.

status
experimental
depends on
deki-input, Tactility SDK 0.8

Tactility is an operating system for ESP32 boards. It loads apps at runtime, so a game built with this package installs onto a device that is already running Tactility, over Wi-Fi, from an SD card or through its App Hub, and opens from the home screen like any other app. Nothing is reflashed, and the device keeps everything else it does.

The package adds two platforms to the editor’s build menu: a Tactility device app, and the Tactility simulator. Pick one, build, and the editor produces the app with its assets inside it.

What it provides

Deki providerBacked by
DisplayTactility’s panel driver, drawn to directly
Inputits touch and keyboard drivers
Filesthe app’s own assets directory, and a folder for its saved data

Two boot components bring them up, TactilityDisplaySetup and TactilityInputSetup, and a game written for any other platform runs unchanged. Physical keyboards, such as the T-Deck’s, arrive as ordinary key presses.

Straight to the panel

Most Tactility apps draw with LVGL. A Deki game already has a finished frame, so this package sets LVGL aside while the game is open and sends the frame to the panel itself, through a small band of internal RAM that also converts the colour format where a panel needs it. Panels that can read the frame straight from PSRAM skip the copy.

Where it runs

ESP32-S3 and ESP32-P4. An app’s code is loaded into RAM when it opens, and only those two chips can run code from PSRAM. That is a limit of the chips, not of Tactility.

Status

Experimental. The simulator build works end to end: the editor builds the app and installs it into a running Tactility simulator on x86-64 Linux, where it appears in the Apps menu. The device build is the next step; it uses the same sources, so what is left is the build itself.

The source and its README are on GitHub, under Apache 2.0. Tactility’s SDK allows apps under any licence.