il problema è che adesso funziona, domani devo resettare arduino se no non va.
questo è lo sketch ( ho levato la prima parte che serve piu che altro per far funzionare la scheda wifi).
torre: arduino uno->wifi shield-> fastrax 501 (su proto shield)
Udp.begin(localPort);
mySerial.begin(9600);
}
void loop() {
int packetSize = Udp.parsePacket();
if (packetSize )
{
Udp.read(packetBuffer, UDP_TX_PACKET_MAX_SIZE);
ss = packetBuffer;
if (ss == "j") gpscamper();
}
}
void gpscamper()
{
bool newData = false;
for (unsigned long start = millis(); millis() - start < 2000;)
{
while (mySerial.available())
{
char c = mySerial.read();
if (gps.encode(c))
newData = true;
// Serial.print (c);
}
}
if (newData)
{
float flat, flon;
gps.f_get_position(&flat, &flon );
Udp.beginPacket( Udp.remoteIP(), Udp.remotePort());
Udp.print(flat, 6);
Udp.print(" ");
Udp.print (flon, 6);
Udp.endPacket();
// Serial.print (flat,6);
}
}
il resto dell'impianto è un pò complesso, ma penso non c'entri nulla.
nelll'insieme con il router wifi con chiavetta c'è un altro arduino che mi manda altro tipo di valori,
e quando chiedo me li manda senza dover resettare.
tornando allo sketch, quando mi serve la posizione gps mando una "j" ogni 5 secondi in modo di avere una specie di real time.
quale potrebbe essere il problema?
ho pensato che forse è che il modulo gps andando 24 ore su 24 continui a mandare dati ad arduino (anche se in realtà arduino non me li manda perchè non li richiedo)
Thanks