Go Down

Topic: Mega Bootloader STK500v2_receiveMessage(): timeout (Read 23096 times) previous topic - next topic

leo72


Allora Caro Michele.....
Il caricamento del bootloader non è andato a buon fine, solito errore, allora ho caricato "Carica da programmatore" il programma ArduinoISP.ino ed è andato tutto a posto. Mi da anche tutta la memoria disponibile. L'avevo già provato prima comunque. Però adesso il led 13 è fisso acceso. Come era già accaduto. Ho provato ad attaccare allora direttamente MEGA alla USB e caricare Blink.ino e non va. Mi dice errore timeout, durante il caricamento la tensione sui pin 0 e 1 era di 4.5V fissa ma i led non lampeggiavano. Adesso se lo stacco e riattacco non fa il blink.
Cioè sembra sia bloccato.
Prima avevo provato a caricare Blink.ino con "carica con un programmatore" . Stesso risultato di ora.
Un bel rompicapo estivo....
Ciao

"Carica con un programmatore" scrive lo sketch presente nell'IDE nel chip scelto da "Strumenti/Tipo di Arduino" tramite il programmatore selezionato con "Strumenti/Programmatore".
Non ho capito come lo hai usato.

testato

leggendo vari post di David mi d'a' l'impressione che sia bravissimo nel rilegare le guide, tenerle in ordine, stamparle su carta patinata magari, ma nel leggerle... o non le legge o non le capisce  :)
In questi casi ci sono due soluzioni:
1- qualcuno, non io, continua a guidarti, risponderti, correggerti, supportarti via forum, Michele in questo e' un eroe, non si ferma mai  :)
2- qualcuno, e qui posso essere anche io, si collega in remoto al tuo pc e fa una diagnosi, se vuoi seguire questa strada io richiedo webcam rivolta verso il circuito in esame ed accesso teamviewer
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

menniti

Test, bada a come scrivi, la faccina potrebbe non bastare :D
Scherzi a parte, l'idea che mi sono fatto ieri sera, ad un certo punto, è che lui abbia mixato le info delle varie Guide scaricate, mentre bastava seguirne una ed una soltanto; il fatto che tenesse due sessioni di IDE aperte, una con l'ArduinoISP e l'altra col Blink, mi ha dato la sensazione che si siano creati incasinamenti hardware, ecco perché l'unica è scrivere una serie di chiarimenti. Inizio da subito, prima di andare a pranzo.
Partiamo dalla logica della programmazione ISP avendo una scheda programmatore ed una scheda target.
La scheda prescelta come programmatore (la UNO) va collegata STABILMENTE alla porta USB del PC e NON VA PIU' SCOLLEGATA, finché non si finiscono le operazioni e non si deve testare la target (MEGA).
Una volta collegata la UNO bisogna settare la sua COM di riferimento e selezionare la board Arduino UNO nell'IDE, quindi con il normale UPLOAD si carica lo sketch ArduinISP nella UNO. A questo punto Arduino UNO è diventato un programmatore ISP, bisogna dirglielo all'IDE mediante il comando Tools - Programmer - Arduino as ISP. Essendo ora un Programmatore con il proprio firmware Arduino UNO non va più usato come board, quindi è il momento di selezionare nell'IDE la board Target, al posto di Arduino UNO si deve selezionare Arduino MEGA (il modello esatto di cui si dispone), la COM invece resta quella di Arduino UNO, perché comunque essa resta collegata fisicamente al PC.
Per svolgere il proprio compito ora Arduino UNO Programmer deve vedere Arduino Mega Target, quindi bisogna effettuare i collegamenti ISP (quelli che ho indicato ieri, pag. 16 della mia Guida).
Giunti a questo punto è possibile scegliere quale operazione ISP eseguire:
1 - Tools Burn Bootloader: tenta di caricare il bootloader originale nella Arduino MEGA, i dati passano dall'USB alla UNO e da questa, via ISP alla MEGA, gestiti da ArduinoISP (il firmware precedentemente caricato nella UNO). Se la manovra va a buon fine ci si può fermare, la MEGA è ripristinata e si può collegare all'USO, al posto della UNO, selezionando ORA la sua COM e caricalo lo sketch (qualsiasi) mediante il comando normale UPLOAD. Se l'operazione fallisce e si è certi dei contatti dei collegamenti, c'è un qualche problema (da studiare successivamente). Si può tentare allora il caricamento diretto di uno sketch sempre via ISP (punto successivo)
2 - Si apre (o si scrive lo sketch, consigliato: due led pilotati in alternanza su due pin diversi, per avere certezza di funzionamento) e si carica nella MEGA, SEMPRE VIA ISP (quindi SENZA toccare i collegamenti attuali) mediante il comando File - Carica con un programmatore (Upload Using Programmer). Se il caricamento va a buon fine, e lo sketch funziona, è un buon segno, una possibilità d'uso della mega già esiste, ma si può approfondire p.es. andando a leggere i fuse della MEGA, tramite AVRDUDE. Se non va a buon fine nemmeno il caricamento ISP di uno sketch, allora la MEGA è al 99% guasta, probabilmente per il micro bricked, ma anche in questo caso un tentativo AVRDUDE non farà male.
Caro David, se hai letto con grande attenzione questo post errori non ne commetti più e se le due procedure non vanno a buon fine significa che al 99% la scheda è andata. Aspetto l'esito delle nuove prove; io vado a pranzare, poi dormo e non ho idea di quando tornerò su questo mondo :smiley-fat: :smiley-fat: :smiley-fat:, quando sarà leggerò le tue risposte. XD
Manuale "Arduino e le tecniche di programmazione dei microcontrollori ATMEL"
http://www.michelemenniti.it/manuale_di_programmazione.html
http://www.michelemenniti.it/offerta.html
Articoli ElettronicaIN
http://www.michelemenniti.it/elettronica_in.html

