EspBle

General-purpose Bluetooth Low Energy library for ESP32 Arduino.

Author
TANAKA Masayuki
Website
https://github.com/tanakamasayuki/EspBle
Category
Communication
License
MIT
Library Type
Contributed
Architectures
esp32

EspBle talks to the NimBLE host bundled with Arduino-ESP32 directly, without the bundled BLE wrapper classes. It provides central and peripheral roles with multiple simultaneous connections, generic GATT client and server operations addressable by UUID or attribute handle, pairing and bonding, standard GATT services, and composable profiles: HID device and host (keyboard, mouse, consumer and system control, gamepad, vendor and fully custom reports) plus BLE MIDI device and host. On the original ESP32, whose prebuilt libraries are built with Bluedroid, EspBle bundles its own NimBLE host; that chip has a BLE 4.2 controller, so some features are unavailable and behaviour may differ slightly. That chip also gets Bluetooth Classic, through a separately built, namespaced Bluedroid host: SPP as a byte stream or an Arduino Stream, HID device and host with the same API as the BLE side, A2DP and AVRCP, and HFP client and audio gateway, all carrying already-encoded audio payloads. Which Classic features are hardware-verified, unverified or unimplemented is documented in the repository.

Downloads

Filename Release Date File Size
EspBle-1.3.0.zip 2026-08-17 3.15 MiB
EspBle-1.2.0.zip 2026-08-06 1.44 MiB
EspBle-1.1.0.zip 2026-08-01 729.39 KiB
EspBle-1.0.0.zip 2026-07-31 696.56 KiB