This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

I2C read only returns random data

Other Parts Discussed in Thread: BQ27421-G1

Hello

I try to read Voltage from a BQ27421, but it only returns random data it seems.  I use address 0xAA for writing and 0xAB for reading.


When I try to read the Voltage register I send 0xAA 0x04 over I2C,  followed by 0xAB and a couple of I2C read request. At this point BQ27421 returns random data, but then after some rounds of trying to read register 0x04 it just returns 0xFF on all read requests. It correctly acknowledges all I2C read and write requests.


Any idea what's going on?

I try to toggle GPOUT to reset it, but that has no effect.

Can you please confirm that the correct way of reading Voltage is by writing 0xAA 0x04 over I2C followed by a two byte I2C read? The manual is confusing as it states that the bq27421-G1 is using a two byte standard command using a command code pair, but in order to read the Voltage register you only send a single byte 0x04.