david_fiucci

Ciao Professore
Forse sarà il settaggio del mio windows, ma quando io apro arduino IDE e dopo faccio File/Esempi/"ArduinoISP" mi si apre automaticamente un'altra finestra......


david_fiucci

#34
Aug 15, 2013, 11:04 pm Last Edit: Aug 15, 2013, 11:11 pm by leo72 Reason: 1

leggendo vari post di David mi d'a' l'impressione che sia bravissimo nel rilegare le guide, tenerle in ordine, stamparle su carta patinata magari, ma nel leggerle... o non le legge o non le capisce  :)

Scusa ma da che pulpito o presupposto dici questo? Perchè per educazione dò per certo che siete più bravi di me? Perchè ho cercato di entrare in punta di piedi e starmene nell'angolino ad ascoltare? Ma pensi che di qua ci sta il ragazzino che gioca alla playstation e a tempo perso appiccica due fili a caso?
Io non ho mixato nè sbagliato niente di quello che sta sulle vostre guide, se le ho rilegate è perchè mi piace tenere le cose scritte su carta in modo che le possa rileggere anche nei tempi cosiddetti :"persi". E dovretsi essere contento che ci sta uno ******* che a casa sua tra i manuali di ingegneria i libri di analisi, fisica, chimica, elettrotecnica, impianti, informatica, meccanica etc. etc. ha anche la TUA guida.
non vi passa l'idea che ci potrebbero essere dei danni alla scheda?
Io anche questo vi ho chiesto. Magari di andare oltre quello che avete finora fatto.
Perchè i vostri manuali sono stati seguiti alla lettera, e non interpretati, e comunque non sono bastati.
Ho chiesto anche a Savannah, e mi sono rivolto ad altri forum....
Qua se ci sta uno che non capisce quello non sono io.
Domandare è lecito. rispondere è educazione. Si ma con rispetto.........

david_fiucci

