Bluetooth Low Energy (BLE) Best Practices Guide
Apr 18, 2025
Overview
We’ve been developing Bluetooth devices for a long time, and BLE products since the specification was released back in 2010. Over the years, we’ve managed to put together a list of items to consider and best practices. These ideas, tips, and tricks are battle-tested and follow years of experience, both good and bad, working with Bluetooth Low Energy.
Use the latest Bluetooth Specification
Using the latest specification gives you the most amount of time for development. For example, Bluetooth 5.2 was adopted in 2020, which means that in 2030 it will be withdrawn. Bluetooth 5.0 was adopted in 2016 and the specification will be withdrawn soon in 2026.
Bluetooth Stacks and SDKs are not all the same
The Bluetooth Specification defines the behavior of the Bluetooth Controller and Host parts. This means there can be large variability in the stacks, affecting features and performance.
Don’t use BLE Connections unnecessarily
Assess whether to allow connections or leverage advertising. Devices that send data out but don’t require data in can benefit from just using advertisements.
Use Dynamic Advertising
Instead of a single advertising interval, it’s beneficial to control the advertising rate based on user interaction with the device.
Design Connection Parameters Carefully
The Bluetooth Specification allows choice in the Connection Parameters. It’s important to manage power consumption, especially for battery-powered devices.
Follow Apple’s Recommendations for Compatibility
Apple publishes the Accessory Design Guidelines that include recommendations relevant for Bluetooth Accessories.
PDU Length is not Guaranteed
Understanding that PDU length negotiation can lead to variability when testing is critical. Ensure your code accounts for this.
Consider Using Limited Advertising
Using Limited advertising can help devices stand out and speed up the initial connection process.
Use Channel Selection Algorithm #2 (CSA#2)
CSA#2 provides better performance in channel selection, especially under interference.
Delay Connection Interval slowing after discovery
Start with quick connection intervals and only slow down after initial tasks are done.
Do you really need that name or serial made public?
Avoid including device names or serial numbers in advertisements to enhance privacy and reduce power consumption.
Understand MAC Address
Bluetooth devices use Public and Random MAC addresses. Be mindful of how MAC addresses are assigned and changed.
BLE Privacy is harder than you think
Implement holistic LE Privacy measures to prevent device tracking, ensuring sensitive information isn’t leaked in advertisements.
Guard against attackers and errant connections
Implement a mechanism to disconnect unauthorized devices to avoid Denial of Service attacks.
Bluetooth Doesn’t Authenticate
For exclusive app/device connectivity, you need to implement authentication and encryption.
2Mbps PHY shortens range
Using higher modulation rates requires good signal-to-noise ratios, impacting range and power.
Be careful of peak currents
A BLE SoC can draw significant current during active CPU or radio use. Monitor peak currents to avoid issues with battery-operated devices.
Validate your Bluetooth RF Design
Proper RF and antenna design validation is essential. Relying solely on simulations can lead to performance issues.
You can almost never have too much FLASH or RAM
Incorporating more FLASH or RAM can support additional features, including Over the Air updates.
Careful with TX Output Power
Regulatory compliance can be challenging with output power above +10dBm. Design your RF circuit to efficiently manage output.
Understand the limitations of Reference Designs
Small deviations from the reference designs can affect performance and regulatory compliance. Custom designs should always undergo thorough validation.
Passing FCC Testing isn’t the end all
FCC testing verifies limits on interference but doesn’t ensure product performance. Continuous validation is crucial.
Don’t forget RF Debug in the Design
Incorporate debugging capabilities to facilitate testing during development and production.
Consider Having a Non-Form Factor Design for Development
Creating a larger, debug-friendly prototype can simplify testing and validation of small BLE products.
Summary
We hope you’ve found this guide useful. Following these recommendations can help avoid major problems and increase the odds of launching a successful product.