+void init_battery();
+unsigned char battery_gauge();
+
+/* control.c */
+extern pattern_t on_pattern[];
+typedef union {
+ unsigned char any_flag;
+ struct {
+ unsigned char booting : 1;
+ unsigned char braking : 1;
+ unsigned char err_battery : 1;
+ unsigned char err_pwmled0 : 1;
+ unsigned char err_pwmled1 : 1;
+ unsigned char err_pwmled2 : 1;
+ };
+} err_flags_t;
+extern volatile err_flags_t err_flags;
+
+void init_control();
+void brake_on();
+void brake_off();
+void toggle_dim_mode();
+void set_panic_mode();
+pattern_t *pwmled_pattern_select();
+pattern_t *status_led_pattern_select();
+pattern_t *illumination_led_pattern_select();
+pattern_t *laser_pattern_select();
+void pwmled_select_brightness();