[[/quote]
"Carica con un programmatore" scrive lo sketch presente nell'IDE nel chip scelto da "Strumenti/Tipo di Arduino" tramite il programmatore selezionato con "Strumenti/Programmatore".
Non ho capito come lo hai usato.
[/quote]
Ciao Leo
Io carico lo sketch "ArduinoISP.ino" nell'IDE e dopo scelgo Strumenti/Tipo di arduino/ "Mega 2560
dopo seleziono Strumenti/Programmatore/"Arduino as ISP"
quindi Strumenti/"Scrivi il bootloader"

leo72

Moderiamo i termini, per favore.


non vi passa l'idea che ci potrebbero essere dei danni alla scheda?

Questo è un problema che a distanza non è possibile diagnosticare. Ma se hai usato la scheda non rispettandone i suoi limiti elettronici riguardo ai pin, la cosa è probabile. Molti pensano che le schede siano indistruttibili ma basta fare un corto che un pin salta e te lo sei giocato. Io ora non so a che livello di conoscenza della materia elettronica sei, ma un errore è umano commetterlo e lo può commettere anche uno con discreta padronanza.

leo72


Io carico lo sketch "ArduinoISP.ino" nell'IDE e dopo scelgo Strumenti/Tipo di arduino/ "Mega 2560
dopo seleziono Strumenti/Programmatore/"Arduino as ISP"
quindi Strumenti/"Scrivi il bootloader"

Lo sketch ArduinoISP lo devi caricare sulla scheda che usi per programmare l'altra.
Quindi, se non ho capito male tu hai una UNO anche, giusto?

Bene, collega questa al PC, apri l'IDE, apri lo sketch ArduinoISP, poi scegli Arduino UNO come scheda e clicca sull'icona di upload. Lo sketch va sulla UNO. A questo punto, scollega la UNO. Poi fai i collegamenti con la MEGA, e e rifai i passi citati.

testato

David scusa, ho esagerato, e Michele aveva gia' sottolineato che non sarebbe bastata la faccina  :)
Per il resto la mia offerta, gratuita, del punto 2 resta valida
- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

david_fiucci


....Se il caricamento va a buon fine, e lo sketch funziona, è un buon segno, una possibilità d'uso della mega già esiste, ma si può approfondire p.es. andando a leggere i fuse della MEGA, tramite AVRDUDE. Se non va a buon fine nemmeno il caricamento ISP di uno sketch, allora la MEGA è al 99% guasta, probabilmente per il micro bricked, ma anche in questo caso un tentativo AVRDUDE non farà male.
Caro David, se hai letto con grande attenzione questo post errori non ne commetti più e se le due procedure non vanno a buon fine significa che al 99% la scheda è andata. Aspetto l'esito delle nuove prove; io vado a pranzare, poi dormo e non ho idea di quando tornerò su questo mondo :smiley-fat: :smiley-fat: :smiley-fat:, quando sarà leggerò le tue risposte. XD

Ciao Professore, allora siccome ci ero già arrivato prima che vi interpellassi sul forum, cioè avevo già fatto queste prove di caricare il bootloader o caricare via ISP, difatti quando ci siamo parlati la prima volta, ti dissi di essere onorato non perchè pensavo fossi il padrone della seeed, ma perchè avevo già stampato rilegato, letto, studiato e applicato la tua guida. E non ha funzionato. poi ci siamo parlati via forum e la cosa è ripartita ex novo per me. Volevo dire che ho già letto ( e stampato!!!!  :D :D :D :D) AVRDUDE, ma non l'ho applicato perchè appunto volevo capire se avevo sbagliato qualcosa fino qui. Cioè non volevo andare oltre. E qui ti stavo aspettando.
Se ti va e se hai tempo mi spieghi come si applica AVRDUDE in questo caso? ciao Grazie

Ciao

david_fiucci


non vi passa l'idea che ci potrebbero essere dei danni alla scheda?

Questo è un problema che a distanza non è possibile diagnosticare. Ma se hai usato la scheda non rispettandone i suoi limiti elettronici riguardo ai pin, la cosa è probabile. Molti pensano che le schede siano indistruttibili ma basta fare un corto che un pin salta e te lo sei giocato. Io ora non so a che livello di conoscenza della materia elettronica sei, ma un errore è umano commetterlo e lo può commettere anche uno con discreta padronanza.
[/quote]
Leo forse ti è sfuggito, ma avevo detto che io stesso ho causato un corto inavvertitamente con il braccialetto, maledetto, sui fili scoperti della motherboard dell'amplificatore. C'erano dei fili con il ricciolo che ci faccio per prelevare i segnali con il tester nei vari punti del circuito.
E inavvertitamente devo averne fatti toccare due che non si piacevano.
Il sistema si era spento e riacceso da solo, e lo sketch funzionava, ma i segnali PWM no. Poi ho cancellato tutto con i tentativi di ripristinare la scheda.
Ciao grazie

david_fiucci



Io carico lo sketch "ArduinoISP.ino" nell'IDE e dopo scelgo Strumenti/Tipo di arduino/ "Mega 2560
dopo seleziono Strumenti/Programmatore/"Arduino as ISP"
quindi Strumenti/"Scrivi il bootloader"

Lo sketch ArduinoISP lo devi caricare sulla scheda che usi per programmare l'altra.
Quindi, se non ho capito male tu hai una UNO anche, giusto?

Bene, collega questa al PC, apri l'IDE, apri lo sketch ArduinoISP, poi scegli Arduino UNO come scheda e clicca sull'icona di upload. Lo sketch va sulla UNO. A questo punto, scollega la UNO. Poi fai i collegamenti con la MEGA, e e rifai i passi citati.

Aspetta: scollego la UNO? e che collegamenti faccio con MEGA? scusa non ho capito.

david_fiucci


David scusa, ho esagerato, e Michele aveva gia' sottolineato che non sarebbe bastata la faccina  :)
Per il resto la mia offerta, gratuita, del punto 2 resta valida

Peace & Love ;)

