Merge commit 'origin/master'
authorBdale Garbee <bdale@gag.com>
Thu, 3 Sep 2009 05:17:37 +0000 (23:17 -0600)
committerBdale Garbee <bdale@gag.com>
Thu, 3 Sep 2009 05:17:37 +0000 (23:17 -0600)
src/Makefile
src/ao.h
src/ao_ee.c
src/ao_gps.c
src/ao_gps_report.c
src/ao_log.c
src/ao_teledongle.c
src/ao_telemetrum.c
src/ao_teleterra.c

index 96049c65f11af939d736518695badd6554b4ec90..828c48bdc5fc6775cf30ab81317bb623a6ccbd63 100644 (file)
@@ -24,7 +24,6 @@ INC = \
 #
 ALTOS_SRC = \
        ao_cmd.c \
-       ao_dbg.c \
        ao_dma.c \
        ao_mutex.c \
        ao_panic.c \
@@ -70,6 +69,12 @@ TELE_FAKE_SRC = \
        ao_adc_fake.c \
        ao_ee_fake.c
 
+#
+# Debug dongle driver (only on TI)
+#
+DBG_DONGLE_SRC = \
+       ao_dbg.c
+
 #
 # Drivers only on TeleMetrum
 #
@@ -115,7 +120,8 @@ TI_SRC = \
        $(TELE_RECEIVER_SRC) \
        $(TELE_COMMON_SRC) \
        $(TELE_FAKE_SRC) \
-       $(TI_MAIN_SRC)
+       $(TI_MAIN_SRC) \
+       $(DBG_DONGLE_SRC)
 
 TT_MAIN_SRC = \
        ao_teleterra.c
index 27ec010f68cd6ac42bb42822ee7496d59ee5a878..8e34255830ab7ca7032a3460beb8833045748e49 100644 (file)
--- a/src/ao.h
+++ b/src/ao.h
@@ -503,7 +503,6 @@ struct ao_log_record {
                        uint16_t        svid;
                        uint8_t         state;
                        uint8_t         c_n;
-                       uint8_t         unused;
                } gps_sat;
                struct {
                        uint16_t        d0;
index f299b925c0274b70c46270de3c76da05aee23087..9b6db2340d69e2a1f9f6e41582a1742773f84519 100644 (file)
@@ -271,6 +271,7 @@ ao_ee_write(uint32_t pos, uint8_t *buf, uint16_t len) __reentrant
                /* See how much is left */
                buf += this_len;
                len -= this_len;
+               pos += this_len;
        }
        return 1;
 }
@@ -306,6 +307,7 @@ ao_ee_read(uint32_t pos, uint8_t *buf, uint16_t len) __reentrant
                /* See how much is left */
                buf += this_len;
                len -= this_len;
+               pos += this_len;
        }
        return 1;
 }
index 7d68b325c77ccfbe3b8ed97d0fcf39b2646dcc13..2b3a5178120029bee4998de33631a862dedf6432 100644 (file)
@@ -30,14 +30,14 @@ const char ao_gps_config[] = {
        0xa0, 0xa2, 0x00, 0x0e, /* length: 14 bytes */
        136,                    /* mode control */
        0, 0,                   /* reserved */
-       4,                      /* degraded mode (disabled) */
+       0,                      /* degraded mode (allow 1-SV navigation) */
        0, 0,                   /* reserved */
        0, 0,                   /* user specified altitude */
        2,                      /* alt hold mode (disabled, require 3d fixes) */
        0,                      /* alt hold source (use last computed altitude) */
        0,                      /* reserved */
-       0,                      /* Degraded time out (disabled) */
-       0,                      /* Dead Reckoning time out (disabled) */
+       10,                     /* Degraded time out (10 sec) */
+       10,                     /* Dead Reckoning time out (10 sec) */
        0,                      /* Track smoothing (disabled) */
        0x00, 0x8e, 0xb0, 0xb3,
 
index acf8bb4022552c8d43bd938fe256da22be177aa8..75c944f55378afa601e60464a4246cdb07d31f09 100644 (file)
@@ -75,7 +75,6 @@ ao_gps_tracking_report(void)
                            (gps_log.u.gps_sat.state = gps_tracking_data.sats[c].state))
                        {
                                gps_log.u.gps_sat.c_n = gps_tracking_data.sats[c].c_n_1;
-                               gps_log.u.gps_sat.unused = 0;
                                ao_log_data(&gps_log);
                        }
        }
index 19bfdfb89a13fe62234ac099e7dd05b910f6bc27..7945ace4e1854c536b216a1d8d5e17c96d137ae7 100644 (file)
@@ -109,6 +109,9 @@ ao_log_dump_next(void)
 __xdata uint8_t        ao_log_adc_pos;
 __xdata enum flight_state ao_log_state;
 
+/* a hack to make sure that ao_log_records fill the eeprom block in even units */
+typedef uint8_t check_log_size[1-(256 % sizeof(struct ao_log_record))] ;
+
 void
 ao_log(void)
 {
index 4ebc53a54161d5f1772426dd3257a80c04c9c163..d7b4b75a5cc3141c94ece3f331f898195c6ba71d 100644 (file)
@@ -33,7 +33,6 @@ main(void)
        ao_monitor_init(AO_LED_GREEN, TRUE);
        ao_rssi_init(AO_LED_RED);
        ao_radio_init();
-       ao_dbg_init();
        ao_config_init();
        ao_start_scheduler();
 }
index 5e951b493f098c1a42b787dde12a0635e22f2439..1dbacf8991b3937bca2366b7c0b64f3512d59375 100644 (file)
@@ -41,7 +41,6 @@ main(void)
        ao_telemetry_init();
        ao_radio_init();
        ao_igniter_init();
-       ao_dbg_init();
        ao_config_init();
        ao_start_scheduler();
 }
index 6464ccc07f01ddcca3737a15412dc5037450ff89..deb63597f91845dec91a69a2158c0f80df9b2ba8 100644 (file)
@@ -34,7 +34,6 @@ main(void)
        ao_gps_init();
        ao_monitor_init(AO_LED_GREEN, TRUE);
        ao_radio_init();
-       ao_dbg_init();
        ao_config_init();
        ao_start_scheduler();
 }