SLUUCA6 October 2021 BQ27Z746
AltManufacturerAccess() provides a method of reading and writing data in the Manufacturer Access System (MAC). The MAC command is sent via AltManufacturerAccess() by a block protocol. The result is returned on AltManufacturerAccess() via a block read.
Commands are sent by writing to registers 0x00/0x01 or 0x3E/0x3F. 0x3E and 0x3F work the same as 0x00 and 0x01, but are primarily intended for block writes and reads.
Example: Send a MAC Gauging() to enable IT via AltManufacturerAccess().
Example: Read Chemical ID() (0x0006) via AltManufacturerAccess().
It is recommended to send “command only” operations to 0x00 and 0x01, and to set the command for a read back in the same way. The reason for this is that it can always reset any legacy support options that may be in effect; whereas, some legacy support options use 0x3E and 0x3F for other purposes. However, 0x3E and 0x3F can always safely be used for block reads. For backward compatibility, a request of the device number or version reports a value for a read on 0x00/0x01. The response word for the MAC commands DEV and VERSION (0x0001 and 0x0002) should report 0xFFA5 as the legacy response. This is meant as a token to indicate to the host that the real response is on the extended block. “Command only” operations take place immediately after the word write.
Command | Function | Access | Format | Data Read on MACData() | Available in SEALED Mode | Type | Units |
---|---|---|---|---|---|---|---|
0x0001 | DeviceType | R | Block | √ | R | hex | — |
0x0002 | FirmwareVersion | R | Block | √ | R | hex | — |
0x0003 | HardwareVersion | R | Block | √ | R | hex | — |
0x0004 | IFChecksum | R | Block | √ | R | hex | — |
0x0005 | StaticDFSignature | R | Block | √ | R | hex | — |
0x0006 | ChemID | R | Block | √ | R | hex | — |
0x0007 | Prev_MacWrite | R | Block | √ | R | hex | — |
0x0008 | StaticChemDFSignature | R | Block | √ | R | hex | — |
0x0009 | AllDFSignature | R | Block | √ | R | hex | — |
0x000b | ShelfEnable | W | — | — | W | hex | — |
0x000c | ShelfDisable | W | — | — | W | hex | — |
0x0010 | ShutdownMode | W | — | — | W | hex | — |
0x0012 | Reset | W | — | — | — | hex | — |
0x0015 | ShipmodeEnable | W | — | — | W | hex | — |
0x0016 | ShipmodeDisable | W | — | — | W | hex | — |
0x0017 | QMax Day | R | Block | √ | R | U2 | days |
0x001F | ChargeFETToggle | W | — | — | W | hex | — |
0x0020 | DischargeFETToggle | W | — | — | W | hex | — |
0x0021 | Gauging (IT Enable) | W | — | — | — | hex | — |
0x0022 | FET Enable | W | — | — | — | hex | — |
0x0023 | LifetimeDataCollection | W | — | — | — | hex | — |
0x0028 | LifetimeDataReset | W | — | — | — | hex | — |
0x002D | CalibrationMode | W | — | — | — | hex | — |
0x002E | LifetimeDataFlush | W | — | — | — | hex | — |
0x002F | LifetimeDataSpeedUp Mode |
W | — | — | — | hex | — |
0x0030 | SealDevice | W | — | — | — | hex | — |
0x0035 | SecurityKeys | R/W | Block | √ | — | hex | — |
0x0041 | Reset | W | — | — | — | hex | — |
0x0047 | TambientSync | W | — | — | W | hex | — |
0x004A | Device Name | R | Block | √ | R | hex | — |
0x004B | Device Chem | R | Block | √ | R | hex | — |
0x004C | Manufacturer Name | R | Block | √ | R | hex | — |
0x004D | Manufacture Date | R/W | Block | √ | R | hex | — |
0x004E | Serial Number | R/W | Word | √ | R | hex | — |
0x0050 | SafetyAlert | R | Block | √ | R | hex | — |
0x0051 | SafetyStatus | R | Block | √ | R | hex | — |
0x0054 | OperationStatus | R | Block | √ | R | hex | — |
0x0055 | ChargingStatus | R | Block | √ | R | hex | — |
0x0056 | GaugingStatus | R | Block | √ | R | hex | — |
0x0057 | ManufacturingStatus | R | Block | √ | R | hex | — |
0x0060 | LifetimeDataBlock1 | R | Block | √ | R | Mixed | Mixed |
0x0061 | LifetimeDataBlock2 | R | Block | √ | R | Mixed | Mixed |
0x0062 | LifetimeDataBlock3 | R | Block | √ | R | U4 | s |
0x0063 | LifetimeDataBlock4 | R | Block | √ | R | Mixed | Mixed |
0x0065 | LifetimeDataBlock6 | R | Block | √ | R | Mixed | Mixed |
0x0065 | LifetimeDataBlock7 | R | Block | √ | R | Mixed | Mixed |
0x0067 | LifetimeDataBlock8 | R | Block | √ | R | Mixed | Mixed |
0x0068 | LifetimeDataBlock9 | R | Block | √ | R | Mixed | Mixed |
0x0069 | LifetimeDataBlock10 | R | Block | √ | R | Mixed | Mixed |
0x006A | LifetimeDataBlock11 | R | Block | √ | R | Mixed | Mixed |
0x006B | LifetimeDataBlock12 | R | Block | √ | R | Mixed | Mixed |
0x0070 | ManufacturerInfo | R/W | Block | √ | R | hex | — |
0x0071 | DAStatus1 | R | Block | √ | R | Mixed | Mixed |
0x0072 | DAStatus2 | R | Block | √ | R | Mixed | Mixed |
0x0073 | ITStatus1 | R | Block | √ | R | Mixed | Mixed |
0x0074 | ITStatus2 | R | Block | √ | R | Mixed | Mixed |
0x0075 | ITStatus3 | R | Block | √ | R | Mixed | Mixed |
0x0077 | FCC_SOH | R | Block | √ | R | hex | — |
0x0078 | Filtered Capacity | R | Block | √ | R | hex | Mixed |
0x007A | ManufacturerInfoB | R/W | Block | √ | R | hex | — |
0x007B | ManufacturerInfoC | R/W | Block | √ | R/W | hex | — |
0x0097 | FET Control Override | W | Word | — | W | hex | — |
0x00A3 | System Reset Enable | W | — | — | W | — | — |
0x00A4 | System Reset | W | — | — | W | — | — |
0x00B1 | BattSenseOutput | R/W | Block | √ | R | hex | — |
0x00E0 | RaTableCell0 | R | Block | √ | R | I2 | 2–10 Ω |
0x0F00 | ROMMode | W | — | — | — | hex | — |
0x4000 - 0x5FFF | DataFlashAccess | R/W | Block | √ | — | hex | Mixed |
0x7C40 | SwitchToHDQ | W | — | — | — | hex | — |
0xF080 | ExitCalibrationOutput | R/W | Block | √ | — | hex | — |
0xF081 | OutputCCandADCforCalibration | R/W | Block | √ | — | hex | — |
0xF083 | OutputTemperatureCal | R/W | Block | √ | — | hex | — |
0xF0A0 | ProtectorCalibration | R/W | Block | √ | — | hex | — |
0xF0A1 | ProtectorImage1 | R/W | Block | √ | — | hex | — |
0xF0A2 | ProtectorImage2 | R/W | Block | √ | — | hex | — |
0xF0A3 | ProtectorImageSave | R/W | Block | √ | — | hex | — |
0xF0A4 | ProtectorImageLock | R/W | Block | √ | — | hex | — |
0xF0A5 | ProtectorFactoryConfig | R | Block | √ | — | hex | — |