Comming to grips with arduino, bootloaders & ISP...
May 21, 2012
UPDATE/ADD-ON: June, 6th 2012
For the sake of argument, let's pretend I'm a bit thick in the head and also that every day is a Monday for me.
Being a bit reckless in some respects, and hating the shipping wait times, I've ended up ordering a few ATmega324 chips, so the current Atmega328P-PU tally is:
- 1 blank
- 1 w/ the duemilanove bootloader (supposedly, but I believe it so)
- 2 w/ the uno bootloader (which I have some heavily suspect might be blanks or w/ the duemilanove bootloader instead)
So, from what I gathered before:
- Using my UNO I can either burn bootloaders (if need be) and/or upload the desired program code unto the chips.
1st - I was trying to pry off the chip of my arduino UNO. why? Well I wanted to replace them for the couple of chips I got that supposedly already have the UNO bootloader. I figure that would be the quickest way to do so. But since I'm not _that_ reckless after realizing the chip wouldn't come out easily without proper tools, I gave up and ran to search for tricks to ease it out. While doing so I've come across information telling me that _most chips_ aren't made to handle more than around 20 cycles of socket inserting removing. Adding that information to the knowledge that for me to use the Arduino UNO board to upload programs to standalone chips I need to remove the chip on the arduino board first, I can foresee broken pins in no time.
Possible solutions (regarding pin fragility) ?
1- Get a 28-pin ZIF socket and put on the UNO so that I can easily (and safely?) pop-out/pop-in chips?
ORIGINAL: May, 21st 2012
Here's the deal, I'm building my first robot & I have an Arduino One board, but I've realized that the board is too pretty for me to use up in my current (and first) project and besides it would be a waste.
My first thought was:
Well, maybe I can pull out the ATmel chip on the board and stick a blank one there, upload the desired code there, take it out and follow some breaduino tutorial to build around it.
"Note that these techniques only work with the Arduino Duemilanove w/ an ATmega328, NOT the Arduino Uno (or older Arduino boards w/ an ATmega168)."
bummer... but the overall procedure led me to believe:
1) the blank chip regardless of having a bootloader or not is programmed out-board.
2) the arduino ONE does not cooperate (easily at least) with AVR ISP programming
Point 2) does bother me so much provided I have a cheap alternative to:
- keep my Arduino ONE just for testing out code and stuff
- produce my own cheap "breaduinos" for any project I might take on, but that are fully compatible with test I might do on the Arduino ONE
- handle (burn) bootloaders; sometimes I read "atmel328 w/ arduino bootloader" other times "atmel328 w/ arduino one bootloader" that added to what I mentioned before leads me to believe they are different and there are compatibility issues.
Other sources on the internet led me to believe something like this:
might be handy for the aforementioned tasks, is it?
In conclusion, what would be the best (cost-wise and newbie-wise) method to go about what I propose above?
P.S. - I've seen several posts here on LMR, but the few I peeked were over-the-top for my poor monday brain :s But I'll welcome anyone any introductory info on Arduino UNO (r3) AVR ISP programming, bootloader burning and whatnot.