X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altoslib%2FAltosConfigData.java;h=cd649113b1a6b8293b3766f05a74f97ae6f79d0b;hb=HEAD;hp=005ef57156a4da31eb7187ce43df9167446a696b;hpb=6a9721f344d1837c913fee142c875de4d7357820;p=fw%2Faltos diff --git a/altoslib/AltosConfigData.java b/altoslib/AltosConfigData.java index 005ef571..b076357d 100644 --- a/altoslib/AltosConfigData.java +++ b/altoslib/AltosConfigData.java @@ -88,6 +88,9 @@ public class AltosConfigData { public int report_feet; + /* HAS_GPS_MOSAIC */ + public int gps_receiver; + /* Storage info replies */ public int storage_size; public int storage_erase_unit; @@ -242,6 +245,10 @@ public class AltosConfigData { return false; } + public boolean has_radio() { + return product.startsWith("Tele"); + } + int[] parse_version(String v) { String[] parts = v.split("\\."); int r[] = new int[parts.length]; @@ -331,6 +338,8 @@ public class AltosConfigData { report_feet = AltosLib.MISSING; + gps_receiver = AltosLib.MISSING; + tracker_motion = AltosLib.MISSING; tracker_interval = AltosLib.MISSING; @@ -526,6 +535,8 @@ public class AltosConfigData { try { report_feet = get_int(line, "Report in feet:"); } catch (Exception e) {} + try { gps_receiver = get_int(line, "GPS receiver:"); } catch (Exception e) {} + /* HAS_TRACKER */ try { int[] values = get_values(line, "Tracker setting:"); @@ -777,6 +788,9 @@ public class AltosConfigData { if (report_feet != AltosLib.MISSING) report_feet = source.report_feet(); + if (gps_receiver != AltosLib.MISSING) + gps_receiver = source.gps_receiver(); + /* HAS_TRACKER */ if (tracker_motion != AltosLib.MISSING) tracker_motion = source.tracker_motion(); @@ -834,6 +848,7 @@ public class AltosConfigData { dest.set_beep(beep); dest.set_radio_10mw(radio_10mw); dest.set_report_feet(report_feet); + dest.set_gps_receiver(gps_receiver); dest.set_tracker_motion(tracker_motion); dest.set_tracker_interval(tracker_interval); } @@ -957,10 +972,13 @@ public class AltosConfigData { if (radio_10mw != AltosLib.MISSING) link.printf("c p %d\n", radio_10mw); - /* HAS_RADIO_10MW */ if (report_feet != AltosLib.MISSING) link.printf("c u %d\n", report_feet); + /* HAS_GPS_MOSAIC */ + if (gps_receiver != AltosLib.MISSING) + link.printf("c g %d\n", gps_receiver); + /* HAS_TRACKER */ if (tracker_motion != AltosLib.MISSING && tracker_interval != AltosLib.MISSING) link.printf("c t %d %d\n", tracker_motion, tracker_interval);