Optional Programmer?

Well how about capabilities to choose a hex file compiled earlier or creating using other methods... this can then be extended in making the arduino a full time AVR programmer.

I was reading this and think it makes a lot of sense to add a programmer option
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1274458829

cheers
Pracas

?

Yes, this exactly describes what is needed. However the question is why is it not supported in the first place? Obviously the IDE knows about programmers because it supports flashing the bootloaders. So the assumption is that some IDE users will posses programmers. In my opinion it should be supported by default.

Udo

put that way I agree, I have been dancing around the subject for a few evenings now not because I need more space, but I am trying to interact with a system that starts talking on the bus ~750ms after power on, and naturally the bootloader delay gets in the way

Instead of hacking text files, or finding the hex and manually sending it over avrdude a default option would be welcome

but I am trying to interact with a system that starts talking on the bus ~750ms after power on, and naturally the bootloader delay gets in the way

There is a bootloader available written by "Lady Ada", Limor Fried, of Adafruit Industries. It has virtually zero time delay on power up. I have used it and it works well for must start quickly applications:

http://www.wulfden.org/TheShoppe/freeduino/ADABOOT.shtml

Lefty

yep I am aware of it, but what I am looking at now is I have my arduino dedicated to isp functionality, strapping a breadboard chip

Its hooked up its sending fine otherwise I would hook this all up, load a bootloader and hook up another rig for serial then go at it. Currently I can mod some text files, and whenever I click upload it bounces to my breadboard chip via ISP.

But it would be nice as a "point n click" option

@Osgeld:

Instead of hacking text files,

I would not call this hacking text files. This is a simple structured configuration file. If your programmer happens to be and avrispmkii it is a simple as adding the following lines to hardware/arduino/boards.txt:

# this defines how the entry will show up in the IDE menu
atmega328ispmk2.name=Arduino ATmega328 AvrISPmkII

# maximum upload size = maximum flash size since we do not need a bootloader anymore
atmega328ispmk2.upload.maximum_size=32768

# which programmer to use
# avrispmkii exists already in programmers.txt 
# if you possess a different one you might need to add an entry there as well
atmega328ispmk2.upload.using=avrispmkii

# target controller, relevant for the controller AND the compiler
atmega328ispmk2.build.mcu=atmega328p

# target frequency, irrelevant for the programmer, will be picked up by the compiler though
atmega328ispmk2.build.f_cpu=16000000L
#atmega328ispmk2.build.f_cpu=1000000L

# no clue what this does but the other entries use this as well :)
atmega328ispmk2.build.core=arduino

It is really simple. In my opinion this does not at all qualify as hacking. Especially it paves the way for other controllers as well. Once you start thinking about it this bascially opens a whole new world. You do not need to stick to any Arduino boards whatsoever. This way you can flash any "naked" chip right from the IDE. Just look up the datasheet for the default speed and flash size and stick to the RC oscillator. Unless you need really accurate timing this is the barest bare bones operation you can achieve :slight_smile:

Udo

Just one more comment. With avrispmkii it works that way right out of the box. With an el cheapo ISP from ebay it took some more fiddling. This might qalify as a little bit of hacking --> go for the atmel isp. It is not much more expensive and very good quality and it works.

Nothing is more frustrating than searching for bugs in your tools.

Udo

Uploading using a programmer (from within the IDE without editing any preferences files) is in the plans for 1.0: Google Code Archive - Long-term storage for Google Code Project Hosting.

Uploading using a programmer (from within the IDE without editing any preferences files)

I meant something where i can compile using any compiler but be able to download the hex file using arduino?

woot

Ah... hex file download is something that could be nice, but never seems like a high priority. If you're already using another tool to generate the .hex file, why upload it with Arduino?

Without wanting to appear sychophantic, I agree whole-heartedly, and if I used something like AVR Studio, I wouldn't then use the Arduino IDE to download.

However, I would like to see an option where you can (optionally)download EEMEM hex files which are part of a sketch.

What if someone was given the pre-compiled hex file by someone else? In this case they would not have created it in another IDE and would still need a way to get it to their Arduino without the complications of Avrdude.

What if someone was given the pre-compiled hex file by someone else?

Just say :
"No thanks! I'm a open source minded guy so give me the sketch code instead.
If you don't want to do that you could at least figure out the AvrDude commandline arguments for me"

Eberhard

If you're already using another tool to generate the .hex file, why upload it with Arduino?

Lets say you start with an arduino and move on to AVR studio now because you move on to a new ide wouldn't mean that you need to buy new hardware.. I think the FTDI bitbang can be used to program most Atmega ICs and perhaps including this as a standard feature can add the face of a programmer to arduino after one has had enough playing around with the arduino. Simple - 1 piece of harware that can do more at the same price...

you dont need new hardware anyway, included with the arduino environment is arduino isp sketch, it programs your arduino to act like an avrisp, which works fine and dandy with avrdude and others