From 09eacd652d1bd5792a25b79b703494de8f6c79af Mon Sep 17 00:00:00 2001 From: richonguzman Date: Tue, 15 Aug 2023 11:04:54 -0400 Subject: [PATCH] gps distance correction with different overlay --- src/gps_utils.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/gps_utils.cpp b/src/gps_utils.cpp index 1956f4a..d0b40d4 100644 --- a/src/gps_utils.cpp +++ b/src/gps_utils.cpp @@ -160,10 +160,14 @@ String getReceivedGPS(String packet) { } String getDistance(String packet) { - if (packet.indexOf(":!/") > 10) { - return decodeEncodedGPS(packet); - } else if (packet.indexOf(":=") > 10 || packet.indexOf(":!") > 10) { - return getReceivedGPS(packet); + int gpsIndexEx = packet.indexOf(":!"); + int gpsIndexEq = packet.indexOf(":="); + if (gpsIndexEx > 10 || gpsIndexEq > 10) { + if ((gpsIndexEx + 15 == packet.indexOf("G")) || (gpsIndexEx + 15 == packet.indexOf("Q")) || (gpsIndexEq + 15 == packet.indexOf("G")) || (gpsIndexEq + 15 == packet.indexOf("Q"))) { + return decodeEncodedGPS(packet); + } else { + return getReceivedGPS(packet); + } } else { return " _ / _ / _ "; }