nRF5 SDK  v13.0.0-1.alpha
Choose documentation:
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
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.

serialization_pca10056_uart.svg
Figure 1: Serialization UART for PCA10056
UART_serialization.svg
Figure 2: Serialization UART for PCA10040

Figure 2 illustrates 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

Shorting SB17 will connect the reset on the nRF5 IC with the Arduino RESET signal. Together with the wire between P0.11 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
    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
    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.