Go Down

Topic: Arduino e TV (Read 14639 times) previous topic - next topic

leo72

Mah... mi sorge un dubbio che il firmware sia tutto il software senza distinzione con il bootloader. Mi pare strano che siano ben 40 KB quando il 2009 ce l'ha di 1,5 e l'Uno di 0,5 kB.

Boh... non so che dirti. Prova e fammi sapere, al max ripulisci l'Atmega rimettendoci il bootloader di Arduino.

Francesco_MIRM

#106
Jan 18, 2011, 02:42 am Last Edit: Jan 18, 2011, 03:00 am by Francy Reason: 1
Stasera non ho risolto niente i programmi non vanno anche settando 57600 bps, in effetti dovrei provare a flashare il 2009, questo ATmega ha precaricato il bootloader UNO, secondo te fa differenza?

Se il .hex è già il bootloader forse sbaglio proprio approccio, non so..

Domani provo avrdude e vedo un po', ma è parecchio incasinato per me, ci sono una sfilza di programmer, se riesco a capire quali vanno usati per 2009 e UNO, posso provarli entrambi.

p.s. dopo aver smoccolato un po' Arduino si è impallato e non mi faceva caricare sketch, segno che qualche effetto sull'ATmega c'è stato, dopo qualche reset e autoformat si è ripreso da solo.

leo72

Il bootloader di Arduino (che sia quello del 2009 o dell'Uno fa lo stesso) non va bene.
Rileggendo tutta la documentazione sul TellyMate, mi par di capire che l'hex contiene tutto, sia il bootloader che il firmware.
Andando nel file .bat del 328 c'è una sequenza di codici da usare per avrdude:
Code: [Select]
avrdude -B 5 -p atmega328p -c usbasp -U lfuse:w:0xff:m -U hfuse:w:0xd9:m -U efuse:w:0x07:m -qq

Gli ultimi 3 sono le impostazioni per i fuse. Andando qui:
http://www.engbedded.com/fusecalc/
e selezionando il 328, in fondo alla pagina metti quei 3 valori e noti che vengono modificate le impostazioni dei fuse secondo uno schema preciso che prevede un bootloader di 2 kB, quando quello dell'Arduino Uno è di 512 byte.

leo72

Sì, ti confermo che quel file .hex contiene tutto. Ho fatto il make dei sorgenti per l'Atmega328 ed ho ottenuto un file IDENTICO byte-per-byte (verificato con diff) a quello contenuto nella cartella Firmware.

Quindi devi flashare quello con avrdude direttamente, usando i parametri contenuti nel file .bat.

Francesco_MIRM

Ok, allora provo a mettere questi valori:
Quote
avrdude -B 5 -p atmega328p -c usbasp -U lfuse:w:0xff:m -U hfuse:w:0xd9:m -U efuse:w:0x07:m -qq

Mi dici dove posso scaricare avrdude, così sono sicuro di usare la versione giusta?

leo72

Io ho Linux per cui era tra le dipendenze richieste per usare l'IDE di Arduino. Su Windows non so dove lo puoi trovare, o se è già compreso nell'IDE anche lì.

Francesco_MIRM

Non mi sono arreso sto tentando, ma non mi ci raccapezzo:
errore
avrdude.exe: stk500_getsync(): not in sync: resp=0x00

Ho provato ArduUP, avrdude, winavr, XLoader, ARP Arduino Uploader.

Tutte le prove le sto facendo con Arduino 2009 con sopra ATmega bootloader UNO, dovrei comprare un programmatore??

leo72

#112
Jan 19, 2011, 10:41 am Last Edit: Jan 19, 2011, 10:41 am by leo72 Reason: 1
Non vede l'Arduino come programmatore, secondo me....

Io ho preso l'USBtiny da Adafruit:
http://www.adafruit.com/index.php?main_page=product_info&cPath=16&products_id=46
Il prezzo è buono ma i tempi di consegna sono biblici! Ordinato il 31/12, ancora non è arrivato...  :-/

leo72

Ad infamarli poi si svegliano  ;D
Mi è arrivato il programmatore proprio ora: peccato che tra un po' debba andare a lavorare, non so ce la farò a montarlo  ::)

garinus

arduino-0022\hardware\tools\avr\bin\avrdude.exe

Francesco_MIRM

leo ti stai incastrando? :)

leo72

Sto aspettando che mi arrivi il quarzo da 16 MHz... mannaggia, credevo di averlo ed invece no  ::)

Più che giocare a Tetris o a Space Invaders, adesso non posso fare  ;)

leo72

Ragazzi, ho nominato il quarzo e stamani me l'hanno consegnato (insieme ad altre cosucce)  ;)

Aggiornamento:
stasera ho provato a replicare il TellyMate su una breadboard. Risultato: NIENTE.
Non so se ho sbagliato qualche collegamento, ho già ricontrollato 2 volte ma proprio non funziona.
Ho caricato sull'Atmega "solitario" il firmware del Tellymate, ho replicato lo schema presente qui ed ho collegato il "finto" Tellymate alla TV ed all'Arduino programmato con lo sketch Life ma nulla.
La TV manco vede il segnale, e l'Arduino, a parte il led ON, non dà segni di vita.

Se invece collego l'Arduino all'alimentazione senza il "finto" Tellymate collegato, dopo qualche istante il led TX inizia a lampeggiare. Se collego l'Arduino al PC e apro un terminale seriale, vedo infatti che lo sketch gira correttamente ed invia i comandi video al terminale.

Ho alimentato il Tellymate da Arduino, non so se cambia qualcosa con un'alimentazione esterna. Riproverò...

leo72

Rettifico: se collego l'Arduino con l'alimentatore esterno, non si accende nessun led di TX mentre se collego l'Arduino al cavo USB si accende il led TX.

Però il "finto" Tellymate non dà segni di vita: nulla nulla... boh...
E questo comportamento anomale dell'Arduino, come se si "accorgesse" di non essere collegato ad dispositivo seriale.

leo72

Nuovo aggiornamento.
Ho risolto il problema legato al "finto" Tellymate: leggendo un post del suo creatore sul forum internaz. ho scoperto che il chip deve essere cancellato completamente perché il firmware non può stare fianco a fianco con il bootloader.

Adesso continuo con gli esperimenti... almeno finché non mi cala la palebra...  :P

Go Up