Non riesco a programmare ATmega644P

Questa mattina sveglia all'alba (anzi, prima!) e smanettamento.

Ho provato diverse configurazioni di resistenze e nulla.
La LeoVersion, con R da 10K + cond da 100pF su RX, e nulla.
Il C 100nF in serie al Reset e nulla.
Il circuito anti-reset di Michele, e nulla.

Ho scaricato e provato il Bootloader di Leo, con versione 1.0.2 (anziche la solita 0023) e la situazione peggiora. Cioè, carico il Bootloader, MA non riesco a caricare il Blink nemmeno una prima volta.

Rimetto il vecchio Bootloader Sanguino, carico una prima volta il Blink, e funziona.
SENZA MUOVERE UN FILO, e trattenendo il respiro, cambio delay al blink, riuppo e... niente. Errore solito. :frowning:

Ho provato a caricare via ISP (prova non ancora fatta) a vel di 115200, e funziona tutto perfetto. Carica Sketch in 2-3 secondi. Provato con 5-6 sketch diversi, direi che va.

Alla fine fanc... chissenefrega. Il progetto con Display GLCD lo carico via ISP...

...però rosico! :~

Questa mattina sveglia all'alba (anzi, prima!) e smanettamento.

E dalle mie parti anche con la neve...
Via ISP funziona tutto a dovere ,visto che hai il problema sulla seriale ma nel tuo caso non è di vitale importanza in ISP risolvi....

...però rosico!

Se hai in lab modo di vedere il comportamento dei segnali puoi sempre vedere se risolvi :slight_smile:
Ciao,buon lavoro.

Ora ho un pò di tempo, e almeno fino all'una, faccio ancora qualche 10-100 prove...

BaBBuino:
Ora ho un pò di tempo, e almeno fino all'una, faccio ancora qualche 10-100 prove...

Attendiamo :wink:

Scusa Babbuino.. forse una cazzata... ma hai provato mettere un led nel pin 2 del chip per capire cosa succede ?
Con il bootloader di leo.. si vede quando il DTR manda il segnale di reset e il bootloader viene caricato..
Può essere utile per capire se il problema sta nel reset o altrove.

Giusto! Adesso lo metto il LED di monitor.

Cmq sposo la tesi di Michele: C'è qualche problema di Timing con il bootloader e la seriale.

Si ok.. questo ormai è assodato.. però il 644 lo dovresti comunque riuscire a programmare via seriale anche una seconda o terza volta..
A me su breadboard funziona.. a tonid anche e anche a Michele e Leo... quindi, anche se non in modo ottimo e senza C e R , dovresti riuscire...

Ora mi incazzo... Non è possibile un'affare del genere! Sto smontando tutto e riparto da zero...

BaBBuino:
Ora mi incazzo... Non è possibile un'affare del genere! Sto smontando tutto e riparto da zero...

lol ...shhhh non saranno tollerate ste frasi, lo sai che abbiamo un nuovo imperatore ahahahahah

Uffa... :sweat_smile:

Cmq, Babbuino, ascolta. Il problema non è unico, ci sono diversi fatto che si sommano e interferiscono con la programmazione. Si va dalle tempistiche dell'Optiboot alla vicinanza del pin RX0 al pin XTAL1 alle capacità parassite delle piste della breadboard.
Quest'ultima poi credo che influenzi molto. Ieri stavo lavorando ad un progettino che prevede un 328 in standalone che pilota altra roba, ho voluto provare a caricarci sopra il bootloader e poi a flashare lo sketch usando l'Arduino UNO R1 come programmatore ISP. Risultato? Non funziona! Da che ne deduco che la mia breadboard faccia schifo, perché tutti riescono a caricare lo sketch via bootloader su un 328 standalone. POtrebbe darsi che riversando tutto su una scheda risolva. Ne parlavo con Michele, ed era nata l'idea di usare anche una 1000fori, un qualcosa insomma di meno sgangherato di una breadboard stra-usata.

Zio cane Leo, ho capito e ti dò ragione, ma ora sto usando questa:

fili cortissimi tra Arduino e board. Come è possibile?

Se uso un quarzo più basso durante la programmazione, magari da 8 Mhz, secondo te può avere senso? O sballo tutto per via che nel file di definizione ci sono impostati i soliti 16 Mhz?

Non sballi nulla. La definizione del quarzo nella board virtuale serve solo a regolare le impostazioni dei timer.
Io ho usato un risonatore ceramico a 12 MHz per i primi test con il 1284P.

E se per assurdo provi con una breadboard ? ]:smiley:

Ho un quarzo da 8Mhz, adesso provo con quello.

Leo, ti sarei grato se mi riscrivi qua sotto la sequenza completa di tutte le prove possibili ed impossibili da fare, perchè ho perso un pò il filo...

Ho tutto smontato, con la Bord "bella" poggiata sopra una Breadboard comune, e sono pronto ad usarla come ponte per i passaggi resistenze-condensatori vari.

superzaffo:
E se per assurdo provi con una breadboard ? ]:smiley:

no, non coglioneggiare, gli fai perdere solo tempo! Bab però non ha scritto se ha fatto le varie prove col C in serie al reset e le varie opzioni R o RC, ha impostato il low fuse su F7? ne parlavamo ieri sera con Leo.
E non biasimatelo se perde la pazienza, vi assicuro che l'ultima volta mi era venuta voglia di vedere che effetto faceva un 1284P sotto l'effetto di una martellata, dopo averlo poggiato delicatamente sulla mia nuovissima morsa (sto allestendo un bel banco meccanico per lavori hard :D)
Bab, il problema di quella scheda, vista la problematica delle "distanze", potebbe essere proprio quel bellissimo ZIF, come il quarzo su "zoccolo", ecc.; io penso che la prova su millefori possa essere estremamente indicativa, ma comunque ormai nessuno mi toglie dalla testa che il problema sia esclusivamente di bootloader. Io penso che tutti coloro che si sono cimentati siano partiti dall'optiboot o dalla versione precedente e si siano preoccupati esclusivamente della funzionalità del micro, programandolo via ISP, che infatti è perfetta qualunque sia il bl usato, il resto è "culo" (pablos: fatti i zz tuoi :grin:) e purtroppo ho la sensazione di aver trovato qualcuno che ne ha ancora meno di me, non lo pensavo possibile. :frowning:

@ Bab: lascia perdere il quarzo da 8MHz, se metti la tua scheda su breadboard davvero non lo programmi nemmeno con un bazooka!

Io ho provato 3 configurazioni:

  1. senza nulla
  2. con C da 100pF fra RX0 e GND e R da 10K in serie al segnale che va al pin RX0
  3. con R da 175K in serie al segnale che va al pin RX0 senza C aggiuntivo

Come bootloader prova anche quello che ho allegato nelle ultime pagine dell'altro thread sulla programmazione dei 644. E' basato sul bootloader stk500 (quello usato dalla vecchia 2009) e, nonostante funzioni a 57600 bps, a me ha funzionato meglio dell'Optiboot 4.5

svariate volte hai parlato di 100pF NON nF, un errore o diverse combinazioni?

Grazie Michele e grazie Leo per la pazienza.

MA UNA DOMANDA!!! In condensatorino dopo la R da 10.000 Ohm per fare il filtro anti-rompiscatole-1284, non era da 100pF??? Adesso leggo che è da 100nF...

Ecco, mi sembrava!!

Meno male che ci sei tu a vegliare su di me :sweat_smile:
Ora correggo.