diff options
-rw-r--r-- | firmware/powermgmt.c | 12 | ||||
-rw-r--r-- | firmware/powermgmt.h | 4 |
2 files changed, 14 insertions, 2 deletions
diff --git a/firmware/powermgmt.c b/firmware/powermgmt.c index 8fdb168e50..026bfe47c0 100644 --- a/firmware/powermgmt.c +++ b/firmware/powermgmt.c @@ -73,9 +73,15 @@ static int poweroff_idle_timeout_value[15] = static int percent_to_volt_decharge[11] = /* voltages (centivolt) of 0%, 10%, ... 100% when charging disabled */ { +#ifdef HAVE_LIION + /* values guessed, see http://www.seattlerobotics.org/encoder/200210/LiIon2.pdf */ + /* until someone measures voltages over a decharging cycle */ + 260, 280, 300, 320, 340, 350, 360, 370, 380, 390, 400 +#else /* NiMH */ /* original values were taken directly after charging, */ /* but it should show 100% after turning off the device for some hours, too */ 450, 481, 491, 497, 503, 507, 512, 514, 517, 525, 540 /* orig. values: ...,528,560 */ +#endif }; void set_battery_capacity(int capacity) @@ -99,7 +105,13 @@ int charge_state = 0; /* at the beginning, the charger static int percent_to_volt_charge[11] = /* voltages (centivolt) of 0%, 10%, ... 100% when charging enabled */ { +#ifdef HAVE_LIION + /* values guessed, see http://www.seattlerobotics.org/encoder/200210/LiIon2.pdf */ + /* until someone measures voltages over a charging cycle */ + 260, 290, 320, 340, 360, 370, 380, 390, 400, 410, 420 +#else /* NiMH */ 476, 544, 551, 556, 561, 564, 566, 576, 582, 584, 585 +#endif }; void enable_trickle_charge(bool on) diff --git a/firmware/powermgmt.h b/firmware/powermgmt.h index 884e9772e5..a3e212b63a 100644 --- a/firmware/powermgmt.h +++ b/firmware/powermgmt.h @@ -21,13 +21,13 @@ #ifndef SIMULATOR -#ifdef HAVE_FMADC /* FM Recorder, LiIon */ +#ifdef HAVE_LIION /* FM Recorder, LiIon */ #define BATTERY_LEVEL_SHUTDOWN 260 /* 2.60V */ #define BATTERY_LEVEL_EMPTY 265 /* 2.65V */ #define BATTERY_LEVEL_DANGEROUS 280 /* 2.80V */ #define BATTERY_LEVEL_FULL 400 /* 4.00V */ -#else /* Recorder, NiCd */ +#else /* Recorder, NiMH */ #define BATTERY_LEVEL_SHUTDOWN 450 /* 4.50V */ #define BATTERY_LEVEL_EMPTY 465 /* 4.65V */ #define BATTERY_LEVEL_DANGEROUS 475 /* 4.75V */ |