X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altoslib%2FAltosConvert.java;h=a3343a4f200aad0171696a31aaa88545c282b026;hb=96de483d745ea0ef95326de2847a2534f7057846;hp=0b41328739d1797ab4c6491cbfe4fe198f667867;hpb=1029a6e4a61b20698e00e29fc0c8c3877f1e7b0f;p=fw%2Faltos diff --git a/altoslib/AltosConvert.java b/altoslib/AltosConvert.java index 0b413287..a3343a4f 100644 --- a/altoslib/AltosConvert.java +++ b/altoslib/AltosConvert.java @@ -21,6 +21,8 @@ */ package org.altusmetrum.altoslib_11; +import java.util.*; + public class AltosConvert { /* * Pressure Sensor Model, version 1.1 @@ -366,12 +368,32 @@ public class AltosConvert { return (c - 32) * 5/9; } + public static double psi_to_pa(double psi) { + return psi * 6894.76; + } + + public static double pa_to_psi(double pa) { + return pa / 6894.76; + } + + public static double n_to_lb(double n) { + return n * 0.22480894; + } + + public static double lb_to_n(double lb) { + return lb / 0.22480894; + } + public static boolean imperial_units = false; public static AltosDistance distance = new AltosDistance(); public static AltosHeight height = new AltosHeight(); + public static AltosPressure pressure = new AltosPressure(); + + public static AltosForce force = new AltosForce(); + public static AltosSpeed speed = new AltosSpeed(); public static AltosAccel accel = new AltosAccel(); @@ -386,6 +408,8 @@ public class AltosConvert { public static AltosLongitude longitude = new AltosLongitude(); + public static AltosRotationRate rotation_rate = new AltosRotationRate(); + public static String show_gs(String format, double a) { a = meters_to_g(a); format = format.concat(" g"); @@ -403,6 +427,13 @@ public class AltosConvert { return csum & 0xff; } + public static int checksum(List data, int start, int length) { + int csum = 0x5a; + for (int i = 0; i < length; i++) + csum += data.get(i+start); + return csum & 0xff; + } + public static double beep_value_to_freq(int value) { if (value == 0) return 4000;