X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fao_flight.c;h=e91a5daa74c97cc77f03b6d3030657c6f061a45e;hp=6de6e7cc324620c0f6b82c3ae317d61d5f6ceb45;hb=ca5d323a3d206050d95f52a61e92c69e1f54e7b5;hpb=5834a12c1d3d71105c9e3d1ceaf9f3ffac9ff1eb diff --git a/src/ao_flight.c b/src/ao_flight.c index 6de6e7cc..e91a5daa 100644 --- a/src/ao_flight.c +++ b/src/ao_flight.c @@ -227,6 +227,7 @@ ao_flight(void) /* Turn on telemetry system */ + ao_rdf_set(1); ao_telemetry_set_interval(AO_TELEMETRY_INTERVAL_PAD); ao_flight_state = ao_flight_pad; @@ -234,9 +235,9 @@ ao_flight(void) } else { ao_flight_state = ao_flight_idle; - /* Turn on the Green LED in idle mode + /* Turn on packet system in idle mode */ - ao_led_on(AO_LED_GREEN); + ao_packet_slave_start(); ao_wakeup(DATA_TO_XDATA(&ao_flight_state)); } /* signal successful initialization by turning off the LED */ @@ -277,6 +278,9 @@ ao_flight(void) /* Increase telemetry rate */ ao_telemetry_set_interval(AO_TELEMETRY_INTERVAL_FLIGHT); + /* disable RDF beacon */ + ao_rdf_set(0); + ao_wakeup(DATA_TO_XDATA(&ao_flight_state)); break; } @@ -325,13 +329,13 @@ ao_flight(void) * apogee detect */ ao_min_vel = abs(ao_flight_vel); - ao_flight_state = ao_flight_apogee; + ao_flight_state = ao_flight_coast; ao_wakeup(DATA_TO_XDATA(&ao_flight_state)); } break; - case ao_flight_apogee: + case ao_flight_coast: - /* apogee detect to drogue deploy: + /* apogee detect: coast to drogue deploy: * * accelerometer: abs(velocity) > min_velocity + 2m/s * OR @@ -438,6 +442,8 @@ ao_flight(void) /* turn off the ADC capture */ ao_timer_set_adc_interval(0); + /* Enable RDF beacon */ + ao_rdf_set(1); ao_wakeup(DATA_TO_XDATA(&ao_flight_state)); } @@ -452,7 +458,7 @@ ao_flight(void) #define AO_VEL_COUNT_TO_MS(count) ((int16_t) ((count) / 2700)) static void -ao_flight_status(void) +ao_flight_status(void) __reentrant { printf("STATE: %7s accel: %d speed: %d altitude: %d main: %d\n", ao_state_names[ao_flight_state],