Non riesco a comunicare con arduino!

Salve...
chiedo a voi tutti che di sicuro a qualcuno sarà capitato e avrà risolto...
in pratica ho un arduino 2009 con atmega328P-PU
dopo aver cambiato l'atmega poiche quello suo originale uscito insieme all'arduino gli ho rotto un piedino smontandolo dallo zoccolo quindi ho pensato di comprare solo il chip sempre atmega328P-PU e di ricollocarlo e di riprogrammarlo.
Ma questo non mi è possibile mi da questo errore:

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

cosa ha che non va?

Grazie...

L'atmega nuovo che hai comprato non ha il bootloader precaricato, per questo non lo vedi comunicare...
Che pin hai rotto sull'atmega originale? Se ti si è staccato un pin che non viene usato per la programmazione tramite ICSP riesci comunque a mettere il bootloader sul nuovo, te la caveresti egregiamente.
Ciao

a ecco purtoppo l'ho buttato quello rotto convinto che questo nuovo funzionava tranquillamente!
ora come posso farlo funzionare?

Urca, bel casino allora...
Hai diverse soluzioni:
comprare un altro atmega con il bootloader;
cercare qualcuno nei paraggi che ha un arduino funzionante;
cercare qualcuno che ha un programmatore AVR.

Vado subito da un mio amico a prendere il suo arduino, intanto riesci a dirmi come fare? torno tra un quarto d'ora!

Ti passo un bel link, una piccola bibbia scritta dal nostro illustre Dott. Ing. Prof. Menniti... c'è tutto quello che ti serve per mettere il bootloader; vedrai che se segui questa guida glie lo metti anche con un imbuto :slight_smile:
http://www.michelemenniti.it/arduino_burn_bootloader.html

Pelletta:
Ti passo un bel link, una piccola bibbia scritta dal nostro illustre Dott. Ing. Prof. Menniti... c'è tutto quello che ti serve per mettere il bootloader; vedrai che se segui questa guida glie lo metti anche con un imbuto :slight_smile:
http://www.michelemenniti.it/arduino_burn_bootloader.html

Mio generoso amico BUD, sempre troppo buono... :blush:

Allora ho recuperato un arduino 2009 con atmega328P-PU ora ho eseguito tutti i collegamenti suggeritomi dalla generosa guida del prof.MENNITI (grazie) ma soprattutto grazie mille a PELLETTA che mi ha postato il link e che si è reso molto disponibile ad aiutarmi.
ora pero in casa non mi trovo i due condensatori da 22pF da mettere ai due piedini del quarzo, posso metterne due di valore un po superiore oppure faccio danni?

baghyyy:
Allora ho recuperato un arduino 2009 con atmega328P-PU ora ho eseguito tutti i collegamenti suggeritomi dalla generosa guida del prof.MENNITI (grazie) ma soprattutto grazie mille a PELLETTA che mi ha postato il link e che si è reso molto disponibile ad aiutarmi.
ora pero in casa non mi trovo i due condensatori da 22pF da mettere ai due piedini del quarzo, posso metterne due di valore un po superiore oppure faccio danni?

Scusa hai a disposizione due Arduino, vedi che c'è un capitolo specifico :slight_smile: quindi fai i collegamenti tra i due Arduino, carica su quello "buono" lo sketch ArduinoISP, mentre sul tuo metti il micro vergine, poi esegui la parte software, più facile di così, alla fine ti trovi il tuo Arduino pronto :wink:

Se non hai tutti i componenti necessari per usare la breadboard puoi collegare insieme i due arduino!
Guarda la guida, pagine 13, 14 e 15

Si grazie infatti sto facendo in questo modo con die arduino poiche non ci avevo fatto caso e mi ero subito bloccato sul primo capitolo senza sfogliare tutta la guida, vi faro sapere tra un po che succede...

allora ho seguito tutti i passaggi ed a fine di tutto quando vado a caricare il bootloader w/Arduino as ISP mi da l'errore descritto nella guida ovvero:

avrdude: stk500_getsync(): not in sync: resp=0x15

poi ho fatto il passaggio con il collegamento del reset ma invece di mettere una R da 120ohm ne ho messa una in parallelo arrivando a 123ohm ma lo stesso mi da l'errore forse causato dalla resistenza che non è da 120?
l'errore è questo:

avrdude: stk500_program_enable(): protocol error, expect=0x14, resp=0x50
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

baghyyy:
allora ho seguito tutti i passaggi ed a fine di tutto quando vado a caricare il bootloader w/Arduino as ISP mi da l'errore descritto nella guida ovvero:

avrdude: stk500_getsync(): not in sync: resp=0x15

Il problema è certamente quello dell'autoreset. Lascia perdere la resistenza e metti un condensatore elettrolitico da 10uF con il positivo nel pin 3V3 ed il negativo nel pin RESET, parlo ovviamente del 2009 del tuo amico, quello che usi come programmatore. Prima di fare questo collegamento stacca e riattacca l'USB, poi metti il C e poi riprova.

Niente stesso errore

baghyyy:
Niente stesso errore

Puoi postare una bella foto chiara per vedere i collegamenti tra i due Arduino? Intanto sei sicuro di aver inserito il nuovo micro nel tuo Arduino col verso giusto?

si il chip è inserito nel verso giusto, l'arduino sullo sparkfun è il master

quello che temevo.... il filo che parte dal pin 10 del master deve andare al pin reset dello slave NON al pin 10, hai letto la Guida TROPPO in fretta :wink:

Una foto per la vita....!!! XD XD XD
funziona!!!
grazie mille e scusami per la distrazione...

baghyyy:
Una foto per la vita....!!! XD XD XD
funziona!!!
grazie mille e scusami per la distrazione...

Complimenti a te! XD

Allora ci risiamo...
ho un altro problema di comunicazione ovvero se carico uno sketch sotto i circa 20000 lo prende senza problemi ma se carico uno sketch oltre quella soglia mi da errore:

Binary sketch size: 28896 bytes (of a 32256 byte maximum)

avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0x00
avrdude: failed to write flash memory, rc=-4
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x00

Puo essere un problema di bootloader?