Tactility “operating system” for the ESP32 microcontroller family supports built-in and external applications

Tactility is an operating system that runs on the ESP32 microcontroller series. Created by Dutch software developer, Ken Van Hoeylandt (also known as ByteWelder), Tactility is a project one year in the making inspired by the Flipper Zero and its application platform.

Tactility devices with logo

The ESP32 operating system can run built-in apps and helper services from flash storage as well as external applications from an SD card. It leverages the Espressif ELF(Executable and Linkable Format) loader to load ELF files from external storage to the executable memory area.

Tactility is built to run on any ESP32-based device with a touchscreen since drivers (display, touch, and SD card) can be implemented for any hardware. ESP32-S3 devices are “the best option” due to their performance and larger memory. The LILYGO T-Deck series is highly recommended for its onboard keyboard and sizable display. Preset configurations are available for the LILYGO T-Deck Plus, LILYGO T-Deck, M5Stack Core2, and M5Stack CoreS3.

Tactility graphical user interface

The operating system uses an LVGL-based graphic user interface and the entire platform runs on FreeRTOS. Bytewelder says that Tactility can be rightly called an operating system rather than an application platform since it has a launcher, supports internal and external apps, has an official SDK, and runs on a real-time operating system.

Tactility is an open-source project and is currently in its pre-release stage, with an official release still in the works. Firmware and SDK builds are available on GitHub, but they are only accessible for a few days or weeks after their creation.

Other real-time operating systems like Zephyr, B3OS, and Nuttx are supported by ESP32 SoCs. A headless version of the Tactility operating system is available for devices that come without a display. A QR code appears when Tactility crashes and when scanned, it opens a website that displays the crash information. There is also a PC simulator for ESP32 hardware designed to simplify and speed up software development. More information about the operating system is on the project’s website.

Via Reddit

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

Radxa Orion O6 Armv9 mini-ITX motherboard

3 Replies to “Tactility “operating system” for the ESP32 microcontroller family supports built-in and external applications”

  1. There was already a boot loader for the Odroid-GO which would list applications available on the SD card and let you boot the one you want. It was nice, but it was slow because what it really did was to locally flash the selected application and reboot to it. But it was already a giant step forward compared to previous approaches. Here it indeed seems different (and much better) by directly executing one application from another one, just like we’re doing on a classical operating system. It can allow to make them much more modular.

    I’ve done something a bit similar on my ESP8266-equipped alarm clock in Lua with NodeMCU, because there are a few menus to configure it but there isn’t enough RAM, so it load one (compiled) small Lua program, and frees it when it quits, to load another one. It looks more like series of execve(), and I perfectly see how having something like this can make it much easier to develop applications.

    1. Yeah but this “OS” is not really what’s doing the work here – espressif’s ELF loader does that. This is just a fancy launcher.

Leave a Reply

Your email address will not be published. Required fields are marked *

Boardcon EM3562 Rockchip RK3562 SBC with 8 analog camera inputs
Boardcon EM3562 Rockchip RK3562 SBC with 8 analog camera inputs