Is the bootloader a requirement?

Hi.. I'm new around here, so if my questions were already answered in a previous post, I'm sorry for the spam. If i chosse to use an Arduino board as an ISP, does it mean that : for a new uC i need to first burn the bootloader on the uC, in order to program it ?... Can the Arduino board, configured as an ISP, be a low cost option to an Atmel AVRISP mkII ? And if so, could I use it for most of the AVR uC, or just for the uC used on Arduino boards?

Is it as "simple" as :-Upload ArduinoISP to the Arduino -Connect the Arduino to the Target Board's ISP signals -Generate the hex file to be loaded onto the Target Board -Use avrdude to send the hex file to the Arduino, which will program the Target Board Thanks.

Google is your friend...

for a new uC i need to first burn the bootloader on the uC, in order to program it ?...

No. Bootloader is not required. Fuses must be set appropriate for the ISP programmer; refer to the ISP programmer documentation.

Can the Arduino board, configured as an ISP, be a low cost option to an Atmel AVRISP mkII ?

http://arduino.cc/en/Tutorial/ArduinoISP

Is it as "simple" as :

See above link.

Ray

i know Google is my friend. the part with the bootloader was unclear.... and most of the the examples out there ref to uC that are used on Arduino, so i wanted to get a second opinion.Anyways.. thanks for your help, it is quite appreciated.

some related links - http://www.gammon.com.au/forum/?id=11643 - (not for the faint of heart ;) - http://www.ladyada.net/learn/avr/whatisit.html - - http://www.sparkfun.com/tutorials/200 -

There are plenty of repeated questions around here. Not every pre-published article covers the thought process of every end-user. Don’t sweat it. We’re all here to learn.

FWIW, I have considered buying a dedicated ISP a couple times, mostly because I got tired of having to load the Arduino-as-ISP sketch on an available chip all the time. This can be circumvented by building a dedicated programmer of your own. Also, there have been bugs in the past that made the sketch not so reliable, but once you get a version that works well, it… works well. :smiley:

If the convenience of having something ready-to-go is worth the $30 or whatever, get a dedicated programmer. Until then, or otherwise, an Arduino will do the trick nicely.

Yes, you can program any AVR that avrdude supports. The one caveat is that you can sometimes run into problems with really big flash images on some AVRs. IIRC, that’s a limitation of the STK 500 protocol, which avrdude uses to communicate with Arduino-as-ISP. Not sure if the sketch ever got updated to use later versions, but avrdude supports them of course. I’ve never tried flashing an image big enough to run into those limits myself.

SirNickity: If the convenience of having something ready-to-go is worth the $30 or whatever, get a dedicated programmer. Until then, or otherwise, an Arduino will do the trick nicely.

More like $8, shipping included. I'd say that's worth the money.

http://www.ebay.com/sch/i.html?_nkw=usbtinyisp

Or the gold standard, works with all AVR chips. No more fooling around. http://www.mouser.com/ProductDetail/Atmel/ATAVRISP2/?qs=%2fha2pyFadujqFzV%252bExzQOlFEGuFbE5zkYm9OzGvRqkjeoy23MLFzjw%3d%3d

nevrax: Hi.. I'm new around here, so if my questions were already answered in a previous post, I'm sorry for the spam. If i chosse to use an Arduino board as an ISP, does it mean that : for a new uC i need to first burn the bootloader on the uC, in order to program it ?...

You don't need the bootloader but the "burn bootloader" command in the IDE also sets the chip fuses, which you'll need to do at least once.

nevrax: Can the Arduino board, configured as an ISP, be a low cost option to an Atmel AVRISP mkII ? And if so, could I use it for most of the AVR uC, or just for the uC used on Arduino boards?

Is it as "simple" as :-Upload ArduinoISP to the Arduino -Connect the Arduino to the Target Board's ISP signals -Generate the hex file to be loaded onto the Target Board -Use avrdude to send the hex file to the Arduino, which will program the Target Board Thanks.

