DFU Bootloader with S312 Softdevice

SDK: nRF5_SDK_17.1.0_ddde560

example: secure_bootloader_ble_s132_pca10040

The example works when I use the S132, but when I replace with S312 it does not.

i have already changed the API headers from s132 to s312, i simply replace the include paths for the s132 (../components/softdevice/s132/headers/nrf52 ;

../components/softdevice/s132/headers)  to one that points to your s312 headers

When I compile, the following error occurs, as shown in the figure:

i found these errors are caused by the lack of definition in the ble_gap.h file. Why are there no definitions of these parameters in the ble_gap.h header file included by S312? Is this a bug in S312 or am I not configuring it correctly somewhere?

Please note that I have no problem compiling when I switch to S340, but failed when I switch to S312.

Please give me a solution to this problem, thank you

  • Hello,

    I am not too familiar with the S3xx softdevices, as they are not maintained by us. Could it be that you have an old version of s312 from when these features was not available?

    It could also be that these features are stripped out of the s312 softdevice to save space. I believe S312 is the ANT version of s112, so if you are not able to build it for the S112 softdevice, it will probably not work for the S312 either. 

    Perhaps you can try the pca10040e_s112_ble bootloader, and change out the s112 headers with the s312, and see if that builds. If it works, you can either adjust the project to be tailored for the nRF52832, or you can look into what features that are not included in the s112 softdevice, and disable these in your current bootloader.

    Best regards,

    Edvin

  • Hello,

    thanks for your answer, it works

    Best regards

Related