summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--altoslib/AltosEepromFireTwo.java13
-rw-r--r--altoslib/AltosMs5607.java17
2 files changed, 25 insertions, 5 deletions
diff --git a/altoslib/AltosEepromFireTwo.java b/altoslib/AltosEepromFireTwo.java
index 14a026a9..16019c8c 100644
--- a/altoslib/AltosEepromFireTwo.java
+++ b/altoslib/AltosEepromFireTwo.java
@@ -49,13 +49,11 @@ public class AltosEepromFireTwo extends AltosEeprom {
private static final double r_below = 10000.0;
private static final double v_adc = 3.3;
- private static double
- firetwo_adc(int raw) {
+ private static double firetwo_adc(int raw) {
return raw / 4095.0;
}
- private static double
- adc_to_pa(int adc) {
+ public static double adc_to_pa(int adc) {
/* raw adc to processor voltage, then back through the
* voltage divider to the sensor voltage
@@ -71,6 +69,13 @@ public class AltosEepromFireTwo extends AltosEeprom {
return AltosConvert.psi_to_pa(psi);
}
+ public static double adc_to_n(int adc) {
+ double v = firetwo_adc(adc);
+
+ /* this is a total guess */
+ return AltosConvert.lb_to_n(v * 298 * 9.807);
+ }
+
public void update_state(AltosState state) {
super.update_state(state);
diff --git a/altoslib/AltosMs5607.java b/altoslib/AltosMs5607.java
index 19d2dd6d..c598d01e 100644
--- a/altoslib/AltosMs5607.java
+++ b/altoslib/AltosMs5607.java
@@ -138,6 +138,17 @@ public class AltosMs5607 {
}
}
+ public boolean valid_config() {
+ return reserved != AltosLib.MISSING &&
+ sens != AltosLib.MISSING &&
+ off != AltosLib.MISSING &&
+ tcs != AltosLib.MISSING &&
+ tco != AltosLib.MISSING &&
+ tref != AltosLib.MISSING &&
+ tempsens != AltosLib.MISSING &&
+ crc != AltosLib.MISSING;
+ }
+
public AltosMs5607() {
raw_pres = AltosLib.MISSING;
raw_temp = AltosLib.MISSING;
@@ -145,7 +156,7 @@ public class AltosMs5607 {
cc = AltosLib.MISSING;
}
- public AltosMs5607 (AltosLink link, AltosConfigData config_data) throws InterruptedException, TimeoutException {
+ public AltosMs5607(AltosConfigData config_data) {
this();
reserved = config_data.ms5607_reserved;
sens = config_data.ms5607_sens;
@@ -155,6 +166,10 @@ public class AltosMs5607 {
tref = config_data.ms5607_tref;
tempsens = config_data.ms5607_tempsens;
crc = config_data.ms5607_crc;
+ }
+
+ public AltosMs5607 (AltosLink link, AltosConfigData config_data) throws InterruptedException, TimeoutException {
+ this(config_data);
link.printf("B\n");
for (;;) {
String line = link.get_reply_no_dialog(5000);