-
Notifications
You must be signed in to change notification settings - Fork 1
HowTo Flash Firmware
miswired edited this page Feb 7, 2026
·
3 revisions
This guide explains how to update Glitchy's firmware and web GUI files.
- Computer with PlatformIO installed (setup guide)
- USB cable (micro-USB)
- SD card reader (for web GUI updates)
Glitchy has two separate components that may need updating:
| Component | Location | Update Method |
|---|---|---|
| Firmware | ESP32-S3 flash | PlatformIO upload |
| Web GUI | SD card | File copy |
Important: Keep both components at matching versions. See Version Compatibility.
Option A: Clone Repository
git clone https://github.com/miswired/glitchy.git
cd glitchy/Code/GlitchyOption B: Download Release
- Go to Releases
- Download source code zip
- Extract to your computer
Option A: VS Code
- Open VS Code
- File → Open Folder
- Select
glitchy/Code/Glitchy/ - Wait for PlatformIO to initialize
Option B: Your Own Editor You can use your own editor, but you will need to build using the command line option.
- Connect Glitchy via USB
- The device should be recognized as a serial port
Using VS Code:
- Click the arrow (→) in PlatformIO toolbar
- Or: Ctrl+Alt+U
Using Command Line:
cd glitchy/Code/Glitchy
pio run --target upload- Open Serial Monitor (115200 baud)
- Press RST button
- Verify startup messages appear (WiFi AP info, SD card detection)
- Connect to WiFi and confirm web interface loads
- Go to Releases
- Download the web GUI release zip
- Extract the files
- Remove SD card from Glitchy
- Insert into computer's card reader
- Backup any existing files you want to keep
- Delete old web GUI files from SD card
- Copy contents of zip to card
- Safely eject SD card
- Insert into Glitchy
- Power on/reset Glitchy
- Clear browser cache and reload interface
- Check version on the About page
"No serial port found"
- Check USB connection
- Install drivers: CP210x (Silicon Labs)
- On Linux, add user to dialout group:
sudo usermod -aG dialout $USER
"Timeout waiting for download"
- Hold BOOT button on ESP32-S3
- Press and release RST button
- Release BOOT button
- Upload within 10 seconds
"Permission denied" Add yourself to the appropriate group, or change device permissions
# Linux/macOS
sudo chmod 666 /dev/ttyUSB0- Verify files copied to SD card root (including
assets/folder) - Check that
index.htmlexists at root level - Try reformatting SD card as FAT32
- Clear browser cache completely
- Update both firmware AND web GUI together
- Download matching versions from the same release
- See compatibility guide
If an update causes problems:
- Checkout previous version from git
- Or download previous release
- Build and upload as normal
- Download previous web GUI version
- Replace files on SD card
After updating, verify:
- Device powers on normally
- WiFi network appears
- Web interface loads
- Version numbers correct