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.

BQ2084-V150: Communication error with BQ2084-V150

Part Number: BQ2084-V150
Other Parts Discussed in Thread: BQ40Z50, BQEVSW

Hi Team,

Our customer encountered a communication error with BQ2084-V150 through SMBUS. According to our customer,

At page 31 of this DS https://www.ti.com/lit/ds/symlink/bq2084-v150.pdf

is stated how the SMBUS communication should look like. Three available process Write Word, Read Word and Block Read.

when I access the register Voltage() (0x09) I get the correct voltage value, so I assume the communication is working.

Now when I try to access the register Manufacturer Access() (0x00) to get a status of the HW, I get two Null bytes back from the bq2084

From my understanding at page 33 of the DS, I first need to use a write command to set into register 0x00 one of the values (command codes) in the table (e.g. 0x001 for device Type)

then using a read command on the same register 0x00 I should get the Device Type back, or any other value I requested before. Unfortunately this doesn`t happen.

I am using the dual set like shown in page 63 to create a Battery Management System, but the output wont "turn on".

so I was trying to access the IC using the SMBUS to read the status and debug the problem, but as I said it doesn`t work as expected.

This is the trace of the register 0x00 access. It is made up of two parts: write and read sequence. At the most right you can see how I receive 2x 0x00 Bytes as a product type, which doesn`t make sense.

Regards,

Danilo

  • Hello Danilo,

    Due to the age of this product our debug capabilities are limited. If this is a new design I would highly recommend switching to our newer releases like the BQ40Z50.

    This part is kept in production for projects that implemented the part many years ago.

    The process to read the Manufacturer status would require sending the command 0x0004, then reading from 0x00. The manufacturer access is an extended form to provide more information not defined by the SMBus standard. It is not the same as reading the voltage or current.

    So it would be write word, command 0x00, data 0x0004. Then read word with cmd 0x00.

    Sincerely,

    Wyatt Keller

  • Hi Wyatt,

    We have received this feedback from our customer.

    Thank you for your reply.
    Unfortunately The chip you recommended does not seem to be available for purchase. Because of the upcoming deadline we must stick to the current solution.
    According to your description I have tried to access "Device Type" (0x0001) as stated on the page 33 of the Datasheet (https://www.ti.com/lit/ds/symlink/bq2084-v150.pdf?HQS=dis-mous-null-mousermode-dsf-pf-null-wwe&ts=1639512519432&ref_url=https%253A%252F%252Fwww.mouser.de%252F). However I simply get two 0x00 Bytes from the IC.
    I write to the register 0x00 the command 0x0001. Then I read from the command 0x00 and only get the 0x00 Bytes back. Please see the pictures attached to see all the communication events for a better understanding.
    The same happens when I try to access  Manufacturer Status by using the command 0x00004.
    Do you have any explanation, what might be causing the issue? I would like to notice once again that the voltage interrogation works great!
    Regards,
    Danilo
  • Hello Danilo,

    The BQ40Z50 is in backorder, but the toolchain is maintained (BQEVSW and other older platforms are no longer maintained) and newer platforms allow us much more debugging capabilities.

    It looks to me from the images shared that they are not performing the correct sequence, it should be SMBus word write (not block) with command 0x00 and data 0x0001 (device type)

    Then do a SMBus read block with command 0x23. Let me know if this works.

    Sincerely,

    Wyatt Keller