T-Watch S3 Custom Software Platform — Bachelor's Thesis Project
A comprehensive custom firmware platform for the LILYGO T-Watch S3, developed as a university thesis and continued as a personal project — featuring graphics, audio, IR, WiFi, web configuration portal, sleep management, and JSON-based persistent storage.
Overview
This project implements a full software platform for the LILYGO T-Watch S3, originally developed as a Bachelor's thesis at VŠB — Technical University of Ostrava, now maintained as an ongoing personal project. It goes significantly beyond single-feature demos, providing a modular firmware architecture with separate modules for every major hardware subsystem.
Module Architecture
The firmware is organized into discrete C++ modules:
Graphics.cpp— LVGL-based display renderingAudio.cpp— Sound playback and audio outputIR.cpp— Infrared transmitter/receiver supportWiFi.cpp— WiFi connectivity managementWebsite.cpp— Embedded web server with configuration portal (index.html,wifi.html)Power.cpp— Battery monitoring and power managementSleep.cpp— Sleep modes and wake-up handlingStorage.cpp/JsonStorage.cpp— Persistent settings stored as JSONEventHandlers.cpp— Unified event routing between modulesLV_Helper.cpp— LVGL integration helpersInitWatch.cpp— Hardware initialization sequence
Technical Details
Built with PlatformIO and the Arduino framework. The data/ directory contains SPIFFS assets for the web configuration interface. The modular design makes it easy to add new apps or features without touching the core system. Actively developed beyond the original thesis scope.






