Problema con il Max7456 HobbyTronics

Ciao a tutti, mi è arrivata da pochi giorni questa scheda, che naturalmente non ne vuole sapere di funzionare. Ho provato con tutti gli sketch disponibili e molte librerie, ma non compare niente a schermo. I pin sono collegati correttamente. Il video, quando è alimentato, lo "attraversa", (compare sul monitor), quando non è alimentato non passa. Ho provato a leggere e scrivere la eprom dei caratteri, e qui in lettura succede una cosa strana, se tocco e muovo i cavi legge tutti 1, altrimenti tutti 0, per questo credevo che ci fosse una saldatura fredda, ma succede anche se sconnetto i cavi e li tocco con le dita! Grazie

Ciao,
essendo il tuo primo post, ti chiederei di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione) e di leggere con attenzione il REGOLAMENTO ...

... poi, se non metti i link ai prodotti che nomini ... dubito avrai risposte velocemente ... perché già il tempo è poco, se poi uno deve andarsi a cercare i prodotti di cui parli ... ::slight_smile:

Guglielmo

Chiedo venia, ho letto centinaia di volte la richiesta di presentazione ed al momento di richiedere aiuto non ci ho proprio pensato.
Il prodotto in questione è questo:
http://www.hobbytronics.co.uk/max7456-osd-breakout
Ho provato prima con il codice che si trova nel sito del venditore,
http://www.hobbytronics.co.uk/download/MAX7456_OSDTEST.ino
che non ha fatto comparire niente sullo schermo, a parte il video della telecamera.
Ho letto su vari forum le problematiche del max7456 ed ho quindi cercato di caricare dei font nuovi, con il software del minimosd, arducam e aeroquad, tutti dicevano che l'operazione aveva avuto successo, ma a video non comparivano scritte.
Grazie

Puoi mostrare lo schema dei collegamenti che hai fatto e, se possibile anche (... e NON oppure :wink:) una foto (nitida) ?

Guglielmo

Mando lo schema delle connessioni, più tardi la foto. Grazie.

Premetto che non conosco il chip, però ... le connessioni, se così realizzate, mi sembrano corrette (... almeno guardando anche il datasheet) i fili sono saldati bene ? Nessun falso contatto ?

Guglielmo

I fili sono proprio come sono disegnati, cioè infilati nella breadbord, e, siccome sono molto sottili, li ho "inspessiti" con dei capicorda! Mando una foto al più presto. Se avessi sbagliato le connessioni alla prima prova, il chip potrebbe essersi bruciato?

vinsub:
I fili sono proprio come sono disegnati, cioè infilati nella breadbord, e, siccome sono molto sottili, li ho "inspessiti" con dei capicorda!

... ma sulla breakout board del MAX7456 non li hai saldati ? ? ? :o ... perché quei collegamenti NON si possono fare volanti semplicemente inserendo i capicorda nei buchi ... il contatto è del tutto inaffidabile.

vinsub:
Se avessi sbagliato le connessioni alla prima prova, il chip potrebbe essersi bruciato?