leo72


Aspetta: scollego la UNO? e che collegamenti faccio con MEGA? scusa non ho capito.

Scolleghi la UNO dal computer, per fare i collegamenti in sicurezza, evitando altri corti  :P
Poi una volta connessi i pin per la programmazione ISP, riagganci la UNO al computer. La MEGA deve essere alimentata tramite il suo cavetto USB e la massa in comune fra UNO e MEGA (basta un jumperino). Non dovrebbe essere necessario, visto che entrambe le schede prendono l'alimentazione dalla stessa fonte (il PC) per cui dovrebbero avere anche lo stesso riferimento di massa, ma non si sa mai: abbondare non costa nulla.

menniti

Leo nelle connessioni ho previsto due cavetti jumper anche per 5V e GD, così che la MEGA venga alimentata dalla UNO, direi di evitare il collegamento della MEGA al PC, via USB, solo per alimentarla.

David, ok, ci abbiamo provato in ogni modo, tu avevi già fatto tutto ma per scrupolo hai voluto rifarlo, diciamo, sotto dettatura, e siamo nelle stesse condizioni. Devo aver scritto delle righe di AVRDUDE per fare dei test con la MEGA, all'epoca delle prove con Pablos. Ora sono alle prese con la stesura di una pubblicazione scientifica (altro che "stacco" fino a domenica ]:D). In serata, max domattina, studierò una riga di comando che ci servirà per avere certezza che la scheda sia guasta o meno.
Manuale "Arduino e le tecniche di programmazione dei microcontrollori ATMEL"
http://www.michelemenniti.it/manuale_di_programmazione.html
http://www.michelemenniti.it/offerta.html
Articoli ElettronicaIN
http://www.michelemenniti.it/elettronica_in.html

Go Up