Web Flasher
Flash firmware directly in your browser — no PlatformIO or cable hassle required.
How It Works
- Connect the board via USB. Plug the ESP32 (Coordinator or Puck) into your computer using a USB cable.
- Use Chrome or Edge. The Web Flasher uses the Web Serial API — this only works in Chromium-based browsers (Chrome, Edge, Opera).
- Click the "Flash Firmware" button below. Select the correct COM port for your ESP32 in the dialog.
- Wait until the flash process is complete. The board will restart automatically. Do not disconnect the USB cable during flashing!
No Chrome/Edge? — Flash firmware manually with esptool
If your browser does not support Web Serial (e.g. Safari, Firefox), you can flash the .bin file manually using the official esptool by Espressif. This works on all operating systems.
Prerequisites
Python 3 must be installed. Then install esptool:
pip install esptool
Flash Coordinator (ESP32-S3)
esptool.py --chip esp32s3 --port PORT --baud 921600 write_flash 0x0 coordinator.bin
Flash Puck (ESP32-C3)
esptool.py --chip esp32c3 --port PORT --baud 921600 write_flash 0x0 puck.bin
Replace PORT
- Windows:
COM3,COM4, ... — check Device Manager under "Ports (COM & LPT)" - macOS:
/dev/cu.usbserial-*or/dev/cu.usbmodem*— list withls /dev/cu.*in Terminal - Linux:
/dev/ttyUSB0or/dev/ttyACM0— list withls /dev/tty*. If permission denied:sudo usermod -aG dialout $USERand log out/in again
Tip: If the ESP32 is not recognized, hold the BOOT button on the board while plugging in the USB cable — this forces download mode.
Need more help? Click here and ChatGPT will guide you step by step.
Coordinator (ESP32-S3)
Coordinator Firmware
Board: ESP32-S3-DevKitC-1-N16R8 · 16 MB FlashThe Coordinator firmware controls the entire PUCK RACER system: game management, WebUI, ESP-NOW network and OTA updates for the Pucks. The merged image contains bootloader, partition table, firmware and the LittleFS file system with the WebUI.
PuckRacer Release Candidate 1 — V2.99.9
Puck (ESP32-C3)
Puck Firmware
Board: ESP32-C3-DevKitM-1 · RISC-V Single Core · 4 MB FlashThe Puck firmware controls LEDs (WS2812B), buttons, buzzer, battery and temperature protection. Communication with the Coordinator via ESP-NOW. The merged image contains bootloader, partition table and firmware.
PuckRacer Release Candidate 1 — FW 89
Already flashed once? — OTA Update
If your puck has already been flashed via USB, you can install future firmware updates wirelessly via OTA through the coordinator's web interface. No USB cable needed.
Important: For OTA, do not use the puck.bin above. Use the dedicated OTA file puck_OTA_FW89.bin instead. It contains only the firmware part (no bootloader) and is built specifically for the OTA path.
PuckRacer Release Candidate 1 — FW 89