i've got a problem with uploading data via RS232. My setup is similar to the one discribed on that page: http://blog.solutions-cubed.com/programming-the-arduino-uno-with-a-serial-port/
So, the sketch is beeing compiled and then the software shows the message "uploading", but nothing happens until I detach the serial cable. After removing it, the message "avrdude: stk500_getsync(): not in sync: resp=0x00" appears.
Has anyone any ideas how to fix that? Bootloader and ISP-Programming works perfectly and transmitting messages via RS232 also works.
I thought maybe my RS232-PCIe-Card doesn't send the DTR-Signal or something like that...
I tried to send a DTR signal with hterm (rs232 terminal software) and the voltage behind the MAX232 was toggled between 0 and 5 V as expected. Anyway the reset didn't work. It seemed as the MAX232 couldn't pull the reset pin to ground despite the 10k resistor to VCC o.O
Do you have a 100nF/0.1uF cap between the DTR from the RS232 and the reset pin? DTR is usually a level, and the cap lets that level rise back up (via the 10K pullup) to create a reset pulse and start the bootloader on the chip being programmed.
It is connected like shown in the attachment. Of course the MAX232 is also used to provide the TTL to RS232 from the ATMEGA which works (I tested it by using an ATMEGA328 with the "DigitalReadSerial" Sketch uploaded). So it's only the programming that doesn't work.
Hey, thanks for your help. I forgot to mention, I did already measure the voltage at pin 9 of max232 and depending on the DTR state, it was 5V or 0V. I think it was 5V with DTR on. Do i have to select a specific programmer? Because I thought the programmer menu is only for burning the bootloader (which I of course already did).
No, you don't need to select a programmer for serial uploads.
You may have a mismatch in speeds; the PC talking at one speed, the '328 responding at another speed.
Which board type did you select when you burned the bootloader, and do you have the same board type selected now?
I use Uno as the board type for all '328P designs. Even my Duemilanove has been re-loaded as an Uno with 16 MHz crystal.
Okay, I burned the Arduino Uno bootloader (I've got a 16MHz Crystal on my board). It still doesn't work. Anyway, I noticed the reset via DTR seems to work. I wrote the following test software:
Maybe its a Windows driver problem then. I don't know how you tell the IDE that you're using an RS232 output from the PC vs a USB output so it knows to control the DTR line.