This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Serialization app porting

I'm trying to port SDK 9 serialization library to Qt. My starting point is ble_app_multilink_central_s120_uart_pca10028 project in Keil.

All nrf projects uses softdevice_handler.c and .h files. How to port these files? They depend on nrf51 specific headers which are, of course, no available on Qt platform (like nrf51.h).

I read Porting serialization libraries chapter in SDK 9 documentation, but there is not mentioned how to port it. Am I expected to implement sotdevice_handler.c myself?

  • Are you familiar with the concepts of "porting" software in general?

  • I presume you're referring to this:

    developer.nordicsemi.com/.../a00077.html

    That page tells you what functions you need to implement as part of your "port".

    Note that the point of all this is that the SoftDevice continues to run on the Nordic chip - the purpose of the serialisation is to allow that SoftDevice (on the Nordic chip) to be accessed remotely by software running on a separate platform.

    I think the softdevice_handler.c and .h files are part of the code that stays on the Nordic chip - so you do not port these?

  • I don"t know whether I understand porting software in general. I just try my best :) I understood that one have to run ble_connectivity application on nordic chip. The ble_app_multilink_central_s120_uart_pca10028 project is application ran on host and communicating via uart with ble_connectivity ran on nordic chip. The project have to be ported to target platform. It uses softdevice_handler.c/.h which depends on nrf platform so I assume I have to port softdevice_handler somehow.

  • Which "project" are you referring to? You will have two projects:

    • Your "application" project on your application processor;

    • The "connectivity" application (including the SoftDevice, etc) running on the Nordic chip.

    The only part which requires porting is the comms part on the application processor (to enable it to talk to the "Connectivity" chip)

  • You mean this: developer.nordicsemi.com/.../a00044.html ?

    That is an example designed to run on a Nordic chip.

    To convert it to run on a different platform would require:

    1. Converting it to be a Serialised application, and porting that to your target;
    2. Porting the Serialisation library to your target - to allow it to "talk" to the Connectivity Chip;
    3. Creating the Connectivity Chip with the appropriate SoftDevice on a Nordic chip
1 2