X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altoslib%2FAltosTelemetryConfiguration.java;h=22fd8568cab896f9cf42bfa1268901ba68bf6fe6;hb=8554da3b6c05c1094045f4fb21b43c183029408f;hp=920c3187b1fe0a98d0613bab05577017d0886deb;hpb=f26cfe417c6977cf1e7e75a4f050e25f64d41859;p=fw%2Faltos diff --git a/altoslib/AltosTelemetryConfiguration.java b/altoslib/AltosTelemetryConfiguration.java index 920c3187..22fd8568 100644 --- a/altoslib/AltosTelemetryConfiguration.java +++ b/altoslib/AltosTelemetryConfiguration.java @@ -16,7 +16,7 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altoslib_11; +package org.altusmetrum.altoslib_13; public class AltosTelemetryConfiguration extends AltosTelemetryStandard { @@ -35,14 +35,23 @@ public class AltosTelemetryConfiguration extends AltosTelemetryStandard { super(bytes); } - public void provide_data(AltosDataListener listener, AltosCalData cal_data) { - super.provide_data(listener, cal_data); - cal_data.set_device_type(device_type()); + public void provide_data(AltosDataListener listener) { + super.provide_data(listener); + + AltosCalData cal_data = listener.cal_data(); + + listener.set_device_type(device_type()); cal_data.set_flight(flight()); cal_data.set_config(config_major(), config_minor(), flight_log_max()); - if (device_type() == AltosLib.product_telegps) - listener.set_battery_voltage(AltosConvert.tele_gps_voltage(v_batt())); - else + if (device_type() == AltosLib.product_telegps) { + int v_batt = v_batt(); + double batt; + if (v_batt > 4095) + batt = AltosConvert.tele_gps_1_voltage(v_batt); + else + batt = AltosConvert.tele_gps_2_voltage(v_batt); + listener.set_battery_voltage(batt); + } else cal_data.set_flight_params(apogee_delay() / 100.0, main_deploy()); cal_data.set_callsign(callsign());