Tutorial
Flash or recover over WebUSB
Firmware updates go through the STM32 ROM DFU bootloader, driven from the web flasher in the browser. Nothing is installed — the page talks to the board over WebUSB and pushes the image from there.
What you need
- A Chromium-based browser (Chrome or Edge) — WebUSB is not in Safari or Firefox. That means a desktop, or an Android phone. iOS cannot flash.
- The board, and a way to plug it into that machine.
- A
.binbuilt fromstm/emwaver-firmware.
Steps
- Put the board in DFU mode. In the app, open the terminal on the Home screen and run
dfu. The board re-enumerates as an STM32 device in bootloader mode. - Open the flasher in a Chromium browser and click Connect. Pick the STM32 BOOTLOADER device from the browser prompt.
- Choose the firmware file. It is read in your browser and written straight to the board — it is never uploaded anywhere.
- Flash and wait. The image is written to
0x08000000and verified. Keep it connected until it finishes. - Let it restart. The board reboots into the new firmware and the app picks it up again on the Home screen.
Notes
- Updates are destructive. There is no room on a 32 KB part for a bootloader of our own, so the ROM bootloader is the only path — an interrupted flash means flashing again, not a rollback.
- There is no over-the-air update and nothing to provision. The board has no Wi-Fi.
Next, try Capture & replay a 433 MHz signal.
