BLE in Wearables: Fitness Trackers, Watches, and Hearables
Optimizing BLE for power-constrained wearable devices
BLE in Wearables: Fitness Trackers, Watches, and Hearables
Wearables represent the largest single market for Bluetooth Low Energy by unit volume — over 400 million BLE-enabled wearables shipped in 2024. This guide covers sensor data streaming architectures, companion app design patterns, and the LC3 codec and Auracast." data-category="LE Audio">LE Audio subsystem that replaced Classic Bluetooth in modern hearables.
Sensor Data Streaming Architecture
A fitness tracker typically aggregates data from 3–6 sensors and streams aggregated metrics to a companion app:
Accelerometer (100 Hz) ──┐
Gyroscope (50 Hz) ├──► DSP/MCU ──► BLE [GATT](/glossary/gatt/) ──► Phone
PPG (25–100 Hz) │ (feature (HRS, custom
Skin temperature (1 Hz) │ extraction) services)
SpO2 (periodic) ┘
Barometer (1 Hz)
Raw sensor data is almost never transmitted over BLE — the bandwidth and power cost is prohibitive. The SoC runs on-device algorithms (step detection, HRV calculation, sleep staging) and transmits 10–50 byte feature vectors at 1–5 Hz instead of raw 100 Hz samples.
| Metric | Raw data rate | After on-device processing | BLE transmission rate |
|---|---|---|---|
| Heart rate | 100 Hz PPG (3 bytes) | 1 value/s | 1/s (4 bytes) |
| Steps | 100 Hz accel (6 bytes) | Cumulative count | 1/min (4 bytes) |
| Activity | 50 Hz accel+gyro (12 bytes) | Activity class | 1/s (1 byte) |
| GPS (phone offload) | N/A on tracker | N/A | — |
GATT Profile Design for Wearables
Wearables use a mix of standard and proprietary GATT services:
| Service | ATT">UUID | Standard? | Notes |
|---|---|---|---|
| Heart Rate (HRS) | 0x180D | Yes | BT SIG; use for HR-only |
| Battery Service (BAS) | 0x180F | Yes | Required for iOS battery widget |
| Device Information (DIS) | 0x180A | Yes | FW version, serial number |
| Fitness Machine (FTMS) | 0x1826 | Yes | Treadmill, bike, rower |
| Custom metrics | 128-bit UUID | No | SpO2, HRV, stress, skin temp |
Use the UUID Generator to mint 128-bit UUIDs for proprietary services. Always register a DIS service — iOS and Android display the firmware revision string in the device settings.
Connection Interval Tuning
Slave latency lets the peripheral skip N consecutive connection events when idle, drastically reducing average current:
# Example: Heart rate monitor in continuous mode
connection_interval = 100 ms # Base interval
slave_latency = 9 # Skip 9 events when no new data
effective_interval = 1000 ms # 100 ms × (1 + 9)
# vs continuous 100 ms polling: ~10× power reduction
Apple requires connection interval ≥ 15 ms and slave latency ≤ 4 for iOS BLE accessories. Android imposes no fixed constraint but recommends 50–100 ms for interactive use.
LE Audio for Hearables
Bluetooth 5.2 introduced LE Audio with the Low Complexity Communication Codec (LC3), replacing SBC in Classic A2DP. LE Audio runs over Isochronous Channels (CIS for connected, BIS for broadcast).
| Feature | Classic A2DP | LE Audio (LC3) |
|---|---|---|
| Codec | SBC (mandatory) | LC3 (mandatory) |
| Bitrate (equivalent quality) | 328 kbps (SBC) | 96 kbps (LC3) |
| Latency (gaming mode) | 150–220 ms | 20–40 ms |
| Multicast (Auracast) | No | Yes |
| Hearing aid standard | ASHA (proprietary) | LE Audio HAP |
| Simultaneous L+R with sync | AC (unreliable) | CIS with sync guarantee |
LC3 at 32 kbps matches SBC at 192 kbps perceptually — this headroom enables mono earbuds to run at 32 kbps, extending playtime by 40%. The nRF5340 and Qualcomm QCC5181 both support LE Audio in production silicon.
Power Architecture for Wearables
Wearable SoC power domains must be carefully partitioned:
Always-on domain (VDDIO ~1.8V):
RTC, step counter, gesture detect, wake interrupt
Target: 1–5 µA continuous
Active domain (VDDCORE ~1.2V, switched):
MCU core, flash, SRAM, display driver
Active: 2–10 mA; sleep: 0.5–2 µA
Radio domain (VDDRF):
BLE transceiver
TX: 5–15 mA; RX: 4–8 mA; idle: < 0.1 µA
The DC-DC converter efficiency is critical — a linear regulator at 50% efficiency doubles battery drain vs a 90%-efficient buck converter. Most wearable designs use the SoC's integrated DCDC (nRF52840, nRF5340) for the radio domain and an external nano-power DCDC (TPS62840) for the application domain.
For companion app development on iOS, the CoreBluetooth framework and the GATT Browser are essential debugging tools. See BLE iOS and Android Development for platform-specific pairing and background mode guidance.
Frequently Asked Questions
Yes, our guides range from beginner introductions to advanced topics. Each guide indicates its difficulty level and prerequisites so you can find the right starting point.