Page 1 of 1

increasing I2C distance limit

Posted: 16 Nov 2010, 19:40
by mattallen37
Usually, it is said that 1 meter is about the limit of an I2C cable, due to capacitance issues in the cables. Is it possible to decrease this "noise" using a buffer, schmitt trigger, or comparator? What about separating the SCL and SDA lines physically, by an inch or so?

Re: increasing I2C distance limit

Posted: 16 Nov 2010, 21:43
by nxtreme
I imagine that if you used networking cable that you could get the distance up to some tens of feet as it is designed to have very low capacitance. The alternative that I'm sure you've though of is to have two NXTs connected with RS-485 and have one take readings and pass them on to the master. The longest distances you might be able to achieve is about 15 meters. This is probably not very easily achievable and will depend on clock speed, cable, the type of slave you have on the other end, solar flares and UFOs.

You'd probably have better luck using a twisted pair (Cat5?) for the data and clock. You could try shielded wire but unless it's made for hi speed communication it would probably have to much capacitance. You could try taking the outer layer of shielding off of a shielded wire and sticking it over some Cat5 cable. It might still increase the capacitance too much but its worth a try.

-EDIT- Check out this link, it has some good suggestions [LINK]

Re: increasing I2C distance limit

Posted: 17 Nov 2010, 00:47
by aswin0
Mindsensors has firmware that claims to increase the limit to 10 meters. I didn't test it.

Re: increasing I2C distance limit

Posted: 17 Nov 2010, 01:30
by mattallen37
I know, but I need the added abilities that John's firmware has, and it isn't worth it to me to change.

Re: increasing I2C distance limit

Posted: 17 Nov 2010, 18:26
by aswin0
Well, it is presented as an executable patch that should work with different firmware flavors. I don't know if John's firmware is on the list but you could check it out on their website.