This project transforms the Waveshare ESP32-S3-Touch-LCD-3.49B into a capable web server with a built-in file management system, controlled via a local network connection.
- Static File Serving: Serves HTML, CSS, JS, and Image files directly from the onboard SD Card.
- Dynamic Routing: Automatic MIME type detection for common web assets.
- Custom Error Pages: Handles 404 Not Found errors gracefully.
- Web-Based Uploads: Upload files to the SD card wirelessly via the
/setuppage. - File Browser: List all files currently stored on the SD card.
- Remote Deletion: Delete files directly through the web interface.
- Authentication: Secured administrative actions (Upload/Delete) with username/password protection.
- Status Display: Real-time feedback on the 3.49" IPS Touch Display.
- WiFi Connection Info: Displays the assigned IP address and connection status.
- Boot Progress: Visual feedback during initialization of hardware (SD Card, Display, WiFi).
- ESP32-S3: Dual-core MCU handling both the WiFi stack and the Display logic.
- SD Card Support: Uses SDMMC/SPI for file storage.
- Touchscreen: Integrated capacitive touch support (ready for future UI expansions).
- Credentials Management: Sensitive WiFi and Web Server passwords are stored in a separate
secrets.hfile (excluded from git). - Basic Auth: Protects administrative routes to prevent unauthorized file modifications.
- Connect: Power on the device. It will connect to the configured WiFi.
- Read IP: Look at the LCD screen to see the device's IP address.
- Access:
- Go to
http://<IP_ADDRESS>/to view the hosted website (index.html). - Go to
http://<IP_ADDRESS>/setupto manage files (requires login).
- Go to