... dipende ... quali collegamenti e quale chip (il MAX o l'ATmega di Arduino) ?

Guglielmo

Potrei avere sbagliato DIN e DOUT, invertendoli! La scheda del max7456 ha il connettore come in foto:
http://www.hobbytronics.co.uk/max7456-osd-breakout
:o

Ah ... ok, quindi la porta SPI è sul connettore, mentre i fori sono per la parte video ...

Controlla comunque che dove li hai inseriti nella breadboard facciano bene contatto ... cosa che spesso è causa di problemi.

Mmmm ... no, non credo che invertendo quei due pin puoi aver fatto danni ... ::slight_smile:

Guglielmo

Magari non c'entra nulla ma ... ricordo di avere letto su un'altro sito di schedine breakout per il MAX7456 arrivate rotte gia da nuove ... ed altre arrivate con la tabella dei caratteri vuota (per cui ovviamente non c'era alcuna uscita sovrapposta al video, essendo tutte le celle dei caratteri vuote, quindi trasparenti) ... si trattava comunque di un post vecchio piu di due anni, e francamente non ricordo se il venditore era quello o un'altro ... pero' magari stai diventando matto per un problema simile ... purtroppo l'unico modo per saperlo e' provarne un'altro ...

Ciao Etemenanki, sto cercando di fare un osd per un rov, come te credo! Ho provato a scrivere i font, ma dopo avere ricevuto il messaggio di operazione riuscita dai vari software, non compare niente lo stesso! Sentiti i venditori, questi sostengono che le loro schede sono testate prima della spedizione, non vorrei spendere ancora 25-30 euro per provarne una nuova!

Ps:
Risposta venditore:
Hi Vincenzo

You have DIN and DOUT swapped.

DIN on the MAX7456 board should go to pin 11 (not pin 12), and DOUT should go to pin 11.

vinsub:
DIN on the MAX7456 board should go to pin 11 (not pin 12), and DOUT should go to pin 11.

... mi sa che c'ha ragione ... m'era sfuggito anche a me ... :-* :-* :-*

Il pin 11 è il MOSI (Master Output Slave Input) e quindi va collegato al DIN mentre il 12 è il MISO (Master Input Slave Output) e quindi va collegato al DOUT ... ::slight_smile:

Guglielmo

Ok, provo ad invertire! Ma lui scrive che vanno collegati entrambi al pin 11, sbaglio?

vinsub:
Ok, provo ad invertire! Ma lui scrive che vanno collegati entrambi al pin 11, sbaglio?

:smiley: :smiley: :smiley: ... no, non sbagli, ha scritto male anche lui ... se 'sti cavolo di pin li avessero chiamati TX e RX si sarebbe fatta molto meno confusione :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes:

Guglielmo

Funziona! Erano errati mosi e miso! Ma, dato che tra le lettere faceva comparire dei trattini, ho caricato dei font nuovi ed ora l'helloworld fa comparire cose senza senso! :confused:
Qualcuno potrebbe linkare una libreria con relativo file mcm da caricare? Ne ho provati millemilioni!

Vi aggiorno, ho testato una libreria per il max7456 che funziona con il proprio file da caricare sulla eeprom.
http://www.homebuiltrovs.com/rovforum/viewtopic.php?f=18&t=1116&start=40
Una cosa non ho capito, (oltre a molte altre!), l'OSD.print(F(".........."))!
La F serve per indicare la posizione del carattere nell'array dei fonts di default?

NO, la macro F() serve a risparmiare SRAM ... indica al compilatore che la stringa è una costante e che può andarla a prendere direttamente dalla Flash senza metterla in SRAM.

E' brevemente accennata nella descrizione della Serial.print() e trovi più dettagli QUI :wink:

Guglielmo

Grazie Guglielmo, quello che vorrei sapere è anche questo:
nel codice all'interno della cartella "Bottonside_Code_Version_25.ino" in varie occasioni c'è OSD.print(F("\xB5"));
o altro tra le virgolette, naturalmente "\xB5" indica un carattere, tipo il pallino per indicare i gradi centigradi o altro presente nella tabella dei fonts, ho provato a "printare" seguendo una sequenza, tipo xB6, ..., xB9,..., xD9, eccetera, ed effettivamente a video appaiono i caratteri "strani" memorizzati dallo scrittore del programma; se io facessi una mia tabella di fonts da caricare che schema dovrei seguire per richiamare gli stessi a video?
Scusate ma sono uno sperimentatore ignorante!

... non conosco quel display, non conosco la libreria che stai usando e non conosco come gestisce i font, ma, a naso, immagino che quei valori corrispondano a qualche posizione nell'array del font in uso dove è disegnato il carattere ... ::slight_smile:

Quindi, se tu cambi in una certa posizione (es. xD9) il disegno del carattere, dovrai poi usare le stessa tecnica che hai qui sopra decritto per richiamarlo.

Guglielmo