P82B715: Can I use P82B715 to extend I2C bus range,and then connect to a TCA9800 B-side?

Part Number: P82B715
Other Parts Discussed in Thread: TCA9800, , P82B96, TCA9509, TMUX154E, TCA9803, TCA9517, TCA9617B

Tool/software:

I want to use P82B715 or P82B96 to extend my I2C bus to about 10m,but the device on remote side work on a voltage of 1.25V,so I need a level shift to change voltage from P82B715/P82B96(3.3V or 5V) to 1.25V,and consider about VOL for remote device,my plan is below:connect a TCA9800 B-side on remote side of P82B715/P82B96,and the A-side of TCA9800 connector to remote I2C device,is this plan can work OK?

the total system topology show below:

  • Hi Zhiqiang, 

    The TCA9800 has the following limitation for B-side voltage: 

    VCCB >= 1.65V.

    You can't flip the buffer so that A-side faces the 1.25V device since this would mean that the internal current source on B-side faces the P82B96. This would also not work. B-side's ICS will be sensitive to the output side of the P82B96/715. 

    The output voltage on Sx/Sy side of P82B96 is 1V max. 

    If TCA9800 A-side VCCA = 3.3V, VIL = 0.3 x 3.3V = 0.99 V. P82B96 VOL should be within spec as long as the max range is not hit (off by about 0.01 V). 

    Since TCA9800 can only go down to 1.65V on B-side, you might consider using TCA9509

    TCA9509 has static voltage offset side on A-side, which can face the 1.25V target device (remove all PU resistors on A-side of this buffer). 

    TCA9509 B-side can face P82B96/715C since VILB = 0.3 x VCCB, VCCB can be 3.3V on TCA9509. 

    Final block diagram would look something like this: 

    What data rate are you attempting to run at? This type of implementation with TMUX154E --> P82B96 --> 10 meter cable --> P82B96 --> TCA9509 --> I2C device introduces significant amounts of prop delay. You might need to reduce the clock speed of your I2C bus in order for this to work and to account for round trip delay. 

    Regards,

    Tyler

  • the remote side I2C device is a removable device,and considering connect the device to other I2C host,the PU resistor is place on the I2C device's PCB,so the PU resistor can not be removed from the I2C bus which I2C device connect to,so I can't use TCA9509 on this design.

    on the reply,your mention that TCA9800 B-side can not work below 1.65V,but on my design,if TCA9800 B-side connect to P82B715/96,the voltage on B-side is 3.3V or 5V,that is higher than 1.65V which meet the requirement of TCA9800 B-side,so I don't understand why the TCA9800 B-side can't work with P82B96/715?

    the speed for I2C is 400kHz,can this speed work on this length?

    finally,I'm seeking a device that can extend I2C bus to 10m+(20m is better),and the i2C device is sensitive to the VOL when work on 1.25V,so I need a level shift can bridge the voltage between I2C range extender and I2C device(integrated with range extender also accepted),and as refer above,the PU resistor on I2C device can't be remove,so do you have suggested device or combine?

  • HI Zhiqiang,

    on the reply,your mention that TCA9800 B-side can not work below 1.65V,but on my design,if TCA9800 B-side connect to P82B715/96,the voltage on B-side is 3.3V or 5V,that is higher than 1.65V which meet the requirement of TCA9800 B-side,so I don't understand why the TCA9800 B-side can't work with P82B96/715?

    TCA9800 B-side cannot connect to the P82B715 due to internal current source. Therefore, it would need to face the 1.25V side. 

    the speed for I2C is 400kHz,can this speed work on this length?

    Possibly, but it depends on the characteristics of the cabling + system level decisions, prop delays from each buffer, etc. 

    finally,I'm seeking a device that can extend I2C bus to 10m+(20m is better),and the i2C device is sensitive to the VOL when work on 1.25V,so I need a level shift can bridge the voltage between I2C range extender and I2C device(integrated with range extender also accepted),and as refer above,the PU resistor on I2C device can't be remove,so do you have suggested device or combine?

    I don't think I have a buffer that can level shift down to that voltage with the limitations given in this e2e. 

    TCA9509 would work, but PU resistors cannot be changed. 

    TCA9803 can work, but B-side needs to face I2C device side, not the buffering extender side with P82B96. The internal current source may not behave well with the large offset voltages of the P82B96. You would need to remove any PU resistors from the B-side of the TCA9803, but I don't think this would work since TCA9509 cannot be used either. 

    I2C is generally not used for long cable transmission, 10m - 20m is difficult for I2C due to open-drain protocol nature of I2C. Consider CAN/RS485, or another differential protocol for longer distance communication. 

    Regards,

    Tyler

  • you mention that I2C is generally not use for long cable transmission,but in some use case(such as HDMI),it need I2C signal to be translate to a long distance,so what is the suggested solution?

    you suggested use CAN/RS485 to extend signal range,but the device only support I2C communication,so do you have device can translate I2C to CAN/RS485 without software?

  • Hi Zhiqiang,

    Are you referring to standard HDMI? 

    I found this example pinout online. Is the HDMI standard including SCL/SDA on the cable? 

    I know in the past that customers have used TCA9509 to solve some use cases with HDMI-DDC standard. I think it is in the same format that I suggested to you. 

    Without removing the PU resistor on A-side of the TCA9509, this will not work. Unless the PU resistance is very weak, > ~50kohm. 

    Regards,

    Tyler

  • yes,the DDCsignal is standard I2C,but in my case,this is just a example,because the DDC in HDMI work on 3.3V,and the VOL is not a very important problem,but in my case,I need to translate 3.3V to device which work on 1.25V,so the VOL become a problem,if I use some device to solve the problem for communicate range(such as LT3960),how can I judge the range extender can or can not work with TCA9800 B-side,or TCA9517 B-side?

    Thx~

  • Hi Zhiqiang, 

    You can tell it won't work based off the limitations of the static voltage offset or current source internal to the device. 

    TCA9800 has had problems in the past with having the ICS (internal current source) facing large offset buffers like P82B96. Usually there are PU resistors on both sides of the large offset buffers, which cannot exist on the B-side of the TCA9800. Also, the VILB = 0.3 x VCCB = 0.99V. VOL(max) of P82B96 can be up to 1 V which is technically outside spec. 

    For TCA9617B, its the VIL requirement in order to propagate a low across the buffer. The b-side has VIL limitations which can make it difficult to transmit a LOW if your output from the buffer extended is too high. P82B96 VOL = 1 V max >>> VIL = 400 mV of TCA9617B. 

    However I looked at LT3960. It output low votlage on SDA/SCL looks <400 mV. You might be able to use TCA9800 B-side facing the differential buffer as long as you remove the PU resistors on b-side: 

    This looks more promising than using P82B96 due to the large VOL offset P82B96 produces. 

    Regards,

    Tyler

  • Thanks very much,I will try this way