OTA for pico #4946
Unanswered
danielealbano
asked this question in
Q&A
OTA for pico
#4946
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I am using tinygo for the firmware of a mobile-based BMC for a system we are building and so far it has been a great experience.
I would also need to implement an OTA mechanism and meanwhile there is quite some material available on github, I will need to build something a bit more custom as our system uses a simcon A76xx for internet connectivity.
As far as I understand, if I define a new board that is, basically, the clone of pico.json but simply use a different bootloader, I should be able to splice the flash in two and then simply have a pointer to which part of the flash I want to run; I should also be able to flash the firmware via tinygo from what I understand.
As I don't have too much experience with the bootloader side and assembler is not really one of my strenghts, I was wondering if there is anything special that needs to be done for tinygo or anything that I need to keep in mind.
In general I was thinking to duplicate
https://github.com/tinygo-org/tinygo/blob/release/targets/rp2040-boot-stage2.S
And then read some metadata sitting right in an ad-hoc sector, different from the bootloader, including if it's the first boot after flash, which is the current partition in use and the address to jump on.
Any suggestion? Idea? Additional material I can look at?
Beta Was this translation helpful? Give feedback.
All reactions