User's Manual

BMD-300 Series Module Datasheet
Bluetooth 4.2 LE
October 20, 2016
BMD-300-Series-DS V1.7 Page 15 of 34
SoftDevice features
Built-in NVM access and radio coexistence
management
Master Boot Record for over-the air device firmware
update
Memory isolation between application and protocol
stack for robustness and security
Thread-safe supervisor-call based API
Asynchronous, event-driven behavior
No RTOS dependency
o Any RTOS can be used
o No link-time dependencies
o Standard ARM® Cortex™ -M4F project
configuration for application development
Support for concurrent and non-concurrent
multiprotocol operation
Concurrent multiprotocol timeslot API
Alternate protocol stack running in application space
8.2.3 S332
The S332 SoftDevice is a combined ANT™ and Bluetooth® low energy (BLE) protocol stack solution. It supports
all four Bluetooth low energy roles (central, peripheral, observer, broadcaster) and ANT.
The S332 SoftDevice provides a full and flexible Application Programming Interface (API) for building
concurrent ANT and BLE System on Chip (SoC) solutions. It simplifies combining an ANT and BLE protocol stack
and an application on the same CPU, therefore eliminating the need for an added device to support
concurrent multiprotocol.
8.3 MAC Address Info
The BMD-300 Series modules comes preprogrammed with a unique MAC address from the factory. The MAC
address is also printed on a 2D barcode on the top of the module.
Figure 4 BMD-300/301 MAC Address on Label
Figure 5 BMD-350 MAC Address on Label
The 6-byte BLE Radio MAC address is stored in the nRF52832 UICR at NRF_UICR_BASE+0x80 LSB first. Please
read the MAC Address Provisioning application note if you are not using the built in bootloader to avoid
erasing/overwriting the MAC address during programming. Important: The BMD-300 comes with full memory
protection enabled, not allowing the UICR to be read via the SWD interface. If performing a full-erase, the
MAC can then only be recovered from the 2D barcode and human-readable text.
UICR Register:
NRF_UICR + 0x80 (0x10001080): MAC_Addr [0] (0xZZ)
NRF_UICR + 0x81 (0x10001081): MAC_Addr [1] (0xYY)
NRF_UICR + 0x82 (0x10001082): MAC_Addr [2] (0xXX)
NRF_UICR + 0x83 (0x10001083): MAC_Addr [3] (0x93)
NRF_UICR + 0x84 (0x10001084): MAC_Addr [4] (0x54)
NRF_UICR + 0x85 (0x10001085): MAC_Addr [5] (0x94)