The project involves creating a fully functional graphical interface for a device based on ESP32 (Arduino), which controls an interactive 3D model with LED backlighting (WS2812B) and a touch TFT display (SPI Module ILI9341)
The goal of the firmware is to provide a user-friendly experience through the touch screen and visualize various modes of the LED strip using unique LED effects.
The firmware must implement the following tasks:
Loading splash screen
Display an image/logo.
Below the image - a status bar "BAR" with pseudo-progress for about 1 minute.
Simultaneously, three separate LED strips perform a continuous "wave" effect.
Main control screen
The screen consists of 8 buttons:
6 mode buttons (graphic images + text below them)
Information - transition to the project information screen.
Demo mode - launch demonstration animations across various ranges of LEDs.
Mode screens
Each mode must have:
large icon (graphic)
title and brief description,
LED effect (certain LEDs of the addressable strip are activated),
exit button "Back" in the form of an icon.
Information screen
Must include:
brief text description,
return button.
Demo mode
LED animations
Non-blocking (millis(), no delay()).
Unique algorithms for each mode.
The main screen has a soft background animation (e.g., "breathing").
Project architecture
Separate modules for display, touchscreen, LEDs, states, configurations.
Easy configuration of parameters: number of LEDs, pins, texts, images.
All graphics and text are already prepared.