Is it possible to upload a new firmware to an Arduino DUE without a computer?

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.

How viable is it?

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.

1 Like

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.

Is the problem that they don't have a computer available at all, or that there's no computer with the IDE available?

I don't have experience with the DUE specifically, but I did have a similar problem with a non-technical user who would have had trouble with the IDE.

https://www.cedarlakeinstruments.com/archives/990

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.

1 Like

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!

There is a BOSSA GUI (bossac is the command line version of the tool):

https://www.shumatech.com/web/products/bossa

image

I don't know whether it will be usable or appropriate for your specific application, but maybe worth a look at least.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.