No hay un estándar real. [Editar: Estoy equivocado en eso - ver otra respuesta]
Sin embargo, la mayoría de las baterías se fabrican más o menos de la misma manera: tienen un chip I2C EEPROM (a menudo un estándar de la industria) que contiene toda la información estática sobre la batería (modelo, número de serie, fecha de fabricación, capacidad). , etc ...), y otro chip llamado "indicador de gas de la batería" o "indicador de combustible de la batería" que controla el nivel de carga real y todas las cosas dinámicas.
TI tiene toda una gama de chips de medidores de batería disponibles: enlace . Es probable que la batería de su computadora portátil contenga tal chip.
Básicamente, solo el fabricante de computadoras portátiles sabe exactamente cómo comunicarse con la batería, pero generalmente todo se basa en chips documentados y ampliamente disponibles (bueno, también puede haber algún MCU adicional con firmware propietario que cuide de más cosas, eventualmente). Por lo tanto, si debe realizar una ingeniería inversa de una batería, es posible que tenga alguna posibilidad de tener éxito. Aquí hay un documento que proporciona información interesante: Hacking de firmware de la batería
Ahora, con respecto a la parte del software: de hecho, la compañía que fabrica el BIOS, según la información proporcionada por el fabricante de la computadora portátil / batería, incluye todos los mensajes I2C relevantes en el propio BIOS y el sistema operativo le pregunta al BIOS cuando lo necesita. saber.