Données GPS incohérentes

bonjour
j ai un petit soucis avec mes données GPS
par moment les données sont totalement incohérentes

Date	 Time	 Latitude	 Longitude	 Altitude	 Vitesse
					
0/0	17:55:24	43.150242	6.383333	79.60	129862.24
0/0	17:55:24	43.150242	6.383333	79.60	129862.24
0/0	17:55:24	43.150242	6.383333	79.60	129862.24

j utilise la librairie <TinyGPS++.h> et le code suivant

      File dataFile = SD.open("rundata.csv", FILE_WRITE);
  if (dataFile) {
    
    dataFile.print(gps.date.day());
    dataFile.print("/");   
    dataFile.print(gps.date.month());
    dataFile.print(";");    
    dataFile.print(gps.time.hour());
    dataFile.print(":");  
    dataFile.print(gps.time.minute());
    dataFile.print(":");  
    dataFile.print(gps.time.second()); 
    dataFile.print(";");
    dataFile.print(gps.location.lat(),6);
    dataFile.print(";");   
    dataFile.print(gps.location.lng(),6);  
    dataFile.print(";");   
    dataFile.print(gps.altitude.meters()); 
    dataFile.print(";");  
    dataFile.print(gps.speed.kmph());
    dataFile.close();
    
  }

à 90% du temps tout marche mais des jours c est n importe quoi. des idées ?

Je n'ai pas de module GPS, donc je n'ai jamais pu tester, mais l'exemple ici utilise la méthode isValid :

  if (gps.date.isValid())
  {
    Serial.print(gps.date.month());
    Serial.print(F("/"));
    Serial.print(gps.date.day());
    Serial.print(F("/"));
    Serial.print(gps.date.year());
  }
  else
  {
    Serial.print(F("INVALID"));
  }

Peut-être faut-il s'en inspirer ?

validez que vous avez eu un fix correct avant d'écrire le fichier

if (gps.location.isValid() && gps.date.isValid()) {
   ...
}

vous pouvez aussi appeller isUpdated() sur un des élément (location, date, time, speed, course, altitude, satellites, hdop) pour savoir s'il a été mis à jour depuis le dernier fix. (il a pu être mis à jour mais rester au même endroit)