- ao_log_scan();
-
- while (!ao_log_running)
- ao_sleep(&ao_log_running);
-
-#if HAS_FLIGHT
- log.type = AO_LOG_FLIGHT;
- log.tick = ao_sample_tick;
- log.u.flight.idle_pressure = ao_idle_pressure;
- log.u.flight.idle_thrust = ao_idle_thrust;
- log.u.flight.flight = ao_flight_number;
- ao_log_firetwo(&log);
-#endif
-
- /* Write the whole contents of the ring to the log
- * when starting up.
- */
- ao_log_data_pos = ao_data_ring_next(ao_data_head);
- next_other = next_sensor = ao_data_ring[ao_log_data_pos].tick;
- ao_log_state = ao_flight_startup;
- for (;;) {
- /* Write samples to EEPROM */
- while (ao_log_data_pos != ao_data_head) {
- log.tick = ao_data_ring[ao_log_data_pos].tick;
- if ((int16_t) (log.tick - next_sensor) >= 0) {
+ do {
+ ao_log_scan();
+
+ while (!ao_log_running)
+ ao_sleep(&ao_log_running);
+
+ log.type = AO_LOG_FLIGHT;
+ log.tick = ao_time();
+ log.u.flight.idle_pressure = ao_idle_pressure;
+ log.u.flight.idle_thrust = ao_idle_thrust;
+ log.u.flight.flight = ao_flight_number;
+ ao_log_firetwo(&log);
+
+ /* Write the whole contents of the ring to the log
+ * when starting up.
+ */
+ ao_log_data_pos = ao_data_ring_next(ao_data_head);
+ ao_log_state = ao_flight_startup;
+ for (;;) {
+ /* Write samples to EEPROM */
+ while (ao_log_data_pos != ao_data_head) {
+ log.tick = ao_data_ring[ao_log_data_pos].tick;