SLUUCA6 October 2021 BQ27Z746
The gauge supports the standard I2C read, incremental read, one-byte write, quick read, and functions. The 7-bit device address (ADDR) is the most significant 7 bits of the hex address and defaults to 1010101, or 0x55. The 8-bit device address therefore defaults to 0xAA or 0xAB for write or read, respectively.
The 7-bit device address can be configured by setting Alt I2C Address to the desired address and Alt I2C Addr Chk to the 2's complement of Alt I2C Address. If Alt I2C Address and Alt I2C Addr Chk are updated, a reset is required for the gauge to use the new device address. However, the gauge defaults to 0x55 if Alt I2C Address is 0x00 or 0xFF or Alt I2C Addr Chk is not set correctly.
(S = Start, Sr = Repeated Start, A = Acknowledge, N = No Acknowledge, and P = Stop)
The quick read returns data at the address indicated by the address pointer. The address pointer, a register internal to the I2C communication engine, increments when data is acknowledged by the fuel gauge or the I2C master. Quick writes function in the same way and are a convenient means of sending multiple bytes to consecutive command locations (such as two-byte commands that require two bytes of data).
Attempt to write a read-only address (NACK after data sent by master):
Attempt to read an address above 0x7F (NACK command):
Attempt at incremental writes (NACK all extra data bytes sent):
Incremental read at the maximum allowed read address: