altosui: Output recorded clock tick in CSV files
[fw/altos] / altosui / AltosConvert.java
index 207470a5eb5ef6016341dc0fd0d8986db65c51ab..df41a522ad956a967d2d103d65cb95ba8ad26a8f 100644 (file)
@@ -190,14 +190,18 @@ public class AltosConvert {
                return ignite / 32767 * 15.0;
        }
 
-       static double radio_to_frequency(int setting, int cal, int channel) {
+       static double radio_to_frequency(int freq, int setting, int cal, int channel) {
                double  f;
 
-               if (setting <= 0)
-                       setting = cal;
-               f = 434.550 * setting / cal;
-               /* Round to nearest 50KHz */
-               f = Math.floor (20.0 * f + 0.5) / 20.0;
+               if (freq > 0)
+                       f = freq / 1000.0;
+               else {
+                       if (setting <= 0)
+                               setting = cal;
+                       f = 434.550 * setting / cal;
+                       /* Round to nearest 50KHz */
+                       f = Math.floor (20.0 * f + 0.5) / 20.0;
+               }
                return f + channel * 0.100;
        }
 
@@ -234,6 +238,18 @@ public class AltosConvert {
                return array;
        }
 
+       static double meters_to_feet(double meters) {
+               return meters * (100 / (2.54 * 12));
+       }
+
+       static double meters_to_mach(double meters) {
+               return meters / 343;            /* something close to mach at usual rocket sites */
+       }
+
+       static double meters_to_g(double meters) {
+               return meters / 9.80665;
+       }
+
        static int checksum(int[] data, int start, int length) {
                int     csum = 0x5a;
                for (int i = 0; i < length; i++)