SLUUCD5 January 2023 BQ27427
Subclass | Subclass ID | Offset | Type | Name | Value | Unit | ||
---|---|---|---|---|---|---|---|---|
Min | Max | Default | ||||||
Codes | 112 | 0 | H4 | Sealed to Unsealed | 10001 | FFFF FFFF | 8000 8000 | Hex |
The fuel gauge implements a key-access scheme to transition from SEALED to UNSEALED mode. Once SEALED via the associated subcommand, a unique set of two keys must be sent to the fuel gauge via the Control() command to return to UNSEALED mode. The keys must be sent consecutively, with no other data being written to the Control() register in between.
When in the SEALED mode, the CONTROL_STATUS [SS] bit is set; but after the Sealed to Unsealed keys are correctly received by the fuel gauge, the [SS] bit is cleared. The Sealed to Unsealed key has two identical words stored in ROM with a value of 0x8000 8000. Then, Control() should supply 0x8000 and 0x8000 (again) to unseal the part.
After the fuel gauge exits CONFIG UPDATE mode, the fuel gauge will check bit 7 (0x80) in the Update Status register. If bit 7 (0x80) is set, the fuel gauge will be placed into the SEALED state. If the fuel gauge is placed into SEALED mode on the exit of CONFIG UPDATE mode, the fuel gauge will not be allowed to go to the UNSEALED state for 4 seconds upon exiting CONFIG UPDATE mode. Any subcommand greater than 0x001A will restart the 4-second timer.