AVR Legacy BLE Firmware
This page covers the common operations and limits of ATmega32U4 keyboards paired with nRF51822 wireless modules running legacy Adafruit Bluefruit LE firmware (referred to below as "legacy BLE firmware"). It applies to the legacy BLE firmware backend of G60, Kamilia, Command65, Manta 40s (Hotswap/Solderable/Ortho), and Skog Reboot.
:::info Third-party names
Adafruit and Bluefruit are used here only to identify legacy third-party firmware, compatible protocols, and companion tools accurately. These keyboards and nRF51822 wireless modules are not original Adafruit products. This project is not affiliated with, authorized, sponsored, or endorsed by Adafruit Industries. Bluefruit is a trademark of Adafruit Industries.
:::
How it works
- The AVR (ATmega32U4) handles matrix scanning and keyboard state.
- The nRF51822 module handles BLE transport; the AVR drives it over UART with AT text commands.
- The module runs a legacy Adafruit Bluefruit LE application with S110 SoftDevice 8.0.0.
Wireless function keys
The legacy BLE firmware backend provides these function keys (exact placement is on the model page):
| Key | Function |
|---|---|
BLE1 – BLE5 | Switch to BLE channel 1–5 |
PAIR | Enter pairing mode |
CLR | Clear pairing records |
RST | Reset the module |
TOG | Toggle between USB and wireless |
BT | Combo entry for Bluetooth operations (some models) |
USB | Switch to USB mode |
Pairing
- Press
PAIRto enter pairing mode. - Search and connect to the device name on the host.
- Once paired, the host is remembered; disconnect before switching channels.
Pairing state lives in the module. CLR clears existing pairing records, after
which you must pair again.
Limits and notes
- The legacy BLE firmware uses the Bluefruit AT text protocol; very fast continuous typing may drop UART characters. Prefer wired mode for heavy high-speed input.
- Each key must send both a press and a release HID report, otherwise the host may see a stuck key.
- The legacy BLE firmware does not support the DuoChord binary protocol or five-slot management; the two firmwares are not interchangeable.
- Migrating from legacy BLE firmware to DuoChord requires a fixed sequence, see
Legacy BLE firmware → DuoChord first migration.
Troubleshooting
- Cannot connect: see
Troubleshooting / Wireless. - Stuck keys: verify the matrix in wired mode first, then check the wireless link.
- Flashing failures: see
Firmware Downloads & Flashing.