kopia lustrzana https://github.com/dl9rdz/rdz_ttgo_sonde
don't send NaN in LiveMap JSON
rodzic
0d03b2abae
commit
4cc12f3f74
|
@ -546,24 +546,23 @@ const char *createLiveJson() {
|
||||||
strcpy(ptr, "{");
|
strcpy(ptr, "{");
|
||||||
|
|
||||||
SondeInfo *s = &sonde.sondeList[sonde.currentSonde];
|
SondeInfo *s = &sonde.sondeList[sonde.currentSonde];
|
||||||
sprintf(ptr + strlen(ptr), "\"sonde\": {\"rssi\": %d, \"vframe\": %d, \"time\": %d,\"id\": \"%s\", \"freq\": %3.3f, \"type\": \"%s\","
|
sprintf(ptr + strlen(ptr), "\"sonde\": {\"rssi\": %d, \"vframe\": %d, \"time\": %d,\"id\": \"%s\", \"freq\": %3.3f, \"type\": \"%s\"",
|
||||||
"\"lat\": %.6f, \"lon\": %.6f, \"alt\": %.0f, \"speed\": %.1f, \"dir\": %.0f, \"climb\": %.1f, \"launchsite\": \"%s\", \"res\": %d }",
|
s->rssi, s->d.vframe, s->d.time, s->d.id, s->freq, sondeTypeStr[s->type]);
|
||||||
s->rssi, s->d.vframe, s->d.time, s->d.id, s->freq, sondeTypeStr[s->type], s->d.lat, s->d.lon, s->d.alt, s->d.hs, s->d.dir, s->d.vs, s->launchsite, s->rxStat[0]);
|
|
||||||
|
if ( !isnan(s->d.lat) && !isnan(s->d.lon) )
|
||||||
|
sprintf(ptr + strlen(ptr), ", \"lat\": %.6f, \"lon\": %.6f", s->d.lat, s->d.lon);
|
||||||
|
if ( !isnan(s->d.alt) )
|
||||||
|
sprintf(ptr + strlen(ptr), ", \"alt\": %.0f", s->d.alt);
|
||||||
|
if ( !isnan(s->d.dir) )
|
||||||
|
sprintf(ptr + strlen(ptr), ", \"dir\": %.0f", s->d.dir);
|
||||||
|
if ( !isnan(s->d.vs) )
|
||||||
|
sprintf(ptr + strlen(ptr), ", \"climb\": %.1f", s->d.vs);
|
||||||
|
if ( !isnan(s->d.hs) )
|
||||||
|
sprintf(ptr + strlen(ptr), ", \"speed\": %.1f", s->d.hs);
|
||||||
|
|
||||||
|
sprintf(ptr + strlen(ptr), ", \"launchsite\": \"%s\", \"res\": %d }", s->launchsite, s->rxStat[0]);
|
||||||
|
|
||||||
if (gpsPos.valid) {
|
if (gpsPos.valid) {
|
||||||
#if 0
|
|
||||||
long sat = nmea.getNumSatellites();
|
|
||||||
long speed = nmea.getSpeed();
|
|
||||||
long dir = nmea.getCourse();
|
|
||||||
long lat = nmea.getLatitude();
|
|
||||||
long lon = nmea.getLongitude();
|
|
||||||
long alt = -1;
|
|
||||||
/*bool b = */nmea.getAltitude(alt);
|
|
||||||
bool valid = nmea.isValid();
|
|
||||||
uint8_t hdop = nmea.getHDOP();
|
|
||||||
//if (valid) {
|
|
||||||
// strcat(ptr, ",");
|
|
||||||
#endif
|
|
||||||
sprintf(ptr + strlen(ptr), ", \"gps\": {\"lat\": %g, \"lon\": %g, \"alt\": %d, \"sat\": %d, \"speed\": %g, \"dir\": %d, \"hdop\": %d }", gpsPos.lat, gpsPos.lon, gpsPos.alt, gpsPos.sat, gpsPos.speed, gpsPos.course, gpsPos.hdop);
|
sprintf(ptr + strlen(ptr), ", \"gps\": {\"lat\": %g, \"lon\": %g, \"alt\": %d, \"sat\": %d, \"speed\": %g, \"dir\": %d, \"hdop\": %d }", gpsPos.lat, gpsPos.lon, gpsPos.alt, gpsPos.sat, gpsPos.speed, gpsPos.course, gpsPos.hdop);
|
||||||
//}
|
//}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -162,10 +162,10 @@ headtxt = function(data,stat) {
|
||||||
|
|
||||||
draw = function(data) {
|
draw = function(data) {
|
||||||
var stat;
|
var stat;
|
||||||
//console.log(data);
|
console.log(data);
|
||||||
if (data.id) {
|
if (data.id) {
|
||||||
// data.res: 0: ok 1: no rx (timeout), 2: crc err, >2 some other error
|
// data.res: 0: ok 1: no rx (timeout), 2: crc err, >2 some other error
|
||||||
if ((data.lat != '0.000000' && data.lon != '0.000000') && (lastframe != 0)) { //JSON.stringify(data) != JSON.stringify(last_data)) ) {
|
if ((data.lat && data.lon && data.alt) && (lastframe != 0)) {
|
||||||
var location = [data.lat,data.lon,data.alt];
|
var location = [data.lat,data.lon,data.alt];
|
||||||
if (!marker) {
|
if (!marker) {
|
||||||
map.setView(location, 14);
|
map.setView(location, 14);
|
||||||
|
|
Ładowanie…
Reference in New Issue