X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosEepromRecordMega.java;h=ad3e23fdfeeefcbc258354f5941dd6d5c35013b9;hp=0abc3fe73865c64bae21ec23d5f39c0f0fee47e7;hb=cf20e213f39fb24f15e0ac94307c2d138fcadecb;hpb=3d29882f5c70e627b0bbfe42c0a31d6cb5f6b6bf diff --git a/altoslib/AltosEepromRecordMega.java b/altoslib/AltosEepromRecordMega.java index 0abc3fe7..ad3e23fd 100644 --- a/altoslib/AltosEepromRecordMega.java +++ b/altoslib/AltosEepromRecordMega.java @@ -12,7 +12,7 @@ * General Public License for more details. */ -package org.altusmetrum.altoslib_11; +package org.altusmetrum.altoslib_12; public class AltosEepromRecordMega extends AltosEepromRecord { public static final int record_length = 32; @@ -73,8 +73,8 @@ public class AltosEepromRecordMega extends AltosEepromRecord { private int gyro_y() { return data16(16); } private int gyro_z() { return data16(18); } private int mag_x() { return data16(20); } - private int mag_y() { return data16(22); } - private int mag_z() { return data16(24); } + private int mag_z() { return data16(22); } + private int mag_y() { return data16(24); } private int accel() { return data16(26); } /* AO_LOG_TEMP_VOLT elements */ @@ -142,8 +142,8 @@ public class AltosEepromRecordMega extends AltosEepromRecord { int gyro_pitch = gyro_x(); int gyro_yaw = gyro_z(); - int mag_along = mag_x(); - int mag_across = mag_y(); + int mag_along = mag_y(); + int mag_across = mag_x(); int mag_through = mag_z(); if (log_format == AltosLib.AO_LOG_FORMAT_TELEMEGA_OLD) @@ -161,11 +161,13 @@ public class AltosEepromRecordMega extends AltosEepromRecord { cal_data.mag_through(mag_through)); + final double lsb_per_g = 1920.0/105.5; + double acceleration = AltosConvert.acceleration_from_sensor( accel(), - config_data.accel_cal_plus, - config_data.accel_cal_minus, - AltosLib.MISSING); + cal_data.ground_accel, + cal_data.ground_accel + 2 * lsb_per_g, + cal_data.ground_accel); listener.set_acceleration(acceleration); break; @@ -247,12 +249,12 @@ public class AltosEepromRecordMega extends AltosEepromRecord { return new AltosEepromRecordMega(eeprom, s); } - public AltosEepromRecordMega(AltosEepromNew eeprom, int start) { + public AltosEepromRecordMega(AltosEeprom eeprom, int start) { super(eeprom, start, record_length); log_format = eeprom.config_data().log_format; } - public AltosEepromRecordMega(AltosEepromNew eeprom) { + public AltosEepromRecordMega(AltosEeprom eeprom) { this(eeprom, 0); } }