application : sdk17.1/multiprotocol\ble_ant_app_hrm\pca10040\s332
i want to realize ble dfu on this demo, but i can not find the relevant example. how should i do?

best regard
application : sdk17.1/multiprotocol\ble_ant_app_hrm\pca10040\s332
i want to realize ble dfu on this demo, but i can not find the relevant example. how should i do?

best regard
Hi,
You can refer to the bootloader exmaples in the folder you have found. Ther eis no exmaple with S332 specifically, but the sampel under pca10040_s212_ant shows how you can do DFU over ANT (the sample is qually valid for S332). Similarily, the example in pca10040_s132_ble demonsrate doing DFU over BLE if that is the transport you are interested in. The method is the same regardless of which exact SoftDevice variant is being used.
Hi
Can I directly perform the BLE DFU using this routine“pca10040_s132_ble”? Or do I need to modify some parameters?
Hi,
The S332 SoftDevice including header files is only available from Garmin (See S332 ANT), so you must use what you have obtained from them.
However, let me ask if it was a typo when you wrote S332 in the initial post? If you do not use ANT, then S332 is not appropriate, and you should use S132. In that case, the bootloader sample can be used as is (though you neeed to replace the public key as explained in the BLE Secure DFU Bootloader documentation).
Hi
Oh, I'd like to clarify something. I want to use S332's ANT+BLE in application, and I also want to perform DFU upgrade via Nordic BLE.
I see. Then you need to use the S332 header files that you get from Garmin (it is part of the S332 distribution).


Hi
I transformed the pca10040_s132_ble example in the secure_bootloader into the s332 version. Then generate the corresponding bootloader.hex and combine it with ANT_S332_NRF52832_6.1.1.HEX, setting.hex and application.hex to burn them into the nrf52832. However, it seems to not work. I saw this log through rtt. Could you please tell me how to modify it to make it work?
Hi,
It looks from the log that an APP_ERROR_CHECK is called with an error code in the bootloader. Can you build the bootloader with DEBUG defined? Alternatively, set a app_error_fault_handler () breakpoing in components/libraries/util/app_error_weak.c and check the callstack to see where the error occured. When we know where, and with which status code, that will tell us more about what the problem is and how it can be resolved.
Hi,
It looks from the log that an APP_ERROR_CHECK is called with an error code in the bootloader. Can you build the bootloader with DEBUG defined? Alternatively, set a app_error_fault_handler () breakpoing in components/libraries/util/app_error_weak.c and check the callstack to see where the error occured. When we know where, and with which status code, that will tell us more about what the problem is and how it can be resolved.