¿Existe un protocolo de bus I2C / SM estándar para paquetes de baterías de portátiles?

5

Estoy asumiendo el desafío de construir una computadora portátil personalizada, con un paquete de baterías personalizado, sé que el paquete de baterías tiene que comunicarse a través de un puerto I2C / SM en la placa base, pero no sé cómo hacer el los bios / os lo reconocen. ¿Hay una dirección I2C particular y un protocolo estándar encima de I2C para comunicar información del estado de la batería? (si es así, ¿dónde puedo encontrar la documentación)? ¿O si no hay un estándar, el protocolo es propiedad exclusiva del fabricante del BIOS y luego el sistema operativo lo lee desde el BIOS o qué? Estaré golpeando a I2C desde el microcontrolador que regula la batería para que pueda hacer lo que sea necesario.

    
pregunta S E

2 respuestas

6

Como ya sabe acerca de SMBus, ¿por qué no buscar en la especificación de datos de batería inteligente o en Especificación del cargador de batería inteligente , ya que esto es lo que tendrá que simular. Sin embargo, esto no describirá si el chip de administración del sistema tiene algunas características adicionales que no están documentadas ;-)

    
respondido por el Tom L.
3

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.

    
respondido por el dim

Lea otras preguntas en las etiquetas