Newsgroup: it.hobby.elettronica.digitale
Titolo: taroccamento :-) gps

ciao a tutti,
sto lavorando ad un progettino che avevo in mente da tempo: trattasi di
un data-logger gps, il cui scopo dovrebbe essere acquisire le
coordinate del dispositivo durante un viaggio (in bicicletta) per poi
scaricarle su pc e visualizzarle su mappa.
Allo scopo sto cercando di riciclare un gps che purtroppo ha solo
l'interfaccia usb (simile a questo:
http://gpsnavisystem.com/usbprod.htm
 - il produttore è lo stesso ma
sul sito il mio modello non c'è più).
L'oggetto finale dovrebbe essere basato su un microcontrollore. Il
chipset gps è collegato ad un serial-to-usb bridge (Prolific PL2303);
collegandomi al pin RX del PL2303 rilevo correttamente la forma d'onda
che corrisponde allo stream seriale dei byte che rappresentano le
stringhe NMEA, per cui pensavo che agganciandomi a questo pin,
collegandolo all'ingresso UART del microcontrollore, avrei potuto
acquisire l'NMEA e poi processare il tutto dal micro.
La cosa funziona perfettamente se il gps è collegato al pc tramite
l'usb. Ho provato a collegarlo ad un pc sul quale non è presente il
driver per il convertitore usb-seriale e lo stream di dati NMEA è
sparito, nonostante l'oggetto sia alimentato (c'è un led che si
accende). Sembra quindi che se non trova un host usb che gli dice
"qualcosa", lui non parla più. Ovviamente questo complica enormemente
la cosa, perchè il mio micro dovrebbe "parlare" sulla linea usb,
invece che solo "ascoltare" la seriale. E per "parlare" bisogna sapere
cosa "dire" :-)
(agganciarmi ai dati seriali prelevandoli da un pin del convertitore
usb/seriale serviva proprio per evitare di preoccuparmi dell'usb).
La mia domanda è: il chipset gps non fornisce lo stream NMEA in modo
continuo, quando viene alimentato ? cosa gli importa se il convertitore
usb-seriale non ha trovato il suo driver ? Non dovrebbe andare avanti
per i fatti suoi ? che gli frega dell'usb, che potrebbe anche non
esserci ?
Il chipset gps si chiama EverMore BBP1202. La documentazione non si
può scaricare a meno di non registrarsi, contattare il distributore
locale ecc ecc. Inoltre "restricted information is not open for end
users". 
Avete qualche idea interessante in merito ?
grazie
Fabio(lo)

 usb/seriale serviva proprio per evitare di preoccuparmi dell'usb).
Secondo me ci sono due possibilità:
1) Il modulo (e il convertitore seriale-USB) dispone anche dei segnali
"accessori" della seriale (RTS e CTS) e quindi prima di spedire dati, si
aspetta che il CTS si attivi.
2) Il modulo al power-up non spedisce le stringhe NMEA, ma aspetta che
l'host gli spedisca i comandi di inizializzazione appropriati.
Ritengo più probabile la prima delle due (tutti i moduli GPS che ho visto
al power-up inviano i comandi NMEA "fondamentali" senza il bisogno di
spedirgli qualcosa). Però trattandosi di un modulo messo dentro a un
prodotto commerciale, non si può mai sapere.
-- 
asd

Io dico che è da valutare l'ipotesi di dalai lamah, cmq siccome tutte le 
comunicazioni passano per quel convertitore USB<->seriale, anche se 
fossero necessari dei comandi di inizializzazione basterebbe con un po' 
di pazienza fare un dump dei comandi inviati dal pc e poi fare in modo 
da farli spedire al micro (inviare e ricevere dati sulla seriale occupa 
più o meno le stesse risorse, non dovrebbe essere un problema, anzi).
...:::Zmaster:::...

spedirgli qualcosa). 
ragionandoci su ho dedotto che sia questa la cosa più probabile. Anche
io ho visto sempre parlare un gps senza bisogno di altro, ma l'ho
sempre visto a livello di sistema (gps seriale collegato a un pc via
rs232), non di chipset. Può anche essere che un modulo gps completo
abbia qualcosa che inizializza il chipset, il quale da quel momento in
poi inizia a parlare liberamente. Se non lo faccio lui resta muto.
E' possibile che il chip gps invii le stringhe NMEA solo se
sollecitato periodicamente da un trigger ?
Aggiungo che nella situazione in cui il gps è collegato al pc senza
driver per l'usb, all'accensione il gps invia per qualche istante un
breve flusso seriale (qualche carattere, ma non ho esaminato
attentamente), che sparisce subito. Sembra che sia l'inizio di qualche
handshake che non viene completato dal PL2303 in quanto mancante di
"qualcosa" dal pc, e per questo la trasmissione non va più avanti.
Domandone finale: se proprio non riesco a far funzionare questo
oggetto, qualcuno conosce un modulo gps embedded che abbia solo
l'output seriale nudo e crudo ? devo fare un mutuo per comprarlo o è
alla portata dell'hobbysta ?
grazie
Fabio(lo)

mi son registrato ..vediamo che dicono.
Io non riesco neanche a registrarmi. Il link corrispondente a "sign
up" non va da nessuna parte, nel senso che mi rimane la stessa pagina
in cui mi trovo e non succede niente.
Fabio(lo)

 l'output seriale nudo e crudo ?
Come dicevo, praticamente tutti si comportano così. Se le prestazioni non
sono per te una grossa preoccupazione, direi che i Trimble a basso costo
(che moltissimi produttori - specialmente orientali, vedi Royaltek -
vendono rimarchiati) vadano bene.
Di negozi che vendono ai privati non ne conosco moltissimi, questo è il
primo che mi viene in mente:
http://www.elettroshop.com/
Però ho visto che non hanno molti moduli GPS, e i prezzi mi sembrano
altini. Se puoi spendere 80 euro, tanto vale comprare quelli della uBlox
sul loro shop online:
http://www.u-blox.com/
Questi li ho usati personalmente, e sono eccellenti.
-- 
asd