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.

TCA6424A: Connection to I2C of the TMDSCNCD28379D control card

Part Number: TCA6424A
Other Parts Discussed in Thread: TMDSCNCD28379D,

Hello,

I am designing a PCB that connects to the TMDSCNCD28379D via the 180pin HSEC connector. I have also posted this question in the TMDSCNCD28379D forum, and was recommended to as in this forum too.

I need more GPIOs than what is available on the HSEC connector, and so I would like to add a port expander, and was looking at using the I2C interface (GPIOs 32 and 33). I am considering using TCA6424A for this to provide additional 24 IOs.

Few questions:

1. The SDA and SCL lines, and the INTn signals of the TCA6424A should be pulled up to the Vcc of the host. However the HSEC connector provides no access to the 3.3V generated on the control card. Is it OK to pull up to a local 3.3V that I generate on my own PCB?

2. Is it possible to connect two TCA6424A chips in parallel on the same I2C port - one configured as ADDR=0 and the other as ADDR=1?

3. Is it OK to tie the RESETn of the TCA6424A to the DEVICE_RESET pin on the HSEC connector (this pin is asserted by the TMDSCNCD28379D control card).

Thanks

Uri

  • Hey Uri,

    1. The SDA and SCL lines, and the INTn signals of the TCA6424A should be pulled up to the Vcc of the host. However the HSEC connector provides no access to the 3.3V generated on the control card. Is it OK to pull up to a local 3.3V that I generate on my own PCB?

    The device just needs a power rail, it doesn't matter where it comes from. This is fine.  In most cases this should be fine but there could be some situations where the main board and the control card both have pull up resistors where the pull up voltage is slightly different potentials (like Vcc1= 3.2V and Vcc2=3.35V) and the difference while in idle allows for leakage current from one potential to another. If the other side cannot sink the additional leakage current then the voltage could build up (I've seen this occur maybe twice in my career of  supporting I2C, so it's unlikely). There are a few approachs you could do to design for this possibility.

    1) Use schottky diodes in front of the pull up resistors on the control card and the main card (The idle voltage will be Vcc-Vfd but this should be okay as long as the V_idle is larger than ViH)

    2) Provide a path for the leakage current directly on both Vcc rails by adding a weak resistor to ground (200k~400k). You can leave DNP and only use it if you see the power rails lose regulation. (you would do this on both boards)

    3) Use a weak pull down resistor on the I2C bus (200k+). This would also provide a leakage path so the rails don't lose regulation. (you could leave this as a DNP resistor and this would only need to be done on one of the boards (control OR main).

    2. Is it possible to connect two TCA6424A chips in parallel on the same I2C port - one configured as ADDR=0 and the other as ADDR=1?

    Yes, this was the purpose of I2C when it was created. To allow for an easy drop in solution of ICs to talk to each other. As long as they all have unique addresses (Like how you suggest) this will work.

    3. Is it OK to tie the RESETn of the TCA6424A to the DEVICE_RESET pin on the HSEC connector (this pin is asserted by the TMDSCNCD28379D control card).

    This should be fine, holding the reset high will allow for the device to function. So just make sure the 'device reset pin' is high when you want to talk to the TCA6424A.

    -Bobby

  • Uri,

    I've edited my earlier response on your first question so please be aware. If you have further questions, don't hesitate to ask.

    -Bobby

  • Thanks Bobby.

    Understood.

    Regards

    Uri