2024-11-13 05:21 AM
I'm working with an STM32WB09KE microcontroller and have implemented a bootloader to handle firmware updates downloaded via Bluetooth. The bootloader copies the downloaded firmware into the active application slot, and it works well for simple applications, such as basic "Hello World" examples. However, I encounter issues when attempting to boot my main Bluetooth (BLE) application.
Specifically:
My main questions are:
Here is the code I'm using to jump to the application.
void gotToApplication(void){
typedef void (*pFunction)(void);
pFunction JumpToApplication;
uint32_t JumpAddress;
printf("Jumping to Application! \r\n");
JumpAddress = *(__IO uint32_t*) (APPLICATION_START + 4);
JumpToApplication = (pFunction) JumpAddress;
__set_MSP(*(__IO uint32_t*) APPLICATION_START);
JumpToApplication();
}
2024-11-14 08:56 AM
Hello @Emueller
I suggest you take a look at the implementation on the BLE_p2pServer_ota or the BLE_HeartRate_ota together with the BLE_ApplicationInstallManager They should be able to let you know how to implement OTA for a BLE application.
Best Regards.
STTwo-32
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2024-11-14 10:21 PM
Hello,
thank you for your reply. I already did that.
with the both the ota apps it is not even possible for me to connect to the example application via the https://applible.github.io/Web_Bluetooth_App_WBA/ app. (The example code instantly disconnects again).
In the example you linked me there is no source code. That is why i was asking for the source code of the application install manager. It is an empty project with just the binary of the ApplicationInstallManager included.
Best Regards,
Eric Müller.