Skip to content
Get started

BK72xx Bluetooth Low Energy

The bk72xx_ble component enables the Bluetooth Low Energy controller of the BLE-5.x LibreTiny Beken chips (beken-72xx family) — the platform analog of ESP32 BLE. It owns the BLE stack bring-up and the controller’s BLE address; higher-level consumers (such as the BK72xx BLE tracker) build on it and load it automatically.

Supported chips. Support is gated on the BLE 5.x SDK itself, not on a fixed chip list: BK7231N and BK7238 (e.g. the CB2S, CB3S, CBU and T34 modules) are selectable today; BK7236, BK7252N and BK7253 are covered automatically once LibreTiny exposes them. BK7231T, BK7251 and BK7271 (BLE 4.2) and BK7231Q (no BLE) are not supported — building for one fails with a clear error.

# Example configuration entry
bk72xx_ble:
enable_on_boot: false
  • enable_on_boot (Optional, boolean): Bring the BLE stack up during boot. Defaults to false: on the single-core BK72xx, stack init during boot competes with the WiFi connection handshake, so consumers enable the stack lazily on first use instead.
  • id (Optional, ID): Manually specify the ID used to reference this component.

NOTE

BLE adapter address. On BK7231N the BLE MAC is the controller’s own address; on the other BLE-5.x chips (whose BLE stack does not expose one) it is derived as WiFi MAC + 1 (only the last byte incremented, OUI unchanged) — the standard factory pairing.

NOTE

The component automatically builds against beken-bdk 3.0.78; no manual platformio_options are needed. The bundled 3.0.33 has an older BLE header/library layout and can crash the device at boot when BLE is compiled in.

NOTE

WiFi power save. While bk72xx_ble is configured, wifi: power_save_mode is kept at none: any other value is reported at validation and not applied. With the BLE controller running, the MCU sleep that the Beken SDK arms together with WiFi power save never wakes up once the station is stopped, and the device stays halted until a power cycle. The override is removed once LibreTiny ships the SDK-side fix.