return sensor / 32767.0 * supply * 127/27;
}
+ static double tele_gps_voltage(int sensor) {
+ double supply = 3.3;
+
+ return sensor / 32767.0 * supply * (5.6 + 10.0) / 10.0;
+ }
+
static double easy_mini_voltage(int sensor, int serial) {
double supply = 3.3;
double diode_offset = 0.0;
this.device_type = device_type;
}
- public void set_config(int major, int minor, int apogee_delay, int main_deploy, int flight_log_max) {
- config_major = major;
- config_minor = minor;
+ public void set_flight_params(int apogee_delay, int main_deploy) {
this.apogee_delay = apogee_delay;
this.main_deploy = main_deploy;
+ }
+
+ public void set_config(int major, int minor, int flight_log_max) {
+ config_major = major;
+ config_minor = minor;
this.flight_log_max = flight_log_max;
}
int config_minor;
int apogee_delay;
int main_deploy;
+ int v_batt;
int flight_log_max;
String callsign;
String version;
flight = uint16(6);
config_major = uint8(8);
config_minor = uint8(9);
+ v_batt = uint16(10);
apogee_delay = uint16(10);
main_deploy = uint16(12);
flight_log_max = uint16(14);
super.update_state(state);
state.set_device_type(device_type);
state.set_flight(flight);
- state.set_config(config_major, config_minor, apogee_delay, main_deploy, flight_log_max);
+ state.set_config(config_major, config_minor, flight_log_max);
+ if (device_type == AltosLib.product_telegps)
+ state.set_battery_voltage(AltosConvert.tele_gps_voltage(v_batt));
+ else
+ state.set_flight_params(apogee_delay, main_deploy);
state.set_callsign(callsign);
state.set_firmware_version(version);