X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosTelemetryMegaData.java;h=1a0bff315f3474109d508bf85995be71574f1dff;hp=c0749e871a3c66f0f90bb8ae1ffe28d3f29fd5a5;hb=eaf2ee0f498b519d64e1664a2b8c66c52ac1497c;hpb=f26cfe417c6977cf1e7e75a4f050e25f64d41859 diff --git a/altoslib/AltosTelemetryMegaData.java b/altoslib/AltosTelemetryMegaData.java index c0749e87..1a0bff31 100644 --- a/altoslib/AltosTelemetryMegaData.java +++ b/altoslib/AltosTelemetryMegaData.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 AltosTelemetryMegaData extends AltosTelemetryStandard { @@ -24,7 +24,9 @@ public class AltosTelemetryMegaData extends AltosTelemetryStandard { int v_batt() { return int16(6); } int v_pyro() { return int16(8); } - int sense(int i) { int v = uint8(10+i); return v << 4 | v >> 8; } + + /* pyro sense values are sent in 8 bits, expand to 12 bits */ + int sense(int i) { int v = uint8(10+i); return (v << 4) | (v >> 4); } int ground_pres() { return int32(16); } int ground_accel() { return int16(20); } @@ -39,11 +41,10 @@ public class AltosTelemetryMegaData extends AltosTelemetryStandard { super(bytes); } - public void provide_data(AltosDataListener listener, AltosCalData cal_data) { - super.provide_data(listener, cal_data); + public void provide_data(AltosDataListener listener) { + super.provide_data(listener); listener.set_state(state()); - cal_data.set_state(state()); listener.set_battery_voltage(AltosConvert.mega_battery_voltage(v_batt())); listener.set_pyro_voltage(AltosConvert.mega_pyro_voltage(v_pyro())); @@ -55,7 +56,9 @@ public class AltosTelemetryMegaData extends AltosTelemetryStandard { for (int i = 0; i < 4; i++) voltages[i] = AltosConvert.mega_pyro_voltage(sense(i)); - listener.set_ignitor_voltage(voltages); + listener.set_igniter_voltage(voltages); + + AltosCalData cal_data = listener.cal_data(); cal_data.set_ground_accel(ground_accel()); cal_data.set_ground_pressure(ground_pres());