! Important ! Disclaimer

Firmware update tutorial

NEVER UNPLUG THE CONTROLLER OR CLOSE THE PROGRAMMER UNTIL YOU ARE POSITIVE THE UPDATE PROCESS IS DONE. The process is fully finished when the web-based programmer says “Done!” and the controller has automatically rebooted, it should then react to presses on the switches.

UPDATES ARE AT YOUR OWN RISK, BRICKED CONTROLLERS CAN BE SENT BACK FOR REPAIR AT SHARED COSTS. That being said this is the process I am using to program the controller during development (using command line instructions) and it’s running perfectly, just don’t break the process when it’s busy and you will be fine

What you will need:

Firmware updates available:

  1. Download the latest firmware file from the left column section
  2. Unplug the controller, press down SHIFT + SAVE + LOAD, then plug it in and release the buttons 2 seconds later.
  3. MAKE SURE YOUR CONTROLLER IS WELL PLUGGED IN AND CANNOT DISCONNECT DURING UPDATE. Don’t use a bad/unreliable cable or USB port.
  4. For Mac OS, skip to step 8, for Windows, If this is the first time you are updating, download the latest Zadig version: https://zadig.akeo.ie/
  5. In Zadig, in the options menu, choose “List All Devices”

Screenshot 2025-11-25 at 17.52.37.png

  1. In the dropdown menu, choose “STM32 bootloader”. DO NOT select another device.

Screenshot 2025-11-25 at 17.52.17.png

  1. Click on the “Install Driver” button

Screenshot 2025-11-25 at 17.56.00.png

  1. After installing drivers, both driver fields should match

Screenshot 2025-11-25 at 17.56.37.png

  1. Navigate with a recent version of Google Chrome to: https://devanlai.github.io/webdfu/dfu-util
  2. Click the “Connect” button

Screenshot 2025-11-25 at 18.00.59.png

  1. Select “STM32 BOOTLOADER” in the list and click “Connect”

Screenshot 2025-11-25 at 18.01.04.png

  1. Select the first bullet in the list wi the mention “Internal flash”

Screenshot 2025-11-25 at 18.02.31.png

  1. Press the “Choose file” button to browse to firmware .bin file and press “Download”

Screenshot 2025-11-25 at 18.03.20.png

  1. The firmware update process will start and it will go through 2 steps: Erasing DFU device memory and Copying data from browser to DFU device
  2. When the update is done, it will display “Wrote xxx bytes, Manifesting new firmware, Done!”

Screenshot 2025-11-25 at 18.03.38.png

  1. The LEDs will flash and the controller will reboot