I'm using several arduino DUEs in wich I have to upload the same program to each one. Most of them are in another country and phisical access for me is a no-go. I need some users to be able to upload new FW without using the IDE. I saw that the DUE has 2 USBs one for programming wich is a simple serial connection. And the Native USB port. Is it possible to upload new Firmware (like firmware.bin or firmware.hex) headlessly? I mean Can I put somehow a USB Flashdrive into the Native USB port? I guess that is Bootloader stuff, is there already a Bootloader that can do this? Something easy for the user.
If I have to go one time to make whatever to the arduino and from that moment they can upload the programs like I said It's fine, but If I have to go each time I push a new firmware update is not viable.
No experience with the Due. My approach would be to create e.g. a zip that contains the upload tool (I think it's bossac), the bin file and a bat file / shell script for uploading.
This approach will work as long as there is a computer available; if that is not the case, I do not have an answer.
It can probably be done with discrete logic but it would probably cost several times what a computer costs. You might look into an embedded solution and possibly jtag if the processor supports it.
This was for the ESP32 and it was programmed through a batch script. I know a similar thing can be done for the "classic" Uno and I'm sure there's a solution for the DUE also. But it does require having some kind of computer.
Alternately, if you have an arduino that can act as a USB host (some can, just don't remember which), then it can be programmed as an arduino programmer. Someone must have done this already.
Thanks, I think I can get away with this, they will need a computer, and with bossac and processing I can make a small easy-to-use UI, not exactly what I wanted but that'll do for now, Thanks a lot!