Skip to main content

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):

KeyFunction
BLE1BLE5Switch to BLE channel 1–5
PAIREnter pairing mode
CLRClear pairing records
RSTReset the module
TOGToggle between USB and wireless
BTCombo entry for Bluetooth operations (some models)
USBSwitch to USB mode

Pairing

  1. Press PAIR to enter pairing mode.
  2. Search and connect to the device name on the host.
  3. 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