2 * Copyright © 2011 Keith Packard <keithp@keithp.com>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 2 of the License.
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * General Public License for more details.
13 * You should have received a copy of the GNU General Public License along
14 * with this program; if not, write to the Free Software Foundation, Inc.,
15 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
18 package org.altusmetrum.altoslib_5;
20 public class AltosTelemetryMegaSensor extends AltosTelemetryStandard {
39 public AltosTelemetryMegaSensor(int[] bytes) {
60 public void update_state(AltosState state) {
61 super.update_state(state);
63 state.set_accel(accel);
64 state.set_pressure(pres);
65 state.set_temperature(temp / 100.0);
67 state.set_orient(orient);
69 AltosIMU imu = new AltosIMU();
71 imu.accel_x = AltosIMU.convert_accel(accel_x);
72 imu.accel_y = AltosIMU.convert_accel(accel_y);
73 imu.accel_z = AltosIMU.convert_accel(accel_z);
75 imu.gyro_x = AltosIMU.convert_gyro(gyro_x);
76 imu.gyro_y = AltosIMU.convert_gyro(gyro_y);
77 imu.gyro_z = AltosIMU.convert_gyro(gyro_z);
81 AltosMag mag = new AltosMag();
83 mag.x = AltosMag.convert_gauss(mag_x);
84 mag.y = AltosMag.convert_gauss(mag_y);
85 mag.z = AltosMag.convert_gauss(mag_z);