diff --git a/RX_FSK/RX_FSK.ino b/RX_FSK/RX_FSK.ino index 13b70fa..b4374df 100644 --- a/RX_FSK/RX_FSK.ino +++ b/RX_FSK/RX_FSK.ino @@ -540,7 +540,7 @@ const char *createLiveJson() { strcpy(ptr, "{"); SondeInfo *s = &sonde.sondeList[sonde.currentSonde]; - sprintf(ptr + strlen(ptr), "\"rssi\": %d, \"sonde\": {\"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->vframe, s->time, s->id, s->freq, sondeTypeStr[s->type], s->lat, s->lon, s->alt, s->hs, s->dir, s->vs, s->launchsite, s->rxStat[0]); diff --git a/RX_FSK/data/livemap.js b/RX_FSK/data/livemap.js index 959a424..c7fd5f2 100644 --- a/RX_FSK/data/livemap.js +++ b/RX_FSK/data/livemap.js @@ -46,11 +46,12 @@ $(document).ready(function(){ var reddot = ''; var yellowdot = ''; var greendot = ''; +var lastframe = 0; $('#map .leaflet-control-container').append(L.DomUtil.create('div', 'leaflet-top leaflet-center leaflet-header')); var header = ''; header += '
rdzTTGOSonde LiveMap
🎈 - MHz -
'; -header += '
m | m/s | km/h
'; +header += '
m | m/s | km/h | °
| -dBm
'; header += '
'; header += '

Prediction-Settings
'; @@ -74,16 +75,19 @@ headtxt = function(data,stat) { var staticon = (stat == '1')?greendot:yellowdot; statbar = staticon + statbar; if ((statbar.length) > 10*greendot.length) { statbar = statbar.substring(0,10*greendot.length); } - //if (data.lat == '0.000000') { return false; } - if (data.id) { + if (data.id && data.vframe != lastframe ) { + lastframe = data.vframe; $('#sonde_id').html(data.id); $('#sonde_alt').html(data.alt); $('#sonde_climb').html(data.climb); $('#sonde_speed').html( mr(data.speed * 3.6 * 10) / 10 ); + $('#sonde_dir').html(data.dir); + $('#sonde_time').html(new Date(data.time * 1000).toISOString()); + $('#sonde_rssi').html(data.rssi / 2 ); $('#sonde_detail').show(); } else { $('#sonde_id').html(data.launchsite.trim()); - $('#sonde_detail').hide(); + // $('#sonde_detail').hide(); } $('#sonde_freq').html(data.freq); $('#sonde_type').html(data.type); @@ -159,7 +163,7 @@ headtxt = function(data,stat) { //console.log(data); if (data.id) { // data.res: 0: ok 1: no rx (timeout), 2: crc err, >2 some other error - if ((data.lat != '0.000000' && data.lon != '0.000000') && (data.res==0)) { //JSON.stringify(data) != JSON.stringify(last_data)) ) { + if ((data.lat != '0.000000' && data.lon != '0.000000') && (lastframe != 0)) { //JSON.stringify(data) != JSON.stringify(last_data)) ) { var location = [data.lat,data.lon,data.alt]; if (!marker) { map.setView(location, 14); @@ -180,10 +184,13 @@ headtxt = function(data,stat) { } dots.push(location); line.setLatLngs(dots); + } + if (data.res == 0) { storage_write(data); $('#status').html(greendot); stat = 1; - } else { + } + else { $('#status').html(yellowdot); stat = 0; }