2024-08-07 12:27 PM
The hardware for my project is an Arduino Opta, which utilizes the STM32H747XI dual core processor. We are trying to implement a watchdog timer for our application because the OS occasionally crashes. The start and kick timer functionality works without a problem. However, we are having trouble stopping the timer. We need to stop the timer during over-the-air "OTA" updates because it is a long running process.
If I am understanding the datasheet correctly, it appears that stopping the timer is only available in debug mode. Please confirm.
If stopping the timer is not an option, how would you recommend we tackle this problem? Is it possible to do the OTA update on the second core while the timer is running along with the main application on the first? Thanks in advance for your help. I've spent a lot of time trying to solve this problem.
Regards, Mark
Solved! Go to Solution.
2024-08-07 12:35 PM
You can't stop the watchdog.
To overcome the problem, use the concept of a magic word written into memory that is then read upon reset. When you want to update the firmware:
On chip startup:
You cannot update the firmware while that code is still being used, so you will need to stop the core during the update procedure.
2024-08-07 12:35 PM
You can't stop the watchdog.
To overcome the problem, use the concept of a magic word written into memory that is then read upon reset. When you want to update the firmware:
On chip startup:
You cannot update the firmware while that code is still being used, so you will need to stop the core during the update procedure.