diff options
Diffstat (limited to 'src/ao_flight.c')
-rw-r--r-- | src/ao_flight.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/ao_flight.c b/src/ao_flight.c index cfecc5af..822a20b8 100644 --- a/src/ao_flight.c +++ b/src/ao_flight.c @@ -168,8 +168,9 @@ ao_flight(void) ao_wakeup(&ao_gps_data); ao_wakeup(&ao_gps_tracking_data); #endif -#ifdef ASCENT_PIN - ASCENT_PIN = 0; +#ifdef ASCENT_SIGNAL + ASCENT_SIGNAL = 0; + ASCENT_SIGNAL_DIR |= (1 << ASCENT_SIGNAL_PIN); #endif ao_wakeup(DATA_TO_XDATA(&ao_flight_state)); @@ -240,8 +241,9 @@ ao_flight(void) /* Turn the RDF beacon back on */ ao_rdf_set(1); -#ifdef ASCENT_PIN - ASCENT_PIN = 1; +#ifdef ASCENT_SIGNAL + ASCENT_SIGNAL_DIR &= ~(1 << ASCENT_SIGNAL_PIN); + ASCENT_SIGNAL = 0; #endif /* * Start recording min/max height @@ -320,9 +322,10 @@ void ao_flight_init(void) { #ifdef ASCENT_SIGNAL - ASCENT_SIGNAL = 1; - ASCENT_SIGNAL_DIR |= (1 << ASCENT_SIGNAL_PIN); ASCENT_SIGNAL_SEL &= ~(1 << ASCENT_SIGNAL_PIN); + ASCENT_SIGNAL_DIR &= ~(1 << ASCENT_SIGNAL_PIN); + P1INP |= (1 << ASCENT_SIGNAL_PIN); + ASCENT_SIGNAL = 1; #endif ao_flight_state = ao_flight_startup; ao_add_task(&flight_task, ao_flight, "flight"); |