-1

I am new to bluetooth develpoing and i am looking to connect a ST STM32F4 MCU via uart to a bluetooth module.

The MCU will have to have HCI implementation to configue and manage the bluetooth module.

Is there any recommendations about an open source bluetooth stack that implements said HCI on the ST STM32F4?

Thanks!

controller
  • 185
  • 1
  • 2
  • 11
shush
  • 11
  • 2
  • 6

1 Answers1

1

I did a research on open source Bluetooth stack available for MCUs before. Firstly I thought it is supposed to be easy to port a HCI Bluetooth stack even it does not support STM32F4, since the only platform-dependent layer is HCI transport layer and implementing the transport layer won't be too hard, since it uses UART. But I realized it is harder than I thought because of the reason I will mention later.

There are three Bluetooth stacks I have found:

  1. NimBle (Bluetooth stack for MyNewt RTOS), Apache License
  2. Zephyr RTOS Bluetooth stack, Apache License
  3. BTstack, BSD-like License that doesn't allow to use in commercial without permission.

The first two things are tightly coupled with their own RTOS. They are quite new RTOSs came out last year, targeting IoT market. You may be forced to stick with their RTOS and their peripheral support is not mature. Although both of them supports some of STM32F4, you might have problem using full feature of STM32F4 peripheral. However, both RTOSs are quite promising because MyNewt is a Apache Foundation project and Zephyr OS is a Linux Foundation project managed by Intel. So both of them will be a great choice in the future but may not production-ready (For STM32) at the moment I am writing. By the way, they support BLE only, they do not support Bluetooth EDR (like Bluetooth audio)

The last one, BTstack, is only targeting purely Dual-mode Bluetooth stack on bare-metal devices. The only problem is that its license is BSD-like with an extra clause, allowing to use it for non-commercial project only. So AFAIK it won't be compatible with Apache and GPL licenses and you have to pay for commercial project.

I hope it would help.

Bumsik Kim
  • 5,853
  • 3
  • 23
  • 39