 Servo drivingservo;
 
 bool m_automatic = false;
-uint32_t last_time = 0;
+uint32_t m_last_telemetry_time = 0;
 
 bool m_button_press = false;
-bool m_button_active = false;
-bool m_last_button_time = 0;
+bool m_button_active = true;
+uint32_t m_last_button_time = 0;
+bool m_countdown = false;
+uint32_t m_countdown_start_time = 0;
+
+uint32_t m_time;
+uint32_t m_last_battery_check_time = 0;
 
 MCDriver driver;
 

		}
	}

	telemetry.time = millis();
	telemetry.ir_left = sharp_left.distance();
	telemetry.ir_right = sharp_right.distance();
	telemetry.ir_front_left = sharp_front_left.distance();

	analogReference (DEFAULT);
	analogReadAveraging(16);
	analogReadResolution(10);

	pinMode(TEENSY_LED, OUTPUT);
	digitalWrite(TEENSY_LED, HIGH);
	pinMode(GREEN_LED, OUTPUT);
	pinMode(RED_LED, OUTPUT);
	pinMode(BATTERY, INPUT);

	pinMode(START_BUTTON, INPUT_PULLUP);
	attachInterrupt(START_BUTTON, button_service, RISING);

	telemetry.header = BC_TELEMETRY;
}
