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 Incremental Read issue with the bq2750x

I am trying to read all of the Standard Commands from the bq2750x by using a single I2C incremental read (i.e. start at command code 0x00) and read a total of 46 bytes (0x00 .. 0x2d). I seem to have an issue reading the last two words (CycleCount 0x2a/0x2b and StateOfCharge 0x2c/0x2d). These two words are always read as 0xFFFF.

I think the issue has to do with them following the Reserved (RSVD 0x28/0x29) word. If I split up the incremental read to read the first 40 bytes (0x00 .. 0x27) then read the last two words sperately, this seems to work.

Are there any known issues with trying to read all commands with an incremental read (i.e. all 46 bytes including the Reserved word)?

Thanks,
Don ...

 

  • I think all the handheld guys are out starting today but I think I can tell you that you cannot read through reserved words.  I am not 100% sure but I would expect that the data is being nacked on the reserved bytes in the string read and then the parts I2C bus will reset at that point and you just get FF's

  • Don,

    Undefined and invalid registers will return 0xff as data and auto increment is turned off. The sequence that you describe is operating as expected. Starting from register 0x0a will be the only way to read the last registers of the RAM with auto increment.

     

    Regards,

    Michael