Go Down

Topic: avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x1c (Clone)  (Read 148 times) previous topic - next topic

seymoder

Hello,

Please help. I am using an Arduino Uno SMD Edition to burn an Arduino bootloader on an ATmega328P.

Successes:

- I can burn the bootloader using any relevant board selection in "Tools".
- If the program "blink" is on the board it operates properly on the "new" ATmega328P
- I can repeatedly reprogram the ATmega328P **ONE TIME** with an FTDI232 (mini USD)

Failures
- On the second attempt to load a different or even the same program, the below error message occurs.

I have uploaded both available FTDI drivers for windows 10
I have restarted the computer and board simultaneously and independent of each other.

Note: I can verify the first reprogramming of the ATmega (after the bootloading) via 2 indicators.
        1: The Tx and Rx light blink rapidly on my FTDI232 during the reprogramming
        2: The LED for "blink" will stop blinking or start blinking depending on the initial bootloaded
             program.
        (I can not reprogram without rerunning the Arduino Bootloader)

///////////////////////////////////////////////////////////////////////////////////////////////
ERROR MESSAGE
///////////////////////////////////////////////////////////////////////////////////////////////
Arduino: 1.8.7 (Windows 10), Board: "Arduino Nano, ATmega328P (Old Bootloader)"

avrdude: Version 6.3-20171130
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "D:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

        Using Port                    : COM4
        Using Programmer              : arduino
        Overriding Baud Rate          : 57600
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x6a
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe0

avrdude done.  Thank you.

Problem uploading to board.  See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

Please Help! Thank you!

Budvar10

I am confused from your description. The error looks more like incorrect baud rate used. If you burned new bootloader, which is now standard for Nano, then use normal Nano board with speed 115200.
Arduino clone with ATmega1284P   http://forum.arduino.cc/index.php?topic=277260.0

seymoder

Man, I have spent hours on this and I just happened upon the solution trying to check for your observation.

The baud rate shown is just the FTDI???? I have I tried setting the serial port baud rate to 115200 (the initial was 9600) but the code shows 57600

The solution I just happened upon was hitting the reset button after the upload process started not before.

/////////////////////////////////////////////////////////////////////////////////
avrdude: Version 6.3-20171130
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "D:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

        Using Port                    : COM4
        Using Programmer              : arduino
        Overriding Baud Rate          : 57600
----> The program would stop HERE <--------- I would then wait for about 3-5min before the error message appeared. However, like I mention once I hit the reset button at the pause it continues and finishes uploading.

Probably clear as mud but It's working now.

Budvar10

The baud rate showing in log is used for communication with the bootloader during upload process. The bootloader has hard coded speed: 57600 for old Nano, 115200 for new Nano. IDE has upload speed defined for the board.

Quote
I have I tried setting the serial port baud rate to 115200 (the initial was 9600)...
Sorry? In sketch? It has nothing with the bootloader and upload process.
Arduino clone with ATmega1284P   http://forum.arduino.cc/index.php?topic=277260.0

seymoder

The problem of not being able to reprogram the ATmega clone was resolved by hitting the reset button on the clone or ATmega stand alone during the upload.

The Baud rate for the burning the bootloader onto the ATmega was 19200.

Budvar10

Quote
The Baud rate for the burning the bootloader onto the ATmega was 19200.
This is another thing. If you are using Arduino as ISP, the ISP sketch has set the speed to 19200. It is because it is slow and cannot serve faster. There is some useless ballast - signaling on additional LEDs during uploading. Probably, nobody use this. Someone should connect the LEDs first. Removing this feature the speed could be increased to 38400.
Arduino clone with ATmega1284P   http://forum.arduino.cc/index.php?topic=277260.0

lostmind

When I had your problem; I ran EEPROM Clear and it clear the nano I had saying the same thing and I was able to load my programs again.
Hope this helped.


/*
* EEPROM Clear
*
* Sets all of the bytes of the EEPROM to 0.
* Please see eeprom_iteration for a more in depth
* look at how to traverse the EEPROM.
*
* This example code is in the public domain.
*/

#include <EEPROM.h>

void setup() {
 // initialize the LED pin as an output.
 pinMode(13, OUTPUT);
 
 /***
   Iterate through each byte of the EEPROM storage.

   Larger AVR processors have larger EEPROM sizes, E.g:
   - Arduno Duemilanove: 512b EEPROM storage.
   - Arduino Uno:        1kb EEPROM storage.
   - Arduino Mega:       4kb EEPROM storage.

   Rather than hard-coding the length, you should use the pre-provided length function.
   This will make your code portable to all AVR processors.
 ***/

 for (int i = 0 ; i < EEPROM.length() ; i++) {
   EEPROM.write(i, 0);
 }

 // turn the LED on when we're done
 digitalWrite(13, HIGH);
}

void loop() {
 /** Empty loop. **/
}

Go Up