Flashing a hex file from the IDE

Since some time, the IDE can generate a hex file (Sketch -> Export compiled binary). However, AFAIK, there is no way to actually upload that hex file without compiling again.

I am looking for a user friendly way to flash a provided hex file, using the IDE. Something like Xloader or avrdudess, but in the standard IDE.

(Just to prevent non-answers: My goal is not to distribute closed-source software.)

so you want a button "upload last compiled HEX image"

then you probably want also the button "download HEX image"

robtillaart:
so you want a button "upload last compiled HEX image"

No. I want a possibility to upload "any" hex file, user selectable with a file selector.

then you probably want also the button "download HEX image"

No.

Was I that unclear?

1 Like

No, but I've seen many posts of people want to duplicate a "running uno" and they do not have access to the (exact) sources

It would be great to have an upload button. Compiling everything again just to upload the sketch is boring.

Compiling everything again just to upload the sketch is boring.

True. Uploading a .hex file compiled for one board to a different board IS exciting and mysterious... :slight_smile:
(Note that a .hex file does NOT contain any information about which chip it was compiled for...)

Where would this "upload .hex file" command fit, in the current command/menu structure? Only the (seldom-used) "open" command actually prompts for a filename - I guess adding "burn binary file" next to "burn bootloader" wouldn't be too jarring...

I can't wait for all the 'my uno is acting weird since I uploaded this .hex file that someone send me'.

I can see the benefit of this when used sensibly.

A solution is to download the Atmel Studio software (only costs you a registration) and upload from there with a programmer.

Best way is to display upload message and just copy and paste into command window if you want upload, changing the name of the .hex file.

A solution is to download the Atmel Studio software

I always like to download complex 3GB+ vendor installs in order to avoid having to learn how to use command-line programs...
:slight_smile:

westfw:
I always like to download complex 3GB+ vendor installs in order to avoid having to learn how to use command-line programs...
:slight_smile:

Glad Arduino is not using anything like a mouse driven interface...

Glad Arduino is not using anything like a mouse driven interface...

One of the things I like to point out when people complain about the Arduino IDE being primitive, is that it's also pretty small. Less than 500MB on my Mac, and less than 200MB for the download. Compared to that 3G for Atmel Studio or MPLABX. Arduino has a small fraction of the features, but it installs in a small fraction of the time and starts up in a small fraction of the time, too...

There are some other GUI front ends for AVRDude (AVRDudess, I think I've heard?) They're probably easier to figure out than AS.

westfw:
Arduino has a small fraction of the features, but it installs in a small fraction of the time and starts up in a small fraction of the time, too...

And with 1.6.12 with teensyduino, it crashes faster, too! No Error message, no dialog, just ... desktop.

robtillaart:
so you want a button "upload last compiled HEX image"

then you probably want also the button "download HEX image"

Right. Download HEX would be nice too. I agree.

But having the ability to build an image on the desk and then walk out to the field for flashing the prebuild image to the spreaded wired up boards from another (smaller) computer without having all library dependencys constantly in sync would be very nice.

Therefor this is a legitimate question.

Have you seen the Standalone Programmer I offer?
It is designed to do just that.
http://www.crossroadsfencing.com/BobuinoRev17/

I know. But this wouldn't work for a NodeMCU.