diff --git a/RX_FSK/RX_FSK.ino b/RX_FSK/RX_FSK.ino index 9c4faab..6c51388 100644 --- a/RX_FSK/RX_FSK.ino +++ b/RX_FSK/RX_FSK.ino @@ -147,6 +147,18 @@ int readLine(Stream &stream, char *buffer, int maxlen) { // Replaces placeholder with LED state value String processor(const String& var) { Serial.println(var); + if (var == "MAPCENTER") { + double lat, lon; + if(gpsPos.valid) { lat=gpsPos.lat; lon=gpsPos.lon; } + else { lat = sonde.config.rxlat; lon = sonde.config.rxlon; } + if( !isnan(lat) && !isnan(lon) ) { + char p[40]; + snprintf(p, 40, "%g,%g", lat, lon); + return String(p); + } else { + return String("48,13"); + } + } if (var == "VERSION_NAME") { return String(version_name); } diff --git a/RX_FSK/data/livemap.html b/RX_FSK/data/livemap.html index 779e025..cc6b669 100644 --- a/RX_FSK/data/livemap.html +++ b/RX_FSK/data/livemap.html @@ -6,6 +6,7 @@ + diff --git a/RX_FSK/data/livemap.js b/RX_FSK/data/livemap.js index e515e36..a09d32b 100644 --- a/RX_FSK/data/livemap.js +++ b/RX_FSK/data/livemap.js @@ -40,7 +40,8 @@ $(document).ready(function(){ } }; - map.setView([51.163361,10.447683], 5); // Mitte DE + if(mapcenter) map.setView(mapcenter, 5); + else map.setView([51.163361,10.447683], 5); // Mitte DE var reddot = ''; var yellowdot = '';