]> git.donarmstrong.com Git - tmk_firmware.git/blobdiff - keyboard/hhkb_rn42/rn42/battery.h
Merge remote-tracking branch 'tmk/master' into cub_layout
[tmk_firmware.git] / keyboard / hhkb_rn42 / rn42 / battery.h
diff --git a/keyboard/hhkb_rn42/rn42/battery.h b/keyboard/hhkb_rn42/rn42/battery.h
new file mode 100644 (file)
index 0000000..180d4dc
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef POWER_H
+#define POWER_H
+
+#include <stdint.h>
+#include <stdbool.h>
+
+typedef enum {
+    FULL_CHARGED,
+    CHARGING,
+    DISCHARGING,
+    LOW_VOLTAGE,
+    UNKNOWN,
+} battery_status_t;
+
+typedef enum {
+    LED_CHARGER = 0,
+    LED_ON,
+    LED_OFF,
+    LED_TOGGLE,
+} battery_led_t;
+
+/* Battery API */
+void battery_init(void);
+void battery_led(battery_led_t val);
+bool battery_charging(void);
+uint16_t battery_voltage(void);
+battery_status_t battery_status(void);
+
+#define BATTERY_VOLTAGE_LOW_LIMIT       3500
+#define BATTERY_VOLTAGE_LOW_RECOVERY    3700
+// ADC offset:16, resolution:5mV
+#define BATTERY_ADC_OFFSET              16
+#define BATTERY_ADC_RESOLUTION          5
+
+#endif