The powersave daemon defines three battery states:
The user can set the limits when a battery state changes in the variables (default values): POWERSAVED_BATTERY_WARNING=12 POWERSAVED_BATTERY_LOW=7 POWERSAVED_BATTERY_CRITICAL=2 in the /etc/sysconfig/powersave/battery file. Where the remaining capacity should be highest for the warning and lowest for the critical state.
You can specify an action what should happen when a battery state is sub-ceded (see Events) in the /etc/sysconfig/powersave/events file.
Asynchronous notification (/proc/acpi/battery/*/alarm) through ACPI battery alarm interface prevents daemon of polling battery. On many systems it resolves in a high CPU load because of bad hardware solutions if battery information is read out. If this interface is supported you get the lowest necessary battery read out. If POWERSAVED_FORCE_BATTERY_POLLING="yes" (default) is set to "no", the powersave daemon does not poll the battery anymore, but waits for hardware interrupts and ACPI events respectively.
In rare cases the machine might have a smart battery bus system. This is currently not supported by the Linux kernel. However, a workaround exists which includes to dissassemble and patch your DSDT (see DSDT). Rich Townsend has come up with a sourceforge project (see https://sourceforge.net/projects/sbs-linux/) that provides a patch for your DSDT. Be aware that on most distributions (SUSE Linux, Ubuntu, Mandrake, ...) you do not need to recompile your kernel (you can skip some steps described there), but you can simply add the DSDT to your initrd (see DSDT).
AFAIK a lot new ACER models do use the smart battery subsystems (Others might as well. If you have one you could mail me your machine modell and I will setup a list if I have enough mail@renninger.de).
You find a report/manual how to get smart battery support and other ACPI problems solved for the:
ACER 1680 and 1980 (1681 WLCi) http://www.whoopy.it/linux