I2c extender question

Hey guys.

I have an I2c display by Adafruit. .56” 4 digit 7 segment W/Backpack

I need a way to extend the distance so it will work. It works on and off now with a 8’ cord between the Arduino and the display.

Can you guys tell me if this will work? Qwiic Differential I2C Bus Extender (PCA9615) Hookup Guide - learn.sparkfun.com

Is this the same thing? Adafruit LTC4311 I2C Extender / Active Terminator [STEMMA QT / Qwiic] : ID 4756 : $7.50 : Adafruit Industries, Unique & fun DIY electronics and kits

What is the difference between these two?

Thanks

That little thingy is a feet, right ?
Eight feet = 2.4 meters

The display : https://www.adafruit.com/product/879
Which Arduino board do you use ?
Which cable or wires do you use ? Are they tied together with other wires ? Can you show of photo ?
Do you have pullup resistors ?
What else is connected to the I2C bus ?

The Sparkfun module creates differential signals for twisted pair wires. That is very good. Any (old) Cat5 or Cat6 cable will do.

The Adafruit module enhances the I2C signals. That is pretty terrible. They will also enhance the noise and crosstalk. You have a lot of noise and crosstalk on the I2C bus, because 2.4 meters does not work.

SparkFun QwiicBus - EndPoint

1 Like

I would expect I2C to work over 8' / 3m. I have it working over about 30m without difficulty.

I suggest twisted pair cable, maybe cat 6. Use one pair for SCL and 0V, and another for SDA and +5V (or the other way around). Use 1k to 2k pull up resistors. Set the clock speed low, by which I mean maybe 10kHz to 50kHz.

I want to try this, but it's been on backorder for a few months now. I keep checking every week.
Thanks

Thanks Perry, I'll try this and see what happens.
My display was working with the 8 feet for a couple weeks, now it only works if it is close to the Arduino. I will see if I can find the clock speed in the program.