Programming (and fuse burning) an Uno with another board.

Hello all,

The overall goal of my current project is to update a number of remote Arduinos that would be impractical to bring a laptop to, so I would like to do everything with a second arduino board and SD card, if possible. I have come across a couple different tutorials on uploading a hex file from an SD card on a "programmer" arduino to another board, such as here: Flash An Arduino From An SD Card | Hackaday, which I haven't yet tried but seems workable.

The trouble I am running into is that I also need to change some of the fuse settings. I have found a few posts suggesting that this may be possible to do from a second arduino, but have not any working code - much less one that can also handle the hex file.

No bootloader is needed.

Is this definitively possible? Short of having to translate the datasheet into (non-EE) human speak, is there anywhere else I could look for guidance?

Thanks,
Scott

There is a "setfuses" command but I don' t know it

I did find this program by Nick Gammon which seems promising as it does the upload and modifies the fuses.

Now trying to figure out if I can modify how he modifies the fuses to fit my needs. Anyone with suggestions/experience is still welcome.

I haven't used the Arduino As ISP sketch to change the fuse settings, but I believe that it supports burning bootloaders which includes setting fuses. I seem to remember that Nick Gammon implemented a sketch which uses the same basic mechanism to enable one Arduino to program another using the ICSP interface, with the target sketch taken from an SD card. I also seem to remember that people have used this as the basis for solutions that receive the target sketch via a network. In other words I'm reasonably confident it is feasible, and I think you will find other people have done it.