Hello,
Today, and yesterday, I was trying to load the bootloader of the 8MHz internal clock onto an ATmega328p. It was an attempt to build a very small Arduino on a mini breadboard. All I have room for is the chip, and a reset button. I have just downloaded the configuration of the breadboard Arduino on the "Arduino to Breadboard" tutorial. I uploaded the ArduinoISP onto my current uno, and then placed a 10uf capacitor between reset and GND of my uno. I connected the SPI pins together and the RST to D10. I selected the ATmega328 on a breadboard in the boards menu, and then burned the bootloader with ArduinoISP. It responded "avrdude: stk500_recv(): programmer is not responding" I have done this before in Arduino 0022, but not in 1.0.
P.S. I have tried the optiLoader and it gives an error message automatically.
Thanks,
Qtechknow
In Arduino 1.0 the serial buffer size has been reduced. This causes failures in the ArduinoISP sketch. One work-around is to reduce the baud rate in the ArduinoISP sketch and in the programmers.txt file.
joining thread..
(I dont use 1.0 for all the problems is poses for beginners like myself)..
but Id like to learn more about burning/using the bootloader on blank chips and using the internal 8Mhz instead of external 16Mhz crystal..
So you dont need the 16Mhz crystal or 2 x 22pF caps when burning for internal 8Mhz chip/end result/usage?
And you just choose whatever 3.3v @ 8Mhz option in boards menu...and burn with Arduino as ISP? from bootloader menu?
I have done many blanks that were DIP or QTFP, using Arduino and/or Optiloader... but never done a 3.3v @ 8Mhz before..
thanks
First, if you are using Arduino 1.0, it does not work. Use Arduino 022.
Second, When you say you tied the SPI pins togher, I assume you mean:
SCK <--> SCK
MOSI <--> MISO
MISO <--> MOSI
U mean mosi -- mosi and miso--miso right?
its not like tx and rx
hmm.. I dont think he does.. I think what he posted is correct?
Arduino <--> Target board/chip
D10 <--> RESET
SCK <--> SCK
MOSI <--> MISO
MISO <--> MOSI
is how I do it...
xl97 is correct. I have connected the pins as so. John Wasser, what baud rate should the programmers.txt file be and in ArduinoISP, too? And also, could you post the whole correct programmers.txt file because I think that you make the protocol arduino instead of stk500.
Thanks for your help,
Qtechknow
xl97:
hmm.. I dont think he does.. I think what he posted is correct?Arduino <--> Target board/chip
D10 <--> RESET
SCK <--> SCK
MOSI <--> MISO
MISO <--> MOSIis how I do it...
You don't swap the pins over. I don't see how that works. MOSI (master out, slave in) on one device goes to MOSI on the other. That's because one is the master (so, master out) and one is the slave (so, slave in). This page shows:
http://arduino.cc/en/Tutorial/ArduinoISP
Diagram and everything:
Yes I think a way to show it is like
Master : slave
out. : in
in. : out
clock. :clock
Think if you swap it, your putting the outputs together which make no sense and is asking to burn something
if the master out is connected to slave out poof
Connection which i believe to be correct is
Arduino ---- Target board
D10 <--> RESET
SCK <--> SCK
MOSI <--> MOSI
MISO <--> MISO
Just ArduinoISP tutorial on wiki page says.
One thing I found out was that you needed to changing delay to delay(20) instead of delay(40) in arduino 1.0 (Refer ArduinoISP tutorial)
OK Guys,
I just figured out that it is something with the boards.txt file or the way the Arduino IDE boatloads. I connected the usbTiny programmer I have to the ATmega328p that I was programming on the breadboard, and I got the same error message as before. It seems as though it is not ArduinoISP, it is the boards.txt file you get from Arduino. I still have not found the problem though, and I even tried in AVRdude. In the Arduino IDE, I was getting the error message "Yikes! Invalid Device signature", but in AVRdude, It read the device signature perfectly. Therefore, I either think something is up with the IDE, or something is up with the boards.txt file.
P.S. I have redownloaded Arduino 1.0 twice already, and this doesn't fix the problem. I am also using a mac, but that should be fine.
Thanks for the recent replies,
Qtechknow
Qtechknow:
OK Guys,
I just figured out that it is something with the boards.txt file or the way the Arduino IDE boatloads. I connected the usbTiny programmer I have to the ATmega328p that I was programming on the breadboard, and I got the same error message as before. It seems as though it is not ArduinoISP, it is the boards.txt file you get from Arduino. I still have not found the problem though, and I even tried in AVRdude. In the Arduino IDE, I was getting the error message "Yikes! Invalid Device signature", but in AVRdude, It read the device signature perfectly. Therefore, I either think something is up with the IDE, or something is up with the boards.txt file.P.S. I have redownloaded Arduino 1.0 twice already, and this doesn't fix the problem. I am also using a mac, but that should be fine.
Thanks for the recent replies,
Qtechknow
Try Arduino 022. 1.0 is broken for Arduino ISP.