Build Guideadvanced

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.

Boards:ESP32-S3
Firmware:ArduinoPlatformIO
Use Cases:WearableDisplay & Dashboard

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 rendering
  • Audio.cpp — Sound playback and audio output
  • IR.cpp — Infrared transmitter/receiver support
  • WiFi.cpp — WiFi connectivity management
  • Website.cpp — Embedded web server with configuration portal (index.html, wifi.html)
  • Power.cpp — Battery monitoring and power management
  • Sleep.cpp — Sleep modes and wake-up handling
  • Storage.cpp / JsonStorage.cpp — Persistent settings stored as JSON
  • EventHandlers.cpp — Unified event routing between modules
  • LV_Helper.cpp — LVGL integration helpers
  • InitWatch.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.

Resources