X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fcore%2Fao_flight_mm.c;h=a0affc4868f028dd61ccea1b86c0ac863e404623;hb=84f9a525c64491afa9b7a565e3c10a4cee106e14;hp=e812016eaec05e854226e9858959bb1fe58f6874;hpb=1353b277f8314fbddef81c743bd6ea229364fd18;p=fw%2Faltos diff --git a/src/core/ao_flight_mm.c b/src/core/ao_flight_mm.c index e812016e..a0affc48 100644 --- a/src/core/ao_flight_mm.c +++ b/src/core/ao_flight_mm.c @@ -32,6 +32,10 @@ #error Please define HAS_USB #endif +#ifndef HAS_TELEMETRY +#define HAS_TELEMETRY HAS_RADIO +#endif + /* Main flight thread. */ __pdata enum ao_flight_state ao_flight_state; /* current flight state */ @@ -94,7 +98,7 @@ ao_flight(void) */ ao_flight_state = ao_flight_invalid; -#if HAS_RADIO +#if HAS_RADIO && PACKET_HAS_SLAVE /* Turn on packet system in invalid mode on TeleMetrum */ ao_packet_slave_start(); #endif @@ -120,7 +124,7 @@ ao_flight(void) ao_packet_slave_stop(); #endif -#if HAS_RADIO +#if HAS_TELEMETRY /* Turn on telemetry system */ ao_rdf_set(1); ao_telemetry_set_interval(AO_TELEMETRY_INTERVAL_PAD); @@ -131,7 +135,7 @@ ao_flight(void) /* Set idle mode */ ao_flight_state = ao_flight_idle; -#if HAS_ACCEL && HAS_RADIO +#if HAS_ACCEL && HAS_RADIO && PACKET_HAS_SLAVE /* Turn on packet system in idle mode on TeleMetrum */ ao_packet_slave_start(); #endif @@ -171,7 +175,7 @@ ao_flight(void) /* start logging data */ ao_log_start(); -#if HAS_RADIO +#if HAS_TELEMETRY /* Increase telemetry rate */ ao_telemetry_set_interval(AO_TELEMETRY_INTERVAL_FLIGHT); @@ -259,7 +263,7 @@ ao_flight(void) ao_ignite(ao_igniter_drogue); #endif -#if HAS_RADIO +#if HAS_TELEMETRY /* slow down the telemetry system */ ao_telemetry_set_interval(AO_TELEMETRY_INTERVAL_RECOVER); @@ -359,9 +363,11 @@ static inline int frac_part(int16_t i) { return ((i & 0xf) * 100 + 8) / 16; } static void ao_flight_dump(void) { +#if HAS_ACCEL int16_t accel; accel = ((ao_ground_accel - ao_sample_accel) * ao_accel_scale) >> 16; +#endif printf ("sample:\n"); printf (" tick %d\n", ao_sample_tick); @@ -378,7 +384,9 @@ ao_flight_dump(void) printf (" alt %d\n", ao_sample_alt); printf (" height %d\n", ao_sample_height); +#if HAS_ACCEL printf (" accel %d.%02d\n", int_part(accel), frac_part(accel)); +#endif printf ("kalman:\n");