diff options
-rw-r--r-- | altoslib/AltosConvert.java | 6 | ||||
-rw-r--r-- | altoslib/AltosLink.java | 10 |
2 files changed, 15 insertions, 1 deletions
diff --git a/altoslib/AltosConvert.java b/altoslib/AltosConvert.java index 5750afad..3e0f0e1a 100644 --- a/altoslib/AltosConvert.java +++ b/altoslib/AltosConvert.java @@ -230,6 +230,12 @@ public class AltosConvert { return sensor / 32767.0 * supply * (5.6 + 10.0) / 10.0; } + static double tele_bt_3_battery(int raw) { + if (raw == AltosLib.MISSING) + return AltosLib.MISSING; + return 3.3 * mega_adc(raw) * (5.1 + 10.0) / 10.0; + } + static double easy_mini_voltage(int sensor, int serial) { double supply = 3.3; double diode_offset = 0.0; diff --git a/altoslib/AltosLink.java b/altoslib/AltosLink.java index 4f3a1ed2..e33f7c77 100644 --- a/altoslib/AltosLink.java +++ b/altoslib/AltosLink.java @@ -553,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() { |