This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF9160 SMBus block read failing?

I'm trying to read the Device Name from address 0x21 on a BQ40Z80 fuel gauge, using my nRF9160 chip, connected via SMBus.

When polling the address space, I nicely get an ACK from 0x0B, which is the default address of the BQ40Z80. Reading words is working just fine, I can read the default values.

However, address 0x21 has to be read using a SMBus block read, which does not work. In fact, none of the addresses requiring SMBus block reads are working.

Using my logic analyzer I captured this, which to me looks like a valid SMBus block read (the green dots represent STARTs), but the result is thoroughly off (I would expect 'BQ40Z80'):

Could anyone point out why this is not working?

Parents Reply Children
No Data
Related