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.

TCA9617B: The pullup resistors for I2C lines are lower than 1k ohm

Part Number: TCA9617B

Hi Team,

The values of pullup resistors in Figure 9 of the datasheet of TCA9617B are 240 ohms and 820 ohms. Our customer is concerned if the device would be damaged because for most I2C applications, the values of pullup resistors are in the range of kilo ohms but for this device they are less than 1k ohm.  

Another concern of the customer is that he connected a sensor to an Aardvark board through I2C interface. The Aardvark board is operating at 5V while the sensor is 1.8V so he used TCA9617B to interfaced the two devices. However, there are no output signal at the I2C pins on the A side (1.8V). He had confirmed that the voltage at pin 8 of TCA9617B is 5V while the pins 1 and 5 are 1.8V. He tried another 8-channel voltage level shift, LSF0108PWR, and it worked.

I understand that the TCA9617B can operate up to 5.5V but why it didn't worked in this configuration. 

Regards,

Danilo

  • Hi Danilo,

    In order for the TCA9617B to function properly all devices on the B-side must be able to pull the voltage below the voltage input low contention (VILC) level. For this device it is 0.45V. We recommend that the VOL of any device on the B-side is below 0.4 V. This is what decides the sizing of your pullup resistors. Figure 9 is only there to show a potential setup of the device however the sizing of those resistors will change from system to system. You can read more about how to size the pull up resistors in section 9.2.1.2.1, page 13, of the datasheet. Keep in mind that the resistance you choose that makes VOL less than 0.4V will be the lower limit of your resistance rating. There is an upper limit to how large pull up resistors can be. See the equation below:

    tr= time required to meet I2C spec. For fast mode it is 300ns

    Cb=Capacitance of your bus

    Our customer is concerned if the device would be damaged because for most I2C applications, the values of pullup resistors are in the range of kilo ohms but for this device they are less than 1k ohm.  

    As long as you operate within the absolute maximum ratings of the device you won't do any permanent damage to the device.

    Another concern of the customer is that he connected a sensor to an Aardvark board through I2C interface. The Aardvark board is operating at 5V while the sensor is 1.8V so he used TCA9617B to interfaced the two devices. However, there are no output signal at the I2C pins on the A side (1.8V). He had confirmed that the voltage at pin 8 of TCA9617B is 5V while the pins 1 and 5 are 1.8V. He tried another 8-channel voltage level shift, LSF0108PWR, and it worked.

    I would suggest first checking if the VOL of the device on the B-side is below 0.4V. An easy way to check if the VILC is causing the issue you can tie the I2C lines directly to GND on the B-side and see if it translates over to the A-side. Try that first and we can go from there.

    Best,

    Chris

  • Hi Chris,

    Sorry late to update due to Chinese public holiday.

    Thanks for your fast response and explanation.

    For pull-up resistor selection, it's clear to me.

    For the second item, I will check VOL and VILC, then feedback to you.

    Btw, I noticed one thing that Aardvark output voltage fixed 5V, but I2V signal is 3.3V, previously I ignored this detail, then I try to convert 5.5V to 3.3V with another LDO circuit, then communicate with TCA9617B without pull-up resistor on B side, A side works ok.

    here I had one question, for level shifter, should voltage match with signal level, in this case, on B side both 3.3V, TCA9617B can normally work.

  • Hello,

    The TCA9617B works up to 5.5V so you don't need to convert it down to 3.3V.

    here I had one question, for level shifter, should voltage match with signal level, in this case, on B side both 3.3V, TCA9617B can normally work.

    I'm a little confused by this question maybe you can elaborate what you mean. As long as the A side voltage is less than or equal to the B side voltage then this part will work fine. 

    The A side can operate from 0.8 V to 5.5 V.

    The B side can operate from 2.2 V to 5.5 V.

    So as long as you operate within those ranges and the A side voltage is less than or equal to the B side then everything should work. You also have to make sure that any device connected to the B side can pull the voltage less than the VILC.

    Best,

    Chris

  • Hi Chris,

    Really sorry for my update, these days I have some other things to deal with, I will notice later, thanks for your keeping help and patient reply. Appreciate again.

    Follow your suggestions, tie B side I2C to GND, measured with digital multimeter on A side, SDA sometimes low level or 1.8V, SCL always 1.8V, I think it means B side signal not transfer to A side successfully, btw B side default no solder pull-up resistor because I2C signal comes from Aardvark has enabling internal pull-up resistor.

    then I solder 2.2kohm resistor on B side, still failure transfer.

  • Hello,

    No worries on the delay. Would you be able to provide oscilloscope shots of the test? If possible have SCLA ,SDAA, SCLB, and SDAB on the same shot. Do one shot with normal operation and measure the low voltage on the B side. I would like to see an actual numerical measurement of the low voltage. Then connect the SDAB to ground and show that in the oscilloscope.

    This would be very helpful in debugging the issue.

    Best,

    Chris

  • Hi Chris,

    Please refer below waveform

  • Hi Chris,

    attach another picture that captured during sending I2C command

  • Sorry, one mistake, for the first picture, SDAA/SCLA level is 1.8V not 3.3V, the third picture is captured with SDAB/SCLB connect to ground, so you can see yellow and blue line overlap and back to low level, but SDAA/SCLA is still 1.8V.

  • Are the shots 100 ns/div. I assume it is super zoomed in and that is why I can't see the clock. What speed is the clock running at?

    Does the device work when translating from A to B? So if you pulled the A side low will the B side also be pulled low. Would you be able to provide an oscilloscope shot of this either working or not working?

    If the B side is pulled to GND the A side should permanently sit low. If there is also no translation from A to B side then the device may be damaged.

    Best,

    Chris

  • Hi Chris,

    Good day!

    I2C speed is 400khz, time shot setting is 10us/div, tomorrow will recapture waveform with 100ns/div.

    Thanks.

  • Hi Chris,

    Good day!

    I'm not deep familiar with oscilloscope use, but I capture with logic analyzer analog channel for you to refer.

    gray line is digital signal, from up to down is SCLB/SDAB/SCLA/SDAA; blue line is analog signal, from up to down is SCLB/SDAB/SCLA/SDAA

    apply 5V on B side VCCB, not signal observed on A side, below is whole and zoom in screenshot

    but if apply 3.3V on B side VCCB, A side has signal

    Here one information I wan to mention again, Aardvark output voltage is 5V, but I2C signal is 3.3V, so if directly use 5V on B side VCCB, but I2C signal is 3.3v, this mismatch will case failure communication.

    but if replace 5V with 3.3V, issue will gone.

    I attach Aardvark link, you can double check

    https://www.totalphase.com/media/datasheet/TP_Aardvark_I2C_SPI_Host_Adapter-Datasheet.pdf

    Chris, I think this case you take for a long time, since we have solution that use 3.3V to solve this issue, if you think we can close this case, please feel free let me know, thanks a lot.

  • Hello,

    If you want to go with the 3.3V solution that is fine but this doesn't make any sense. Would it be possible for you to repeat the GND test with the logic analyzer. If you attach the SDAB pin to GND does the SDAA get pulled Low? If it is working at 3.3V then the GND test should work.

    Best,

    Chris

  • Hi Chris and Danilo,

    Good day!

    If apply 3.3V on B side, attach SCLB/SDAB to ground, SCLA/SDAA is also low.

    If apply 5V on B side, attach SCLB/SDAB to ground, SCLA/SDAA is 1.8V.

    I can't upload the pictures due to some issue with TI system, will try later.

  • Hi Jiajia,

    When image upload works can you also upload your schematic or your test setup?

    Best,

    Chris

  • Hi Chris,

    Have a nice day!

    Please refer to below channel 2/3, for the first graph, SCLA/SDAA is low with B side connect to GND, but the second graph is abnormal that SCLA/SDAA is still 1.8V.

    Apply 3.3V on B side

    Apply 5V on B side

    attach schematic

    LDO_VDDID_FF/SH and FF/SH_SPI/I2C is from other module, but I measured with digital multimeter, Pin1 and Pin5 definitely should be 1.8V.

  • Hi Jiajia,

    The EN pin is referenced to the B side of the device not the A side. A VIH on the EN pin is 0.7*VCCB. Can you try pulling up the EN pin to VCCB instead of VCCA.

    Best,

    Chris

  • Hi Chris,

    I will have a try, I need remove the source component which power supply of EN and flywire to EN to supply VCCB.

    I also check datasheet, indeed EN VIH is 0.7*VCCB, but apply 3.3V on VCCB, is about 3.3*0.7=2.3>1.8V, it should not work as well.

  • Jiajia,

    Yeah it is definitely very weird that it worked at 3.3V however there is always a slight threshold when it comes to silicon, however at 5V the device would definitely be disabled.

    Also I see on the schematic that some resistors especially the SCLB/SDAB are DNP. These resistors are actually soldered in right?

    Best,

    Chris

  • Hi Chris,

    Okay, at the beginning no solder the pull-up resistor, originally I doubt related with it, so I try a couple of resistors, no effect, for the later test, solder 2.2kohm, actually signal has an internal pull-up in Aardvark side, but I'm not sure if a weak or strong pull-up.

    I will try your suggestion, I think it's a good find and hint.

    in datasheet on diagram is as below, so EN should align with host, right? if signal comes from A side, EN from A, if signal comes from B side, EN from B?

    Thanks a lot.

  • Btw, previously I also verify TI another 8-channel Level Shifter LSF0108PWR, doesn't has such issue, 5V supply is no problem.

  • Jiajia,

    The EN pin is always referenced to the B-side of this device. It doesn't matter what side the host is on.

    It is possible that the LSF device may have had it's EN pin referenced to the A side.

    Best,

    Chris

  • Hi Chris,

    Thanks, will feedback to you once I do the measurement, do you think we should modify our schematic although 3.3V supply  seems ok, any potential risk if EN fixed on 1.8V.

  • Hi Jiajia,

    If you want to operate the device at 3.3V that is fine. I am not sure if keeping the EN tied 1.8V is the best solution, it is well under the threshold for a VIH on EN so at that point it will probably vary depending on the silicon of each device. Have you tried the EN=1.8V with multiple TCA9617s?

    The EN pin actually has an internal pull-up resistor to VCCB. So I would recommend just leaving R11 as DNP and not populating it. I see that EN is connected to an I2C signal. I'm not sure the capability of this signal. Is it open drain or push-pull? If possible I would not use this signal to drive EN high instead I would only use it to pull EN low and otherwise I would leave it as high impedance.

    Best,

    Chris

  • Hi Chris,

    Good day!

    Sorry late to update.

    I connect EN to 5V, issue is gone, your idea is correct!

    For your question: EN is fixed with 1.8V, not I2C signal, network name may misunderstand you.

    Really appreciate for your great help and consistent help, I think we can close this case, thank you and TI again.

    esis
  • That is great to hear Jiajia. Have a good one!

    Best,

    Chris