It will work directly from the Arduino IDE - just compile and upload as normal. You can use the Arduino IDE with any chip which has a "core" for it. Almost all of the available Atmel chips will work, including ATTinys, etc. (search for cores for your chip with google).

PS: It's much easier/cheaper to get a dedicated programmer than use an Arduino Uno. You can get them for under $8: http://www.ebay.com/sch/i.html?_nkw=arduino+isp

I wrote a blog entry that covers ICSP programming using ArduinoISP, and setting the fuses, at http://miscsolutions.wordpress.com/2011/08/09/prototyping-small-embedded-projects-with-arduino/.

fungus:

SirNickity: If the convenience of having something ready-to-go is worth the $30 or whatever, get a dedicated programmer.

More like $8, shipping included. I'd say that's worth the money.

http://www.ebay.com/sch/i.html?_nkw=usbtinyisp

more like $2 and change with SIGNIFICANT advantages over old shool programmers like avrisp or tinyasp.

http://www.ebay.com/itm/1-Pcs-USB-USBasp-USBISP-3-3V-5V-51-AVR-Downloader-Programmer-USB-ATMEGA8-HE-/400583840341?pt=LH_DefaultDomain_0&hash=item5d44a85255

john1993:

fungus: More like $8, shipping included. I'd say that's worth the money.

http://www.ebay.com/sch/i.html?_nkw=usbtinyisp

more like $2 and change with SIGNIFICANT advantages over old shool programmers like avrisp or tinyasp.

http://www.ebay.com/itm/1-Pcs-USB-USBasp-USBISP-3-3V-5V-51-AVR-Downloader-Programmer-USB-ATMEGA8-HE-/400583840341?pt=LH_DefaultDomain_0&hash=item5d44a85255

What advantages are they?

I don't see a 10-pin connector as a real advantage. I dare say there's adaptors for six-pin headers, but...

well of course one advantage is you can buy 20 of them for the same cost as one mkII. but really the biggest difference is usbasp can provide 5v, 3,3v, or no power for the target. theres also an issue of firmware stability, i had to upgrade my mkII several times to support additional devices and protocols. and there was that >128k issue. as far as connectors its true the mkII pcb had both pinouts but the cable only supported one of them. and speaking of connectors, who uses that stupid female square type anymore. the mkII is a paperweight w/o one of those $5 printer cables. usbasp has built in "normal" usb connector that plugs directly into front of pc. also worth mentioning is the driver issue. and usbasp has serial port which is lacking in mkII. then theres... wait... why go on... any one of these reasons (i lost count) is enough for me.

i understand why those who spent big bucks on an older, more expensive, technology might not be all smiles giggles and and resist getting with the program. the mkII was a good deal in its time and does work after a fashion. but this is a new millenium and things change.

dup

ono, i did it again. theres something funky with this new forum.

john1993: speaking of connectors, who uses that stupid female square type anymore.

Me.

And the Arduino Uno, etc.

john1993: usbasp has built in "normal" usb connector that plugs directly into front of pc.

That square box that's 1m away under the table? Where do you put the AVR device? On the floor?

Or do you need a stupid female USB extension cable to use it?

john1993: has serial port which is lacking in mkII.

Weird. All my USB ISP devices seem to have that...

john1993: why go on...

Please do, I haven't seen a compelling reason yet.

If it had support for debugWire debugging or something I'd be listening. Otherwise it's just another ISP programmer (but with a 10-pin connector which makes it less useful).

The usbasp I use actually has one of those “stupid” square female USB sockets on it, and both a 6 pin and a 10 pin header for the ICSP connector. It was a little more expensive than the uber-cheap “plug straight into you usb port” version, but it came complete with the all three cables, no 10-to-6 pin adaptor (or whatever) required, and is a very nice little unit to use.

Personally, I much prefer plugging a cable into the usb port on my computer and have the usbasp on the desk in front of me, where I can easily see and access the jumper settings. The few dollars extra (it was all up ~$10 inc. shipping IIRC) is well spent as makes it a much more convenient unit to use, IMHO. But to each his own!

