Firmware update capability has become a must-have for most devices. Whether
to add new features after launch, fix bugs, or urgently patch a security
hole, firmware update gives modern teams the flexibility they need to move fast
and react to a changing environment.
This is a companion discussion topic for the original entry at https://interrupt.memfault.com/blog/ota-delta-updates
Great post. I had recently mentioned delta updates as a strategy in limited bandwidth environments and was met with faces full of fear. Nice to have a walkthrough to point people to!
Hello everyone and thanks for this great work!
I have been working for some time now on the OTA Firmware and the jojodiff and Janpach seemed to be the optimal solution because little ram and flash, I wanted to do inplace with the FLASH as source, the patch in RAM and the target the same FLASH space as the source.
Everything worked well until daredevil tests, with a big firmware and especially with lots of zeros (constant tables).
And in these cases, the reconstruction did not work. There were some portions that were not correctly reconstructed. After a long debug, an idea came that it might be that it needed to go back to reread FLASH sectors that had in fact already been overwritten. And after testing we realized that by using another memory space as target, it now worked but this indicates that we cannot do inplace with what I conclude.
I would like to know if you have already encountered this problem and if it is adjustable from the janpach or in Jojodiff options.
My version of Jojodiff is: 0.8.5
Buffer sizes: 2048 bytes
Thanks in advance and happy holidays to you!