I have a product that already has a microcontroller on board. I am trying to add either Wi-Fi or Cellular to my board so that I can get status information about the device. I would like to be able to send a file or data over to the particle board and just have the particle device store the data on an external EEPROM. When the other microcontroller is available, I want the Particle to perform a firmware update of the other microcontroller on my board by to sending the contents of the file stored in EEPROM over either UART or another interface.
Essentially I want to perform a firmware over the air update but not really on the Particle. I want the firmware update to occur on the secondary microcontroller.
Would anyone have suggestions?
One thought was that the Particle could hold a copy of this firmware for the secondary micro. In this case, if the firmware on the micro needed updated, a new firmware for the Particle could be pushed via Particle’s normal firmware update method. The Particle could query the other micro and if the firmware was outdated, it would perform a firmware update.
The other thought was if possible, the firmware for the secondary micro would get pushed up to AWS or Particle’s cloud. The file would then be sent to the Particle board and written to an external EEPROM. Once the complete file was transferred and stored, the Particle device would perform a firmware update on the secondary microcontroller.
See the diagram below.