Gracias a un comentario de un internauta en un post sobre Smart Batteries, ahora disponemos de un método aun más cómodo para tener soporte en Ubuntu con este tipo de baterias tipicas de los modelos:
*) Acer Extensa 3002WLMi
*) Acer TravelMate 4000LMi
*) Acer TravelMate 4000WLMi
*) Acer TravelMate 4001LMi
*) Acer TravelMate 4001WLMi
*) Acer TravelMate 4002LMi
*) Acer TravelMate 4502LMi
*) Acer TravelMate 4502WLMi
*) Acer TravelMate 2303LCi
*) Acer TravelMate 3201XCi
*) Acer TravelMate 3202XCi
Para conseguir este soporte y poder visualizar el estado de nuestra batería, es necesario crear un DSDT para modificar la información acerca del ACPI que da el hardware. Los pasos a seguir son:
- Instalar las utilidades necesarias para contruir el compilador de intel:
aptitude install build-essential flex-old bison
- Descargar el compilador de Intel, concretamente la version 2005-03-09 dando que las más recientes no funcionan correctamente.
- Construimos el compilador:
tar -zxvf acpica-unix-20050309.tar.gz
cd acpica-unix-20050309/compiler/
make
sudo cp iasl /usr/local/bin
- Descargamos los parches que habilitarán el soporte para la batería en cuestión. La versión actual es sbs-cm-20050328.tar.bz2
- Preparamos el nuevo DSDT:
tar -jxvf sbs-cm-20050328.tar.bz2
cd sbs-cm-20050328
sudo -s
cat /proc/acpi/dsdt > dsdt.dat
iasl -d dsdt.dat
# Solo ejecutar uno de los 2 comandos siguientes:
patch < acer-tm4xxx-sbs-cm.diff # Para modelos 4xxx como 4002WLMi
patch < acer-tm32xx-sbs-cm.diff # Para modelos 32xx
iasl dsdt.dsl
- Ahora ya tenemos el DSDT.aml que copiaremos e integraremos en el initrd:
cp DSDT.aml /etc/mkinitrd/DSDT
dpkg-reconfigure linux-image-2.6.10-5-386
- Reiniciamos.
Si todo ha ido correctamente observaremos que al pasar grub, ahora el sistema tarda un poco más en arrancar pero en contrapartida podremos consultar el estado de nuestra batería mediante el applet del panel de GNOME, o mediante consola con el comando “acpi”.
Este método demuestra lo bien preparada que viene Ubuntu ya que soporta DSDT de serie y por otro lado, nos facilita tremendamente la vida dado que aunque haya actualizaciones del kernel de Ubuntu, no tendremos que tocar absolutamente nada para mantener el soporte para nuestra batería.
Actualización Tengo problemas con mi tarjeta wireless desde que tengo soporte para la bateria, se desconecta de ciertas redes y no es posible volver a conectar a no ser que reinicie. La solución ha sido editar el fichero ‘/boot/grub/menu.lst’ y añadir ‘pci=noacpi’ en la línea:
kopt=root=/dev/hda6 ro pci=noacpi
Y ejecutar:
update-grub