Switch to using internal cc1111 temperature sensor
[fw/altos] / src / ao_flight.c
index f57573d0547b15baf2e804441837dc122db03ab3..e0fd97f2464b901a61649037e61a9848e46b819e 100644 (file)
@@ -50,6 +50,8 @@ __data uint8_t ao_flight_adc;
 __pdata int16_t ao_raw_accel, ao_raw_accel_prev, ao_raw_pres;
 __pdata int16_t ao_accel_2g;
 
+__xdata uint8_t ao_flight_force_idle;
+
 /* Accelerometer calibration
  *
  * We're sampling the accelerometer through a resistor divider which
@@ -221,8 +223,10 @@ ao_flight(void)
 
                        /* Go to pad state if the nose is pointing up */
                        ao_config_get();
-                       if (ao_config.accel_plus_g != 0 && ao_config.accel_minus_g != 0 &&
-                           ao_flight_accel < ao_config.accel_plus_g + ACCEL_NOSE_UP)
+                       if (ao_config.accel_plus_g != 0 &&
+                           ao_config.accel_minus_g != 0 &&
+                           ao_flight_accel < ao_config.accel_plus_g + ACCEL_NOSE_UP &&
+                           !ao_flight_force_idle)
                        {
                                /* Disable the USB controller in flight mode
                                 * to save power