This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
I have a CC3235SF and I want to provide a firmware update method over UART. I was thinking that the new bin file can be downloaded via UART and saved to the file system as mcuflashimg.bin. The micro would be reset and the new image would be loaded. Is this a valid procedure or am I missing some steps? Thank you.
Hi,
There is missing few important steps. You need also commit new binary by sl_FsCtl() API. Please see this thread. All mandatory steps you find as part of OTA examples in SDK as well.
Jan
Hi Jan,
I have a question regarding the thread you referred to. It says step 1 is to open the file, step 2 is write the file, and step 3 is reset the MCU. Shouldn't the file be closed first using the signature of the original file? I have those steps implemented so far.
The thread says an MCU restart is required before committing the file. Does there need to be code that executes after reset to check for a pending commit? Is this code executed from the new image or is the old image still executing after reset? If the commit succeeds, should there be another MCU reset in order to load the new image?
Thank you,
Anthony
Hi Anthony,
Yes, the mcu .bin file that you write must have its signature provided at sl_FsClose(), and once you reset the MCU you will need to check for the image being in a pending-commit state and commit it if necessary. You must also perform an sl_Stop() before resetting the MCU.
If you are still unsure as to how to perform a mcuflashimg.bin only firmware update, let me know and I can provide a more detailed guide with some sample code.
Regards,
Michael
Hi Michael,
I got the bin file write and close working by providing the signature of the existing bin file. Thank you for the confirmation.