Arm Mbed OS support forum

Adafruit Feather nRF52840 Express custom board support (Mbed OS 6)

I have a beta of the Adafruit Feather nRF52840 Express board as a custom board for Mbed OS 6. You can find the repository at


Thanks for sharing.

I’ve used the existing nRF52840 target, as is, with the mbed BLE library and it worked for me. So, I was curious to understand what this does exactly (I understand that when using nRF5 SDK you need to flash your board with the right SoftDevice library for BLE to work) but have been wondering what the mbed BLE library is doing in the background if the default setting is SOFTDEVICE_NONE and BLE is still working for me - this option is also really helpful for me to understand as I’ve been wanting to build a custom target for nRF52811 board and that requires SoftDevice 112 or 113:

“extra_labels_remove”: [“SOFTDEVICE_NONE”],
“extra_labels_add”: [“SOFTDEVICE_COMMON”, “SOFTDEVICE_S140_FULL”],
“device_has_add”: [“FLASH”],

Then I have not come across this config settings, so wondered what it does:

“config”: {
“enable-objects-extensions”: {
“help”: “Enable inclusion of objects_extensions.h”,
“value”: false

Hi Gerriko,
Not sure if I understand your question but what the
extra_labels_remove is doing is to override the setting from the inherited MCU_NRF52840.
So I am removing the “SOFTDEVICE_NONE” label and adding the “SOFTDEVICE_COMMON”, “SOFTDEVICE_S140_FULL”, to enable the use of the soft device.

The config setting is something I copied from another custom board and to be honest do not know what it does or even of it is needed.

Hope this helps.

1 Like

@gerriko mbed doesn’t use the softdevice for BLE, but rather the cordio stack from packetcraft.

@jrobeson thanks for the clarification. Now that makes sense.