Arduino on breadboard problems

Hello guys!

I'm a newbie in the Arduino world, and I made a choice I'm starting to regret: building my arduino on a breadboard.

I bought 2 AtMega328 preloaded with bootloader and a USB to Serial with FT232R chip, and followed the standalone instructions from http://arduino.cc/en/Main/Standalone

I also added the autoreset feature by using a 0.1uF capacitor between DTR and reset pin of the AtMega328.

After setting all up, the led connected to PB5 (arduino pin 13) blinks.

The problem is that I can't get a connection between the Arduino IDE and the atmega, neither using the manual switch to reset nor the autoreset. Also this happens with both the AtMega328.

WITH UBUNTU 10.04
Fresh install, unistalled brltty and installed the arduino package from the ppa as stated in the ubuntu instructions.

This is what happens:

Binary sketch size: 896 bytes (of a 30720 byte maximum)
avrdude -v -v -v -v -patmega328p -carduino -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/tmp/build7017198197249163195.tmp/Blink.cpp.hex:i 


avrdude: Version 5.10, compiled on Mar 23 2010 at 15:03:00
         Copyright (c) 2000-2005 Brian Dean
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/etc/avrdude.conf"
         User configuration file is "/home/ubuntu/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/ttyUSB0
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: ser_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding

avrdude done.  Thank you.

WITH VISTA

Installed the newest ftdi drivers from the website. Donwloaded latest arduino (0019). Disabled antivirus and firewall.

This is what happens every time:

avrdude: Version 5.4-arduino, compiled on Oct 11 2007 at 19:12:32
         Copyright (c) 2000-2005 Brian Dean

         System wide configuration file is "C:\Users\...\arduino-0019\hardware/tools/avr/etc/avrdude.conf"

         Using Port            : \\.\COM3
         Using Programmer      : stk500v1
         Overriding Baud Rate  : 57600
avrdude: ser_open(): setting dtr
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Recv: 
avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: Send: Q [51]   [20] 
avrdude: Recv: 
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

avrdude done.  Thank you.

I tried everything i could find in the forum, but without success. (yeah, the port is the right one, and i tried all the possible boards)

Does someone have any advice?

Thank you!!!

Gabriele

I'm starting to regret

You shouldn't...

There are around 20 different USB to TTY adapters on the market, with different pin-out. XMT/RCV reversed, no DTR, but DSR or even a handy RST, with build in cap.

What exactly have you got? Best check with the serial monitor (or any TTY program) whether you can send something that makes an LED on the RCV line blink...

Thank you for the reply!

I'm using this serial adapter: http://www.robot-italy.com/product_info.php?cPath=13_43&products_id=827

It has a led wich blinks when receiving data throught the serial monitor. Also, when I try to upload sketches it blinks (and then nothing else happens :frowning: )
Now the adapter is connected to +5V and ground, DTR to reset via 0.1uF capacitor and TX - RX to the atmega. I think i checked the connections a milion times..

Well - expensive, but very versatile!
So we have:

  • chip is working (blinking LED 13, you said)
  • data is coming in (blink RCV LED on converter board)
  • no answer (NO even short blink of XMT LED on converter board.

This does look like a wiring problem...

  • ground?
  • reset? When you start or finish the Serial Monitor: Does the Arduino reset? (blink LED 13, then stop for a short time and restart the BLINK program? BTW does it do it, when you press the RESET buttom?)
  • Is RCV really to pin0?
  • Is XMT really to pin1?

neither using the manual switch to reset nor the autoreset.

Using manual reset is a bit tricky. Hold down the reset button, click the up load button. When it comes up with the information about how many bytes to load then wait about 1 second and the release the reset button. It works about 80% of the time but I find you can go on a run where it doesn't work.

@Grumpy_Mike Actually I've seen a lot of forum threads about this, and I tried with all the delays combinations I could come up with, on both the OS ('cause they have really different compilation time for me), but nothing happens anyway...

@deSilva
-yeah blink on arduino pin 13
-blink led on convertor
-no trasmission blinks...

Anyway, maybe here it's the issue: while starting or stopping the serial monitor it doesn't reset (is it supposed to activate the autoreset?)
If i press the reset button, the led 13 is not blinking as long as i press it. When i release, it just starts the blink program again, can't notice a short time of stop.
Could it be a bootloader problem? This happens with both the atmega.

I think that the connections should be good..anyway i'm going to check everything again.

Anyway thanks for the replies!

Reset: Try something quite drastic: Shortcut the cap with a wire!
Now the DTR is controlling the RESET directly: Does this work?

