Use 57600 baud for GPS. Clean up gps init.
[fw/altos] / src / ao.h
index d4df159553352b5da135e973b696ebb5d077042a..2e5825777acc69272e85694e4f7476a3b5f883fc 100644 (file)
--- a/src/ao.h
+++ b/src/ao.h
@@ -661,6 +661,12 @@ ao_serial_getchar(void) __critical;
 void
 ao_serial_putchar(char c) __critical;
 
+#define AO_SERIAL_SPEED_4800   0
+#define AO_SERIAL_SPEED_57600  1
+
+void
+ao_serial_set_speed(uint8_t speed);
+
 void
 ao_serial_init(void);
 
@@ -678,9 +684,15 @@ struct ao_gps_data {
        uint8_t                 minute;
        uint8_t                 second;
        uint8_t                 flags;
-       int32_t                 latitude;
-       int32_t                 longitude;
-       int16_t                 altitude;
+       int32_t                 latitude;       /* degrees * 10⁷ */
+       int32_t                 longitude;      /* degrees * 10⁷ */
+       int16_t                 altitude;       /* m */
+       uint16_t                ground_speed;   /* cm/s */
+       uint8_t                 course;         /* degrees / 2 */
+       uint8_t                 hdop;           /* * 5 */
+       int16_t                 climb_rate;     /* cm/s */
+       uint16_t                h_error;        /* m */
+       uint16_t                v_error;        /* m */
 };
 
 extern __xdata uint8_t ao_gps_mutex;