The dedicated firmware for the LucydDeck project. This project is built specifically for the Waveshare ESP32-S3-Touch-LCD-4.3 development board.
Important
Work in Progress: This project is currently in early development and is intended as a hobby project. Features and APIs may change.
This firmware is built using PlatformIO. Ensure you have the PlatformIO CLI installed or use the VS Code Extension.
Clone the repository to your local machine:
git clone https://github.com/lucyd-dev/LucydDeck-firmware.git
cd LucydDeck-firmwareConnect your ESP32-S3 via the USB-Enhanced-SERIAL (CH343) port.
To identify which COM port your device is connected to, run:
pio device listNote
PlatformIO usually auto-detects the port, so specifying it is optional to upload or monitor.
You can build for either the debug or release environment.
Build only:
pio run -e <debug or release>Build and Upload:
# Auto-detect port
pio run -e <debug or release> -t upload
# Specify port manually (replace COMX with your port, e.g., COM3 or /dev/ttyUSB0)
pio run -e <debug or release> -t upload --upload-port <COMX>To view serial output for debugging:
# Build, Upload, and Monitor
pio run -e <debug or release> -t monitor
# Monitor only
pio device monitor --port <COMX>This project relies on the following key libraries to interface with the Waveshare hardware:
- ESP32_Display_Panel – Display driver implementation
- ESP32_IO_Expander – IO expansion handling
- LVGL – Light and Versatile Graphics Library
- ArduinoJson – JSON serialization/deserialization
- CRC32 – Cyclic Redundancy Check
If you find this project interesting or useful, contributions are highly welcome! Please feel free to leave a star ⭐ on the repo or submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE.md file for details.
Made with 💜 by Lucyd since 2026
