*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
-package org.altusmetrum.altoslib_5;
+package org.altusmetrum.altoslib_11;
import java.io.*;
import java.util.*;
public int cmd;
public String data;
- public int config_a, config_b;
+ public int config_a, config_b, config_c;
public boolean last;
public boolean valid;
state.make_baro();
state.baro.crc = config_a;
break;
+ case AltosLib.AO_LOG_IMU_CAL:
+ state.set_accel_zero(config_a, config_b, config_c);
+ break;
case AltosLib.AO_LOG_SOFTWARE_VERSION:
state.set_firmware_version(data);
break;
+ case AltosLib.AO_LOG_FREQUENCY:
+ case AltosLib.AO_LOG_APOGEE_LOCKOUT:
+ case AltosLib.AO_LOG_RADIO_RATE:
+ case AltosLib.AO_LOG_IGNITE_MODE:
+ break;
+ case AltosLib.AO_LOG_PAD_ORIENTATION:
+ state.set_pad_orientation(config_a);
+ break;
+ case AltosLib.AO_LOG_RADIO_ENABLE:
+ case AltosLib.AO_LOG_AES_KEY:
+ case AltosLib.AO_LOG_APRS:
+ case AltosLib.AO_LOG_BEEP_SETTING:
+ case AltosLib.AO_LOG_TRACKER_SETTING:
+ case AltosLib.AO_LOG_PYRO_TIME:
+ case AltosLib.AO_LOG_APRS_ID:
+ break;
+ case AltosLib.AO_LOG_ALTITUDE_32:
+ state.set_altitude_32(config_a);
+ break;
}
}
case AltosLib.AO_LOG_BARO_CRC:
out.printf ("# Baro crc: %d\n", config_a);
break;
+ case AltosLib.AO_LOG_IMU_CAL:
+ out.printf ("# IMU cal: %d %d %d\n", config_a, config_b, config_c);
+ break;
+ case AltosLib.AO_LOG_FREQUENCY:
+ case AltosLib.AO_LOG_APOGEE_LOCKOUT:
+ case AltosLib.AO_LOG_RADIO_RATE:
+ case AltosLib.AO_LOG_IGNITE_MODE:
+ break;
+ case AltosLib.AO_LOG_PAD_ORIENTATION:
+ out.printf("# Pad orientation: %d\n", config_a);
+ break;
+ case AltosLib.AO_LOG_RADIO_ENABLE:
+ case AltosLib.AO_LOG_AES_KEY:
+ case AltosLib.AO_LOG_APRS:
+ case AltosLib.AO_LOG_BEEP_SETTING:
+ case AltosLib.AO_LOG_TRACKER_SETTING:
+ case AltosLib.AO_LOG_PYRO_TIME:
+ case AltosLib.AO_LOG_APRS_ID:
+ break;
+ case AltosLib.AO_LOG_ALTITUDE_32:
+ out.printf("# Altitude-32: %d\n", config_a);
+ break;
}
}
} else if (tokens[0].equals("log-format")) {
cmd = AltosLib.AO_LOG_LOG_FORMAT;
config_a = Integer.parseInt(tokens[1]);
+ } else if (tokens[0].equals("altitude-32")) {
+ cmd = AltosLib.AO_LOG_ALTITUDE_32;
+ config_a = Integer.parseInt(tokens[1]);
} else if (tokens[0].equals("software-version")) {
cmd = AltosLib.AO_LOG_SOFTWARE_VERSION;
data = tokens[1];
cmd = AltosLib.AO_LOG_INVALID;
data = tokens[2];
}
+ } else if (tokens[0].equals("IMU") && tokens[1].equals("cal")) {
+ cmd = AltosLib.AO_LOG_IMU_CAL;
+ config_a = Integer.parseInt(tokens[3]);
+ config_b = Integer.parseInt(tokens[5]);
+ config_c = Integer.parseInt(tokens[7]);
+ } else if (tokens[0].equals("Pad") && tokens[1].equals("orientation:")) {
+ cmd = AltosLib.AO_LOG_PAD_ORIENTATION;
+ config_a = Integer.parseInt(tokens[2]);
} else
valid = false;
} catch (Exception e) {