nRF5 SDK v12.1.0
Running a serialized application

If you want to use a BLE SoftDevice in applications that cannot be ported to nRF5, for example because they use specific peripherals or need more resources like RAM, flash memory, or CPU speed, you should consider using serialization.

The SDK provides a sample serialization setup consisting of two nRF5 Development boards. One of these boards serves as application board and hosts the actual Bluetooth application. The other board serves as connectivity board and supplies the radio connection. The application board with an nRF5 chip is provided as a reference only. You will need to port the serialized application to the microcontroller in the target system.

Serialization hardware setup

The sample serialization setup supports two physical transport interfaces: UART and SPI. See Figure 1 for an illustration of how to connect two development boards as an application board and a connectivity board supplying a UART connection.

UART_serialization.svg
Figure 1: Serialization UART

Figure 2 illustrates how to connect two development boards as an application board and a connectivity board supplying an SPI connection.

SPI_serialization.svg
Figure 2: Serialization SPI

Shorting SB17 will connect the reset on the nRF5 IC with the Arduino RESET signal. Together with the wire between P0.12 (nRF51) or P0.11 (nRF52) on the application board and the RESET on the connectivity board, shorting SB17 makes it possible to reset the connectivity chip from the application CPU.

Serialization software setup

Prepare the connectivity board by performing the following steps:

  1. Connect the board to the computer and make sure that the RESET wire is disconnected.
  2. Program the SoftDevice on the connectivity board. See Programming SoftDevices for instructions.
  3. In Keil, open the Connectivity Example for the physical transport layer that you want to use:
    Physical transport layer Example location
    UART <InstallFolder>\examples\ble_central_and_peripheral\ble_connectivity\board\ser_s13x_uart
    SPI <InstallFolder>\examples\ble_central_and_peripheral\ble_connectivity\board\ser_s13x_spi
    HCI (reliable UART) <InstallFolder>\examples\ble_central_and_peripheral\ble_connectivity\board\ser_s13x_hci
  4. Compile the application and download the created .hex file to the connectivity board.

The application board does not need a SoftDevice. Prepare the application board by performing the following steps:

  1. Connect the board to the computer and make sure that the RESET wire is disconnected.
  2. Erase the chip on the application board as described in Erasing the board.
  3. In Keil, open one of the serialized example projects. The serialized version is located in the ser_s13x_transport folder. The following serialized examples are available:
    Example Physical transport layers
    Alert Notification Application UART, SPI, HCI
    Beacon Transmitter Sample Application UART, SPI, HCI
    Blood Pressure Application UART, SPI, HCI
    Cycling Speed and Cadence Application UART, SPI, HCI
    Glucose Application SPI
    HID Keyboard Application SPI
    HID Mouse Application SPI
    Heart Rate Application UART, SPI, HCI
    Health Thermometer Application UART, SPI, HCI
    Power Profiling Application UART, SPI, HCI
    Running Speed and Cadence Application UART, SPI, HCI
    Apple Notification Center Service (ANCS) Client Application SPI
    Direct Test Mode UART, SPI, HCI
    BLE Heart Rate Collector Example SPI
    BLE Multi-link Example UART, SPI, HCI
    Choose the example project for the same physical transport layer as on the connectivity board.
  4. Compile the application and download the created .hex file to the application board.

See BLE serialization for further documentation on serialization.


Documentation feedback | Developer Zone | Subscribe | Updated