Questa configurazione e' un po' costosa ed occupa la porta USB della YUN. Usando un modulo GPS con una seriale TTL con una connessiona a soli tre fili (VCC, GND e GPS-Tx collegato ad Arduino, il cavo GPS-Rx non e' necessaria perche' la comunicazione e' a senso unico) si puo' ottenere lo stesso risultato risparmiando un po'
Per prima cosa si deve configuare la YUN modificando il file /etc/inittab e commentando la terza riga (quella che inizia con ttyATH0...) e si riavvia il dispositivo
si collega poi il pin TX del GPS al pin D8 dell'Arduino e si carica lo sketch che semplicemente prende i dati dalla SoftSeriale e li spedisce sulla Serial1 (che e' quella di collegamento tra Linino ed Arduino)
-------------------------------------------------------
#include <SoftwareSerial.h>
SoftwareSerial mySerial(8, 3); // RX, TX
void setup() {
delay(150000); //questo serve a non inviare dati sulla seriale in fase di boot altrimenti si blocca tutto
Serial1.begin(115200);
Serial.begin(115200);
mySerial.begin(9600);
}
void loop() {
if (mySerial.available()) {
char c = mySerial.read();
Serial1.write(c);
Serial.write(c);
}
}
---------------------------------------------------
A questo punto doveva essere tutto facile e si dovevano solo replicare i passi del precedente post...in realta', nonostante fosse possibile visualizzare il flusso seriale mediante minicom, il demone di gpsd non riusciva ad agganciarlo. Dopo varie prove ho messo il Serial1 a 115200 e installato stty con il comando
opkg update
opkg update
opkg install coreutils-stty
a questo punto ho forzato il riconoscimento della velocita' della seriale con stty
a questo punto ho forzato il riconoscimento della velocita' della seriale con stty