altoslib: Support TeleBT v3.0 battery voltage conversion
[fw/altos] / altoslib / AltosLink.java
index fca8beb8a2713ef9f4510eca581f0a0d793fbe55..e33f7c77b27e32e2e1af70fdfde23334f85eac61 100644 (file)
@@ -86,10 +86,17 @@ public abstract class AltosLink implements Runnable {
 
        public boolean  reply_abort;
        public int      in_reply;
+       boolean cancel_enable = true;
+
+       public void set_cancel_enable(boolean e) {
+               cancel_enable = e;
+       }
 
        boolean         reply_timeout_shown = false;
 
        private boolean check_reply_timeout() {
+               if (!cancel_enable)
+                       return false;
                if (!reply_timeout_shown)
                        reply_timeout_shown = show_reply_timeout();
                return reply_abort;
@@ -546,7 +553,15 @@ public abstract class AltosLink implements Runnable {
                }
                if (monitor_batt == AltosLib.MISSING)
                        return AltosLib.MISSING;
-               return AltosConvert.cc_battery_to_voltage(monitor_batt);
+
+               double  volts = AltosLib.MISSING;
+               if (config_data.product.startsWith("TeleBT-v3")) {
+                       volts = AltosConvert.tele_bt_3_battery(monitor_batt);
+               } else {
+                       volts = AltosConvert.cc_battery_to_voltage(monitor_batt);
+               }
+
+               return volts;
        }
 
        public AltosLink() {