#define abs(a) ((a) < 0 ? -(a) : (a))
+#if !HAS_BARO
+// #define DEBUG_ACCEL_ONLY 1
+#endif
+
void
ao_flight(void)
{
#if HAS_ACCEL
if (ao_config.accel_plus_g == 0 ||
ao_config.accel_minus_g == 0 ||
- ao_ground_accel < ao_config.accel_plus_g - ACCEL_NOSE_UP ||
- ao_ground_accel > ao_config.accel_minus_g + ACCEL_NOSE_UP
+ ao_ground_accel < (accel_t) ao_config.accel_plus_g - ACCEL_NOSE_UP ||
+ ao_ground_accel > (accel_t) ao_config.accel_minus_g + ACCEL_NOSE_UP
#if HAS_BARO
|| ao_ground_height < -1000 ||
ao_ground_height > 7000
break;
+#if DEBUG_ACCEL_ONLY
case ao_flight_invalid:
- printf("+g %d -g %d ga %d +g-NU %d -g+NU %d\n",
- ao_config.accel_plus_g,
- ao_config.accel_minus_g,
- ao_ground_accel,
- ao_config.accel_plus_g - ACCEL_NOSE_UP,
- ao_config.accel_minus_g + ACCEL_NOSE_UP);
- break;
-#if 0
case ao_flight_idle:
- printf("+g %d ga %d sa %d accel %ld speed %ld\n", ao_config.accel_plus_g, ao_ground_accel, ao_sample_accel, ao_accel, ao_speed);
+ printf("+g %d ga %d sa %d accel %ld speed %ld\n",
+ ao_config.accel_plus_g, ao_ground_accel, ao_sample_accel, ao_accel, ao_speed);
break;
#endif
if (ao_height > AO_M_TO_HEIGHT(20)
#if HAS_ACCEL
|| (ao_accel > AO_MSS_TO_ACCEL(20)
-#if HAS_BARO
- && ao_speed > AO_MS_TO_SPEED(5)
-#endif
-)
+ && ao_speed > AO_MS_TO_SPEED(5))
#endif
)
{