I’ve never had a issue with the unit, still running on the original firmware, no problems programming > 64K. It’s been a rock – highly recommended.

fungus:

john1993: speaking of connectors, who uses that stupid female square type anymore.

Me. And the Arduino Uno, etc.

yes, and dont forget the built-in ftdi/usb chip and wacky "shield" connectors. lol! one day even throwbacks will wake up to the SIGNIFICANT advantages of more modern arduino designs like promini. cheaper, smaller, friendlier interface.

fungus: That square box that's 1m away under the table? Where do you put the AVR device? On the floor? Or do you need a stupid female USB extension cable to use it?

mines on the floor too. but the 3' cable that comes with cheapies usbasp more than reaches tabletop with working length to spare.

fungus: Weird. All my USB ISP devices seem to have that...

i doubt it. certainly not the mkII or tinyusb, got any links or pics?

fungus: I haven't seen a compelling reason yet.

why am i not surprised?

fungus: If it had support for debugWire debugging or something I'd be listening. Otherwise it's just another ISP programmer

if you are waiting around for $2 dragon better bring a lunch.

(maybe i shouldnt say that. wont be the first time we are surprised by The Evil Empire)

I have a $45 USB dongle with hundreds of dollars of software licenses on it. It plugs directly into the USB port. That is my [u]least[/u] [u]favorite[/u] [u]feature[/u] of that device, and I'm talking about something that imposes DRM here, so there's plenty to dislike. After the third time of it getting snagged on or crammed into something, the plastic started to crack around the USB plug, which was also bent at a 15-degree angle. So I soldered a 1ft USB cable to it and wrapped it in electrical tape.

Protruding from the case is OK for my Logitech wireless receiver, because it's all of 3mm deep. Not OK for a device that sticks out more than an inch, IMO. That's just begging for loose or broken connectors. Not to mention the usability aspects. a 10' USB A to USB B cable is far easier to locate than a USB A Male to USB A Female cable.

Look, use what you want. But this "mine's superior to yours because of this aesthetic detail" nonsense is ... nonsense. My preferences are clearly different than yours, and that seems to be the case with others here too. So "better" is not an accurate description. You're not cutting edge, you're just different.

Finally, 6-pin ISP is, I believe, far more prevalent than 10-pin ISP. The latter is a nice bonus if it's there, but the 6-pin variety is an absolute requirement. Say what you will about the Uno, it's the gold standard, and not supporting it and the whole "shield" concept (irritating as the pin header offset might be...) is a poor choice when compatibility with unspecified user equipment is of any concern. (Of course, on your own systems/projects, do whatever you want for an interface.)

john1993:

fungus: Weird. All my USB ISP devices seem to have that...

i doubt it. certainly not the mkII or tinyusb, got any links or pics?

Here ya go: http://www.ebay.com/sch/i.html?_nkw=usbtinyisp

Lots of lovely big square connectors. Nothing fiddly or 'micro' there...

fungus: Lots of lovely big square connectors. Nothing fiddly or 'micro' there...

My usbasp looks like it is of a design that it is more typical for the usbtinyisp. Female USB socket, 6-pin and 10-pin able headers.

Interesting... are there any known practical differences between the usbasp and usbtinyisp? I thought (I could be wrong) the usbtinyisp was developed as a variant of the usbasp to make it cheaper (when the difference in price between a mega8 and tiny was worth thinking about.) When people ask about a programmer, I usually mention the usbasp, but if the usbtinyisp has the advantage of the cable setup as more of the standard design, I might mention that too (if they are indeed just as functional as the usbasp in practice.)

FWIW, I like the "mini" USB connectors best of the three standard sizes... the full size ones are unnecessarily large, but the micro ones are too small and fiddly, and fragile, in my experience. The mini is a good compromise, but alas, I suspect it will only be getting rarer.