There are two major branches of Bluetooth® application development. One is mobile platform development like smartphones and tablets running on iOS, Android or other mobile operating systems. The other is embedded application development. I often get questions from Bluetooth low energy developers who are curious, “how can I select a suitable Bluetooth LE embedded microcontroller for my prototype or product?” In this blog, I outline some tips for choosing the right one.


Most Bluetooth low energy modules are fairly simple to use. On the module itself, most of them already include a Bluetooth® low energy chipset, chip antenna and other necessary components like an oscillator, resistors and capacitors. We just need to provide a power supply, flash the firmware, and then start working with it. This allows developers to focus on firmware design while skipping hardware design. Most module suppliers already have some qualifications like CE and FCC, so buying a module helps developers save time on product releases.

For Bluetooth low energy chipsets, if a developer has hardware design skills, especially RF design, it might be a good choice. On the chipset, not only does a designer need to layout the Bluetooth low energy chipset, but also needs to add extra parts like an oscillator, resistors, capacitors, power supply, balum and antenna. Although it’s more complicated than simply using a module, developers have much more flexibility to design their product exactly as they want. However, going the chipset route is cheaper than a module route but it involves skills and time that many developers don’t have, which could quickly take up any cost advantage of “designing your own” with a chip.

RAM—Random Access Memory

The selection of an embedded platform for your Bluetooth low energy device is application-oriented. For any kind of embedded application development, it needs to consume RAM (Random Access Memory).

In Bluetooth® low energy application development, a developer not only needs to consider RAM consumption for the application layer, but also for the Generic Attribute layer of GATT—a main point for developers to calculate how many bytes of RAM will be consumed in a Bluetooth low energy design. The GATT profile in your application most likely has several services—and several characteristics in each service. The size of these characteristics can be pretty big. For example, 50-100 bytes (in Bluetooth 4.2 the maximum length of an attribute value is 512 bytes). At this point, you should pay attention that the RAM capacity of the chipset or module can meet your technical requirements—the proper margin there will make your application upgradable and flexible.

Dual-Core, Coprocessor

Some applications have tough requirements for real-time abilities; some applications have very complicated computational algorithms; and some applications need very rapid responsiveness. Sometimes, a Bluetooth® low energy microcontroller can’t meet all of the technical requirements, so the developer could adopt a dual-core approach in the design. In this architecture, the Bluetooth low energy microcontroller acts as a co-processor which takes on the responsibility of Bluetooth connectivity maintenance; the other core, the host microcontroller, takes the responsibility for high-capacity computing and real-time responsiveness. Between the dual cores, there is a data bus. It could be UART, SPI or I2C, and the host microcontroller can control the co-processor through this bus.


Most Bluetooth low energy applications need to interact with sensors, buttons, a touch screen and so on. When a developer starts to select an embedded microcontroller, he/she should guarantee the mandatory peripheral interface is there.


Before selecting a Bluetooth® microcontroller, you should think about security. Some applications need more powerful Bluetooth security protection, like a smart lock. The Bluetooth 4.2 specification provides a new pairing method: Bluetooth LE Secure Connections. LE Secure Connections provides a more reliable and robust pairing protection.

Some microcontrollers provide native, hardware enabled crypto engines like AES128/256 to provide more flexibility for developers to design the security module to fit their product’s needs.

Program Memory Size

A lot of microcontrollers use flash memory for program memory. Typical things stored in this memory area are the bootloader, Bluetooth Stack and application firmware. When developers start a selection for a Bluetooth microcontroller, they should consider:

  • Current bootloader size and Bluetooth stack size
  • The application firmware code size
  • OTA package size—if supporting over-the-air upgrades (OTA). Developers should also plan for a margin of the program memory for future upgrades like bug fixing and feature improvements


If you are new to Bluetooth® application programming on embedded platforms, you should consider selecting a platform with a mature community. In a mature community, there are a lot of answers to commons questions and FAQs which can kick start your programming adventure. The problems you meet today may have already been solved by other developers yesterday, so it will help you a lot.

At the end

I hope these guidelines help you select a suitable and useful embedded microcontroller for your Bluetooth® product. To be honest, the more features supported in the chipset/module, the more expensive they usually are for purchase. So there is a tradeoff between cost and functionalities.

Think about it carefully, and good luck. For more information on Bluetooth developer tools, visit the website.

New Core Specification v5.3 Feature Enhancements

One of the key reasons why Bluetooth® technology has emerged as the global wireless…

Bluetooth® Core Specification Version 5.3 Feature Enhancements

Bluetooth® Core Specification version 5.3 includes several feature enhancements with the potential to improve…

Connect: Car Access Demo

In this demo, Texas Instruments will discuss and demonstrate Bluetooth 5.1 and its cutting…

Wireless Connectivity Options for IoT Applications - Commercial Lighting

Industry 4.0 is no longer a thing of the future. The term describes the…

4 Essential Tools for Every Bluetooth Low Energy Developer

One of the biggest challenges of learning any new technology is knowing which tools…

Is Remote IOP Testing Here To Stay?

Like many organizations around the world, the Bluetooth Special Interest Group (SIG) has made…

Bluetooth 5.2新機能のポイントを10分で解説!(日本語字幕)

この動画では2020年1月に発表されたBluetoothバージョン5.2新機能の概要を中心に話します。Enhanced Attributeプロトコル(EATT)、LE Power Control (LEPC)、Isochronous (アイソクロナス)チャネルなど、これらの各機能について詳しく説明します。最後に、アイソクロナスチャネルを利用した「LE Audio」と呼ばれる次世代のBluetoothオーディオについて日本語翻訳付きで解説します。

The Bluetooth Internet Gateway Study Guide

According to the ABI report Installed Base of IoT Devices by Connectivity Technology, published…

Top Bluetooth Developer Resources of 2020

Every year, the Bluetooth® developer community challenges the limits of wireless connectivity, and each…

Designing and Developing Bluetooth® Internet Gateways

Design and implement your own Bluetooth® Internet working prototype and see for yourself how BIGs allow applications to exchange data with Bluetooth devices from anywhere in the world.

An Introduction to Bluetooth Low Energy for Swift Developers

All smartphones support Bluetooth® Low Energy (LE) and it is used in all manner…

Building a Sensor-Driven Lighting Control System Based on Bluetooth® Mesh

A technical examination of which Bluetooth mesh models to use in different types of…

How Bluetooth Low Energy Works: 21 Interesting Facts

Whether you’re a beginner or an expert in Bluetooth Low Energy development, it’s always…

Advanced Bluetooth for Android Developers

Android developers can take this guided tour of the most recent features and interesting…

How to Deploy BlueZ on a Raspberry Pi Board as a Bluetooth Mesh Provisioner

This step-by-step study guide will teach you: How to rebuild the kernel on a…

The Bluetooth LE Security Study Guide

Learn about fundamental security concepts, the security features of Bluetooth Low Energy, and gain some hands-on experience using those features in device code.

How Bluetooth 5 Increases the Achievable Range of a Bluetooth Low Energy Connection

Texas Instruments offers their theory on how to achieve long range with a Bluetooth…

Testing Long Range (Coded PHY) with Nordic Solution (It Simply Works)

There has been a lot of discussion and confusion about testing the long range…

 Get Help