Ich baue einen Laptop mit einem benutzerdefinierten Akku. Ich weiß, dass das Paket über einen I2C/SM-Port auf dem Motherboard kommunizieren muss, aber ich weiß nicht, wie ich das BIOS/OS dazu bringen kann, es zu erkennen. Gibt es eine bestimmte I2C-Adresse und ein Standardprotokoll zusätzlich zu I2C für den Austausch von Batteriezustandsinformationen? Wenn ja - wo finde ich die Dokumentation dafür? Wenn nein - ist das Protokoll nur proprietär für den BIOS-Hersteller und das Betriebssystem liest es dann aus dem BIOS? Ich werde I2C vom Mikrocontroller bitbangen, der die Batterie reguliert, damit ich tun kann, was immer nötig ist.
Da Sie den SMBus bereits kennen, sollten Sie sich die Smart Battery Data Specification oder die Smart Battery Charger Specification ansehen , da Sie diese simulieren müssen. Dies wird jedoch nicht beschreiben, ob der System Management Chip einige zusätzliche Funktionen hat, die undokumentiert sind ;-)
Es gibt keine wirkliche Norm. [Bearbeiten: Da liege ich falsch - siehe andere Antwort]
Die meisten Batterien werden jedoch mehr oder weniger auf die gleiche Weise hergestellt: Sie haben einen I2C-EEPROM-Chip (häufig einen Industriestandard-Chip), der alle statischen Informationen über die Batterie enthält (Modell, Seriennummer, Herstellungsdatum, Kapazität usw. ..), und ein weiterer Chip namens "Batterie-Gasanzeige" oder "Batterie-Kraftstoffanzeige", der den tatsächlichen Ladezustand und alle dynamischen Dinge überwacht.
TI bietet eine ganze Reihe von Batteriemesschips an: http://www.ti.com/lsds/ti/power-management/battery-fuel-gauge-overview.page . Wahrscheinlich enthält der Akku Ihres Laptops einen solchen Chip.
Im Grunde weiß also nur der Laptop-Hersteller genau, wie er mit dem Akku kommuniziert, aber alles basiert normalerweise auf weit verbreiteten, dokumentierten Chips (na ja, es könnte auch einige zusätzliche MCU mit proprietärer Firmware geben, die sich schließlich um zusätzliche Dinge kümmern ). Wenn Sie also eine Batterie zurückentwickeln müssen, haben Sie möglicherweise eine gewisse Chance, tatsächlich erfolgreich zu sein. Hier ist ein Dokument, das interessante Informationen liefert: Battery Firmware Hacking
Nun zum Software-Teil: Tatsächlich nimmt das Unternehmen, das das BIOS erstellt, basierend auf den Informationen des Laptop-/Batterieherstellers alle relevanten I2C-Nachrichten in das BIOS selbst auf, und das Betriebssystem fragt das BIOS, wenn es dies wissen muss.
SE
SE
schwach
SE
Tom L.