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.

BQ25700AEVM-732: Startup sequence before reading/writing registers

Part Number: BQ25700AEVM-732
Other Parts Discussed in Thread: BQSTUDIO, , EV2400, BQ25700A

Hi,

I am interfacing a BQ25700AEVM-732 module with 32-bit STM microcontroller using SMBus. The device's SMBus 7-bit address is 0x12. I am not able to read any of the registers; not even ManufacturerID (0xFE) register (returns empty packets). It is not an SMBus communication issue, as I have successfully used the same code to read data from a different IC (a fuel gauge). I followed guidelines given in EVM User's guide and I got correct voltage values at different test points. I was also able to read/write values through EV2400 and bqstudio.

Am I supposed to start the code with particular sequence of steps (like writing specific values to specific registers) before doing anything? If not then why does this work with EV2400/bqstudio? Are there any values written to specific registers in the background at the API startup?

Any help is appreciated. Thank you.

 

  • SYT93,

    BQ25700A doesn't require any value written to specific register to start communication.
    The device's SMBus address 0x12 follows the SMBus standard. It is 0001001x. The last bit indicates "Read" or "Write". So, some people call it 09H because the last bit is not an address. Please check your command.

    If you still don't figure the issue, please compare your SDA signal waveform to EVM SDA signal waveform. And then, find out which bit starts the trouble.