diff --git a/firmware/drivers/power.c b/firmware/drivers/power.c index 9811d85c8e..1228942af1 100644 --- a/firmware/drivers/power.c +++ b/firmware/drivers/power.c @@ -51,6 +51,11 @@ int battery_level(void) return ((level-BATTERY_LEVEL_EMPTY) * 100) / BATTERY_RANGE; } +bool battery_level_safe(void) +{ + return adc_read(ADC_UNREG_POWER) > BATTERY_LEVEL_DANGEROUS; +} + void charger_enable(bool on) { #ifdef ARCHOS_RECORDER diff --git a/firmware/drivers/power.h b/firmware/drivers/power.h index 497d129e8b..f921b67d5e 100644 --- a/firmware/drivers/power.h +++ b/firmware/drivers/power.h @@ -34,4 +34,7 @@ void power_off(void); /* Returns battery level in percent */ int battery_level(void); +/* Tells if the battery level is safe for disk writes */ +bool battery_level_safe(void); + #endif