8 years, 4 months ago.

External nRF51822 module?

If I am using the nRF51822 stack and drivers here: https://developer.mbed.org/teams/Nordic-Semiconductor/code/nRF51822/ on my MCU, what is the general approach to using with this with an external BLE module that is based off the nRF51 series?

For instance, let's say I want to use the HRM1017 standalone BLE module (NOT the mbed HRM1017) attached to my arbitrary mbed-enabled MCU, is there a certain pin-out/process that I must use to get this BLE module to function with the mbed BLE_API?

I do not fully understand how the BLE module is supposed to interact and work when it is removed from the mbed-enabled MCU

Question relating to:

Nordic stack and drivers for the mbed BLE API

2 Answers

8 years, 4 months ago.

Hey. When using the nRF51 alone, you must have an external debugger/programmer unit in order to program it. The programmer/debugger unit will connect to your PC with USB, and to your nRF51 with SWD (4 connections).

When you say arbitrary mBed enable MCU, do you mean a normal mcu you write applications for, or a debug unit (i.e the unit that acts as an mBed "bridge" between your PC and the nRF51).

Only mBed debug units will allow you to drag and drop hex files to your device. If your debug unit is not an mBed one, you can still program the hex compiled by the mBed online compiler.

/media/uploads/anderss90/jlink_-3-.png

8 years, 4 months ago.

Please refer to https://docs.mbed.com/docs/ble-intros/en/latest/GettingStarted/BLE_API/

The bridge-software (or adaptation layer) that comes with the nRF51 mbed platform targets a softdevice running directly on the main MCU. If you wish to target an external BLE module, you might need to create an alternate bridge layer which forwards commands to a RPC server running on the external BLE module. Nordic offers a serialization mode where Softdevice APIs on one nRF51 (or any MCU) can be forwarded over a serial link to a target nRF51.

I asked about the serialization mode prior to asking this question on Nordic's Devzone (see here): https://devzone.nordicsemi.com/question/59991/s110-serialization-using-mbed/

and it seems that the serialization mode is not doable with mbed. (Unless I am completely misunderstanding the problem, which I probably am..)

posted by Jake L 11 Dec 2015

I haven't used the serialization mode, but if I understand it correctly, it simply replaces the soft-device with an alternate virtual-soft-device which can forward the calls over a serial link to another target. You'll need to drop in the replacement softdevice yourself in your mbed.org build tree in order to get this to work.

posted by Rohit Grover 14 Dec 2015