Safety / do-not-touch¶
Brick risks, the DFU sequence to avoid, and the single-opener rule.
Never send 0xB0–0xB7
0xB0–0xB7 are bootloader / firmware-upgrade (DFU) commands. Do not experiment with them —
risk of bricking or wiping firmware. Stick to 0x40/0x41/0x42.
⚠️ Rules¶
- Never reflash carelessly. The ripple lighting firmware is the whole reason for the VIA-only
and HID-script approach. Custom-QMK bins in
firmware/replace it, so treat every flash as deliberate (see Custom QMK). - Only one opener of the
0xFF60interface at a time: close the browser tab (and VIA) before running scripts.
❌ The exact DFU sequence to avoid¶
Decoded from source. This is what a firmware update does, so never send it manually:
0xB1 toBootLoader
→ poll 0xB2 getBootLoaderStatus (every 200 ms, ≤20 tries)
→ 0xB3 confirmFirmwareInfo (56-byte header: bytes[6..9]=file size LE, bytes[10..13]=CRC32 LE)
→ 0xB4 startUpgrade
→ 0xB5 transferUpgradeData (chunked)
→ 0xB6 upgradeComplete
→ 0xB7 endUpgrade
A second, colliding mechanicalKeyboard* DFU set (opcodes 0x00–0x04/0x10/0x20/0x55) exists
for a different device family, irrelevant to the AL80, just don't confuse the two.