Battery

From WebOS Internals
Revision as of 06:42, 19 September 2010 by Somline (talk | contribs)
Jump to navigation Jump to search

Here I will describe how the chip inside the battery of pre and pixi works. I used this information for the app Dr.Battery.
This is just the start. I'm still working on it.

Intro

The Pre and the Pixi are using the same battery. The battery includes a chip providing WebOS with all information about the condition of the battery.
The battery communicates with the operating system through a "Dallas 1-Wire® interface".
The chip also includes a nonvolatile storage. All needed informations are stored within this storage. WebOS doesn't store any information about the battery on the device.

Chip inside the battery

The battery is using the "Dallas Semiconductor Maxim DS2784 1-Cell Stand-Alone Fuel Gauge IC with Li+ Protector and SHA-1".
The manual of the chip can be found here: Manual of the DS2784

Features of the chip taken from the manual:

  • Precision Voltage, Temperature, and Current Measurement System
  • Available Capacity Estimated from Coulomb Count, Discharge Rate, Temperature, and Cell Characteristics
  • Estimates Cell Aging Using Learn Cycles
  • Uses Low-Cost Sense Resistor
  • Allows for Calibration of Gain and Temperature Coefficient
  • Li+ Safety Circuitry—Overvoltage, Undervoltage, Overcurrent, Short-Circuit Protection
  • Programmable Safety Thresholds for Overvoltage and Overcurrent
  • Authentication Using SHA-1 Algorithm and 64-Bit Secret
  • 32-Byte Parameter EEPROM
  • 16-Byte User EEPROM
  • Dallas 1-Wire Interface with 64-Bit Unique ID
  • Tiny, Pb-Free, 14-Pin TDFN Package Embeds Easily in Battery Packs Using Thin Prismatic Cells

Interface used by WebOS

The communication with the battery is done by the kernel device driver "w1_ds2784.c" written by palm.
At boottime webOS creates a directory structure in "/sys/devices/w1_bus_master1" with character device files.
An application is able to read and write to and from the battery through these "files".

Registers accessible trough the interface

Aging Estimation vs. Calibration

Third party batteries