2020-09-08 03:13 AM
Hi, I apologize in advance for my English (I'm French)
I'm begginer with OTA. So I followed instruction from AN5247. All of the following procedure uses file from STM32Cube_FW_WB_V1.8.0 folder. I downloaded last FUS and BLE stack on my Nucleo board and my Dongle. I loaded the binary file of BLE_TransparentModeVCP on my Dongle, and loaded the binary file of BLE_p2pServer_ota on my board starting 0x08007000 (So this binary is already configured to enable OTA).
After that, I have launched STM32CubeMonitor-RF, I have started communication with dongle thanks to the right port. I have selected OTA update from "device" menu. The searching for devices procedure works correctly and I find my board with the "OTA Enabled". The issue is following : I load image file path from my folder (HeartRate_OTA for exemple), and click on update, but after some seconds, it's print "No Response"...
I don't understand why.
Is someone have any idea ? Thanks in advance
Solved! Go to Solution.
2020-09-08 07:00 AM
So I load BLE_Ota_Reference.hex first (It's a .hex file, so I can't set any address), and just after I load BLE_p2pServer_ota_reference.bin at 0x080070000 ? Is that right ? With STM33CubeProgrammer ?
2020-09-08 05:06 AM
Hello DMatt.1
Have you loaded the OTA application which is use to manage the download ? ( in 0x8000000, it is located before the BLE_p2pServer_ota binary))
Stephane
2020-09-08 06:23 AM
Hi Stephane,
No, I don't think so. How can I do that ? Is it BLE_Ota_Reference.hex ?
2020-09-08 06:49 AM
Hello
Yes, you should try to put the BLE_Ota_Reference.hex at 0X8000000.
Stephane
2020-09-08 07:00 AM
So I load BLE_Ota_Reference.hex first (It's a .hex file, so I can't set any address), and just after I load BLE_p2pServer_ota_reference.bin at 0x080070000 ? Is that right ? With STM33CubeProgrammer ?
2020-09-10 04:32 AM
Yes that's right. So you will have the part in charge of OTA download and you app.
Stephane
2020-09-10 05:12 AM
Ok, It's working ! =)
So, now I'm trying to use my own app with OTA. I modified linker file, and defined the BLE_CFG_OTA_REBOOT_CHAR to 1. I would like to merge OTA_BLE with my own app. But there are many conflict between GPIO, UART, and so on. So I have to select only necessary functions and define from OTA_BLE, and put them in my project. The question is, which ones should I select and put on my projet ? I know it's difficult to answer because you doesn't know my code... but you know your own code and you know which functions are needed to enable OTA. Could you help ?
Thanks in advance