1.2 KiB
1.2 KiB
Refleks Lite Bootloader and DFU Guide
Flash layout
| Region | Start address | Size | USB identity |
|---|---|---|---|
| Bootloader / DFU | 0x08000000 |
24 KB | 1209:E667 |
| App1 / XInput | 0x08006000 |
52 KB | 1209:E668 |
| App2 / DInput | 0x08013000 |
52 KB | 1209:E669 |
For initial programming, flash build/Release/arcadestick_full.hex with an
ST-Link. This file contains the bootloader and both applications.
Boot selection
- Hold
STARTduring reset to keep the device in DFU mode. - When
PA4is LOW, the bootloader starts XInput App1. - When
PA5is LOW, the bootloader starts DInput App2. - If the selection is invalid, or the selected application's vector table is invalid, the bootloader remains in DFU mode.
Updating over USB
The bootloader implements standard USB DFU 1.1. It does not use DfuSe address commands; the alternate interface number selects the destination slot.
# XInput App1
dfu-util -d 1209:e667 -a 0 -D build/Release/arcadestick_xinput.bin
# DInput App2
dfu-util -d 1209:e667 -a 1 -D build/Release/arcadestick.bin
On Windows, the 1209:E667 device must use the WinUSB driver. dfu-util is
not currently installed in this computer's PATH.