Bootloader: There is the remote possibility that your chip has a wrong Fuse Setting ("No Bootloader") and maybe does not even contain a bootloader.

When you release the RESET switch:

  • After around 0.1 second the LED13 should blink once for 0.1 second
  • after another 0.1 second the XMIT LED should blink for around 0.05 second.

This is the Bootloader's action...

Reset:
Hmm, now the DTR is directly connected to the reset pin. Led on pin 13 doesn't blink anymore. Uploading a sketch just gives the same old problem.

What's going on...?

The check should (obviously!) be: The Arduino is in reset when the Serial Monitor is running, and the Program is running when the Serial Monitor is closed. So Auto-Reset should work - after you re-install that 100nF cap again. It is a 10 or 100nF isn't it?

You answered very fast - also see my last posting above.

Yes, it is a 100nF cap. Anyway, I'm not really getting what's going on...
The situation is this:
Direct connection between DTR from serial converter and reset pin. Nothing happens on pin 13. Doesn't matter if Serial Monitor is running or not. I'm not sure this is ok..
If the cap is back in place, everything is back as before.

Bootloader: After I manually reset, led on 13 immediatly starts blinking with the same behaviour as before (long pause-short light-long pause...) and goes on forever like this..
About the XMIT LED.. do you mean I should connect a LED to the TX pin to check if something happens on reset and understand if there is a bootloader?

Thank you for all the efforts trying to help me! :slight_smile:

I think there is a XMT LED on the FTDI board? If not - yes, try to connect your own LED (though a 1k resistor or such).

But it is a bad sign, that there is not this typical 1/4 second pause with a short blimb of LED 13 before it restarts the BLINK program...

When you close the Serial Monitor, the TTL signal DTR should go HIGH, un-resetting the chip.

Do you have a multimeter to check this level? It might only go up to 3.3 volts.. In that case, you have selected the wrong voltage at your FTDI board....

Hmm I tried to understand what's going on in the DTR using a led (and a resistor)
I used the Parallax Serial Terminal which has a checkbox to enable/disable DTR and RTS..
RTS starts lightning the LED and if using the program I enable the checkbox, the led goes off. I'm not sure if this is normal or it should be the other way around..

On the DTR line nothing happens using the checkbox. Also when trying to upload a sketch or using serial monitor, nothing happens...

I'm not sure if all of this means something......................
Is this normal or there is kind of problem with the converter outputs?

Im going to hazard a guess from the symptoms. You built the standalone on the breadboard, there is a pull UP resistor that is connected to pin one on the chip. what is the other end connected to.

  1. If you don't have the resistor, pin 1 is floating and could cause the issue.

  2. If you have the resistor connected to ground, instead of to 5v, I made this mistake out of habit, because I was always connecting resistors as pull DOWN in blink circuits, I automatically did it in my first one even though its supposed to be a pull UP connected to 5v, pin 1 would settle into reset constantly

  3. You might have a misplaced wire somehow connected or bridged with pin 1? Maybe a rx to 1 instead of 2 on the chip?

Just some guesses to check, can you post a picture of your layout.

Thanks for the reply!

I checked pin 1, there are 3 connections there:
1)to the manual reset button
2)the cable to the 100nF cap for the autoreset
3)a 10K resitor to +5V

I think it should be ok...anyway I'm gonna take a picture!

@Boz
I am sorry, though it is not really total nonsense what you have written, it has nothing to do with this case!

...which has a checkbox to enable/disable DTR and RTS..
RTS starts lightning the LED and if using the program I enable the checkbox, the led goes off. I'm not sure if this is normal or it should be the other way around..

On the DTR line nothing happens using the checkbox. Also when trying to upload a sketch or using serial monitor, nothing happens...

I'm not sure if all of this means something

It means a lot. You have to re-wire your FTDI so it does not react to RTS (which is an option), but to DTR.

OTOH there is a parameter ind AVRdude setting somewhere that would allow to also reset on RTS. But I don't know free hand where to find this. The absolutely better solution would be to wire to DTR. I will have a look into the description of you board....

You do have connected pins 7 and 8 of the board?

DTR is available on pins 1,4, and 15. Please try all of them.

Yes, pin 7 is connected to +5V and pin 8 to ground.
Anyway these are the picture of the breadboard:

I think I tried with all of the DTR availables, but I'm going to check again now.

Also, I used the DTR connected to the atmega reset via the cap; I checked the RTS because nothing was happening on the DTR regardless of what I was doing, and I felt unconfortable with it...