2
\$\begingroup\$

I'm designing a backlight board with two Texas Instruments TPS61177A. Both chips will work in tandem.

Two TPS61177A are connected to single I2C master.

About TPS61177A: The device has only six I2C registers to set values. Since two TPS61177A will be used in tandem with the same LED display, the same values will be written to both chips.

Requirement is to:

  1. Read and write max LED current register. The register address is 0xA1 and the value to be written is 0x03 (same value to both devices).

  2. Read back the value of 0xA1 register (will be be also same vales).

So my question is, since these two I2C slaves will work in tandem and have same values written to them, will this work or cause any I2C clash when writing or reading from the I2C master?

\$\endgroup\$
2
  • 1
    \$\begingroup\$ I'm designing a backlight board - if I understand you correct it's only one board, so why not make it with one IC? \$\endgroup\$
    – MiNiMe
    Sep 9, 2023 at 7:15
  • \$\begingroup\$ If you "know" that the value read back from the 0xA1 registers will be the same, then you must already know what that value will be. If you already know what the value will be, then why bother reading it? \$\endgroup\$
    – brhans
    Sep 9, 2023 at 11:25

1 Answer 1

7
\$\begingroup\$

Because I2C uses open-collector drivers, there is no harm for multiple devices to the driving the bus at the same time.

Since you are writing the same values to the same registers on both target devices, this will work. However, if either chip fails and tries to NACK a write (which is not driving the ACK bit), it will be ignored (since the other one is ACKing). Thus, the failure will be undetectable.

When you read from the target devices, they will both drive the SDA line low for zeros and you will read zero bits if ether target device writes zeros. Again, single NACKs will not be detectable.

Summary: yes, this will work but single failures will be undetectable and reading back values may be problematic. For these, reasons, I recommend against this for a production product unless low cost is an absolute necessity.

The recommended method is to use a 2-channel I2C mux, such as the PCA9540B to allow the two TPS61177A chips to be separately addressed.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.