Getting Bluetooth based apps working on Carbon


I’m trying to do something useful with my Carbon board, and since I bought it because of the Bluetooth capabilities, I’ve decided that being useful requires some form of Bluetooth connectivity (not just shell or blinky).

I’m a bit confused about all of the components, the requisite Zephyr repos, and how it’s supposed to work.

First of all, it looks like out of the box, the nrf51 is running a beacon app, and that nothing I compile & run on the STM32 seems to do anything with the HCI on the nrf51.

I found references to the btspi/ app in the nrf51-rebase branch of the Linaro zephyr tree, built that, and loaded that into the nrf51 (using a JLink). Still, none of the apps (such as peripheral_hr) seem to actually use Bluetooth. The app runs, and doesn’t show any issues on the console, but neither do I see a Bluetooth device active to correspond to my Carbon board.

The master branch of the mainstream zephyr tree doesn’t show ANY Bluetooth related support in the boards/arm/96b_carbon directory, so I’m guessing that the Linaro work hasn’t been ported to any recent Zephyr release and thus hasn’t gone into the main stream of development.

I haven’t found any examples specific to the Carbon that use Bluetooth. Building shell and blinky works for me. I get them loaded, and they work fine (as far as that goes). Should I expect the sample apps (such as samples/bluetooth/peripheral_hr) to work on a Carbon? From which tree & branch?

david zuhn


As far as I know, the BLE code for Carbon is ported to recent Zephyr releases but you’re right that it is not yet upstreamed. See for more details on what out-of-tree code is available.


Thank you. I’ve now got peripheral_hr running on my carbon (and reading via my other devices over Bluetooth) using the 1.7 dev tree, having built and installed both hci_spi (for 96b_carbon_nrf51) and peripheral_hr (for 96b_carbon).