I've been trying to perform OTA updates for the Arduino DUE using the ESP32.
The only thing I've got working so far is that the ESP32 can send the binary file over it's UART ports.
Now what I would like to do is simulate the USB transfer, from what happens when you upload firmware to the Arduino DUE. I can't find any documentation what is send, apart from starting it by opening at 1200 baud.
Where can I read more about what is being done to get the firmware up there?
There are threads in the DUE sub forum relative to the upload of a binary file to the DUE using Flash Bank 0 and Flash Bank 1. E.g. a program N°0 running from Flash Bank 0 can store the binary code of another program, let's say program N°1, to Flash Bank 1. Then there is a switch to implement in order to run Program N°1 from Flash Bank 1.
https://forum.arduino.cc/index.php?topic=364565.0
https://forum.arduino.cc/index.php?topic=461210.0
Apart from this, the IDE uses Sam-BA to upload a binary file (a compiled sketch).
ard_newbie:
There are threads in the DUE sub forum relative to the upload of a binary file to the DUE using Flash Bank 0 and Flash Bank 1. E.g. a program N°0 running from Flash Bank 0 can store the binary code of another program, let's say program N°1, to Flash Bank 1. Then there is a switch to implement in order to run Program N°1 from Flash Bank 1.
How possible compile a binary for Arduino Due that can run from flash BANK1? - Arduino Due - Arduino Forum
Setting GPNVM FLASH bits and Resetting Later - Arduino Due - Arduino Forum
Apart from this, the IDE uses Sam-BA to upload a binary file (a compiled sketch).
This is preferably not the direction I would like to go to. I would rather directly communicate with the bootloader to upload firmware. I have been looking into the links you linked already, and those seem viable, but not preferable.
Plus this link to upload a binary file with Bossac (from your PC):
https://forum.arduino.cc/index.php?topic=588934.0