Go Down

Topic: Arduino Standalone programmer without SD card (Read 174 times) previous topic - next topic

duramaxhd

Hi everyone,

I have a bunch of boards that I need to burn the bootloader on, as well as the compiled sketch hex itself.

Im using blank ATMega328PB's (with the Elektor Uno R4 bootloader, excellent option for adding '328PB support, btw!) that currently require a two step process...first, burn the bootloader using the Optiloader program, modified a bit to burn the Elektor '328PB bootloader onto the chips.

Then, after the bootloader is burned,  I use the Arduino IDE and a regular USB-serial cable to upload the sketch.

Its a little annoying to do both different steps, and the USB-serial upload process is a little slow.

What I would like to do is condense this all into one procedure, all uploaded via ISP so its speedy.

The compiled hex output of bootloader + sketch is 37k, so obviously Ill need to use an Arduino with a larger flash space, such as a Mega or Due.


Any ideas or suggestions on how easy would it be to adapt the "standalone programmer bootloader/sketch burn from a hex file on an SD card" program to something that is all rolled into one and can be run directly from a Mega or Due without the need for an SD card etc?

Thanks

avr_fred

So there is no computer in sight, no laptops with charged batteries to be found when and where you want to do this programming, right?

I just want to understand why you don't just use avrdude and a $3 usbasp...

duramaxhd

So there is no computer in sight, no laptops with charged batteries to be found when and where you want to do this programming, right?

I just want to understand why you don't just use avrdude and a $3 usbasp...
I just want to make a setup that burns the bootloader and sketch quickly all in one shot via ISP.


Burning the bootloader via ISP, then burning the sketch via serial port is two steps, requires PC, and is significantly slower.

DrAzzy

I would do it with a computer unless that's precluded somehow... can be done in one step easily.

Flash one that way.
Dump the flash via ISP using avrdude from the command line - you now have a .hex file with both bootloader and sketch.

Then, just put together an avrdude command that flashes that hex and sets the fuses (you can use the commands the IDE invokes as a guide - you can see them if you enable verbose uploads). Either use it from command line, or put it into a batch file / shell script if you prefer.

Alternately (on windows with USBAsp) - use eXtremeBurner, connect your fully programmed one, "read all", then connect the ones you're programming in turn and do "write all" on each one.
ATtiny core for 841+1634+828 and x313/x4/x5/x61/x7/x8 series Board Manager:
http://drazzy.com/package_drazzy.com_index.json
ATtiny breakouts (some assembled), mosfets and awesome prototyping board in my store http://tindie.com/stores/DrAzzy

duramaxhd

I would do it with a computer unless that's precluded somehow... can be done in one step easily.

Flash one that way.
Dump the flash via ISP using avrdude from the command line - you now have a .hex file with both bootloader and sketch.

Then, just put together an avrdude command that flashes that hex and sets the fuses (you can use the commands the IDE invokes as a guide - you can see them if you enable verbose uploads). Either use it from command line, or put it into a batch file / shell script if you prefer.

Alternately (on windows with USBAsp) - use eXtremeBurner, connect your fully programmed one, "read all", then connect the ones you're programming in turn and do "write all" on each one.

Ill try that out, thanks.

I have a couple USB Tiny-ISP's, but no USBAsp....so Ill have to order one.

avr_fred

Can you post a link to your "USB Tiny-ISP" ? It will probably do the job, just not sure what it is since the name has been used, reused, recycled and otherwise overused.

Go Up