nRF5 SDK v14.0.0
Running a serialized application

If you want to use a BLE or ANT 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 or ANT 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.

See Serialization for further documentation on serialization.

Serialization hardware setup

The sample serialization setup supports two physical transport interfaces for BLE: UART and SPI. For ANT, only UART is supported.

UART (BLE)

See Figure 1 (nRF52840 PDK) or Figure 2 (nRF52832 DK, nRF51 DK) for an illustration of how to connect two development boards as an application board and a connectivity board supplying a UART connection.

serialization_pca10056_uart.svg
Figure 1: Serialization UART for PCA10056


UART_serialization.svg
Figure 2: Serialization UART for PCA10040 and PCA10028

SPI (BLE)

Figure 3 (nRF52840 PDK) and Figure 4 (nRF52832 DK, nRF51 DK) illustrate how to connect two development boards as an application board and a connectivity board supplying an SPI connection.

serialization_pca10056_spi.svg
Figure 3: Serialization SPI for PCA10056


SPI_serialization.svg
Figure 4: Serialization SPI for PCA10040 and PCA10028

Shorting SB17/SB43 will connect the reset on the nRF5 chip on the connectivity board 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, this makes it possible to reset the connectivity chip from the application CPU.

UART (ANT)

Figure 5 illustrates how to connect two D52 ANT SoC Modules from Dynastream as an application board and a connectivity board supplying a UART connection.

ANT_serialization.svg
Figure 5: Serialization UART using D52 ANT SoC Module

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 (BLE) <InstallFolder>\examples\connectivity\ble_connectivity\board\ser_s13x_uart
    SPI <InstallFolder>\examples\connectivity\ble_connectivity\board\ser_s13x_spi
    HCI (reliable UART) <InstallFolder>\examples\connectivity\ble_connectivity\board\ser_s13x_hci
    UART (ANT) <InstallFolder>\examples\connectivity\ant_connectivity\board\ser_s212_uart
  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
    Heart Rate Application UART, SPI, SPI_5W, HCI
    BLE Heart Rate Collector Example UART, SPI, SPI_5W, HCI
    Direct Test Mode UART, SPI, SPI_5W, HCI
    ANT I/O UART
    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.

Additional steps for the serialized Direct Test Mode example:

  1. Press Button 1 on the application board to enable DTM on the connectivity board. This will disconnect the application board from the connectivity board to free up the UART.
  2. Send DTM commands to the connectivity board in the same way as with a non-serialized DTM. See Direct Test Mode. The default UART pin is 8 for RX and 6 for TX.

Documentation feedback | Developer Zone | Subscribe | Updated