Forums

I2C - distance between master and slave?

Started by Jens Gydesen January 10, 2007
Hi

what is your experience with the I2C bus, what is the practical max 
distance,

please specify your  pull-up resistor value, I2C clock speed, and distance


thank you,

best regards

Jens

--------------------------------------------------------------------------------
Jeg beskyttes af den gratis SPAMfighter til privatbrugere.
Den har indtil videre sparet mig for at f� 3924 spam-mails
Betalende brugere f�r ikke denne besked i deres e-mails.
Hent en gratis SPAMfighter her. 


Jens Gydesen wrote:

> Hi > > what is your experience with the I2C bus, what is the practical max > distance, > > please specify your pull-up resistor value, I2C clock speed, and distance
How about a mile ? http://www.standardics.nxp.com/support/documents/i2c/pdf/an452.pdf
On Wednesday, in article
     <45a5585d$0$14005$edfadb0f@dread15.news.tele.dk>
     jegyREMOVE@THISget2net.dk "Jens Gydesen" wrote:

>Hi > >what is your experience with the I2C bus, what is the practical max >distance,
Your wording sounds more like a 'homework' question. Distance, speed and rise times are noted in the I2C spec that is publicly available. Max distance also depends on repeaters and things like ACK turnaround time.
>please specify your pull-up resistor value, I2C clock speed, and distance
Pull-up resistor value depends on many factors, speed, capacitance of signal run, voltage drop down signal run. How you work this out depends on many aspects of your application. I have done 8m at 80KHz and cannot remember what the pullup value was. The cable was chosen for low loss, low capacitance and screening. Most full DDC compliant VESA monitors have greater than 1m of I2C signal run to read the monitor details. See the I2C spec and many, many references on how to do this. -- Paul Carpenter | paul@pcserviceselectronics.co.uk <http://www.pcserviceselectronics.co.uk/> PC Services <http://www.gnuh8.org.uk/> GNU H8 & mailing list info <http://www.badweb.org.uk/> For those web sites you hate
On Wed, 10 Jan 2007 22:19:33 +0100, "Jens Gydesen"
<jegyREMOVE@THISget2net.dk> wrote:

>Hi > >what is your experience with the I2C bus, what is the practical max >distance, > >please specify your pull-up resistor value, I2C clock speed, and distance
One limiting factor with any unbalanced TTL level system is the ground potential difference between devices. Paul
On Wed, 10 Jan 2007 22:00:42 +0000 (GMT), in comp.arch.embedded
paul$@pcserviceselectronics.co.uk (Paul Carpenter) wrote:


sorry, but I have to ask

>I have done 8m at 80KHz and cannot remember what the pullup value was. The >cable was chosen for low loss, low capacitance and screening.
Why? martin
On Thursday, in article
     <m9uaq292569p00hkkvte17uql89m72b643@4ax.com>
     mart_in_medina@ya___.es "martin griffith" wrote:

>On Wed, 10 Jan 2007 22:00:42 +0000 (GMT), in comp.arch.embedded >paul$@pcserviceselectronics.co.uk (Paul Carpenter) wrote: > > >sorry, but I have to ask > >>I have done 8m at 80KHz and cannot remember what the pullup value was. The >>cable was chosen for low loss, low capacitance and screening. > >Why?
I am not sure what bit(s) the why refers to? Low was a relative term compared to what I had to start with, and was expected to use. Still standard multi-core cable. One end was powered from the main battery powered handheld device. Overall screening was to stop the main unit's RF transmitters from getting in the cable! Especially as one user liked to hold the cable near the aerials of the main unit. -- Paul Carpenter | paul@pcserviceselectronics.co.uk <http://www.pcserviceselectronics.co.uk/> PC Services <http://www.gnuh8.org.uk/> GNU H8 & mailing list info <http://www.badweb.org.uk/> For those web sites you hate
"Jens Gydesen" <jegyREMOVE@THISget2net.dk> schrieb im Newsbeitrag 
news:45a5585d$0$14005$edfadb0f@dread15.news.tele.dk...
> what is your experience with the I2C bus, what is the practical max > distance, >
I have seen people using a 10 m i2c connection at about 10 hbit/s in a factory environment. Not sure what the pullup was but probably something below 4k7. /Roland
Jens Gydesen ha scritto:
> Hi > > what is your experience with the I2C bus, what is the practical max > distance, > > please specify your pull-up resistor value, I2C clock speed, and distance > > > thank you, > > best regards > > Jens > > -------------------------------------------------------------------------------- > Jeg beskyttes af den gratis SPAMfighter til privatbrugere. > Den har indtil videre sparet mig for at f&#2013265925; 3924 spam-mails > Betalende brugere f&#2013265925;r ikke denne besked i deres e-mails. > Hent en gratis SPAMfighter her. > >
In my BLOG You can see a schematic project (IPERKEY) that control a remote key (eeprom inside) with I2C bus. I tested it at 100 meters with standard alarm cable (0.22) Emanuele -- *** YOUR ELECTRONICS OPEN SOURCE *** http://dev.emcelettronica.com ;--------------------------------------------------------- Progetti Completi e Risorse (Full Projects and resources):

Emanuele wrote:


>> what is your experience with the I2C bus, what is the practical max >> distance,
From one inch to infinity, depending on the amount of EMI.
>> please specify your pull-up resistor value, I2C clock speed, and >> distance >> > In my BLOG You can see a schematic project (IPERKEY) > that control a remote key (eeprom inside) with I2C bus. > > I tested it at 100 meters with standard alarm cable (0.22) >
Regardless of the max. distance in the ideal conditions, using I2C for communication outside a device is bad idea. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
 I think to work with this , you must first learn the general
 rules of transmission lines .  Its not difficult .

    Slow methods violate all the rules , so RS232 and many others
  will not teach you anything .

    Notice USB has balanced , opposed signals and termination
  resistors for Hi-Speed USB .

  the 2 wires are a parallel transmission line and the currents in
  the wires will push each other away .
     In EE , all work is done  by pushing , not pulling .
   Voltage pushes electrons onto  capacitors  , and electrons
  thru resistors .
  magnetic flds push electrons in the secondary winding ..
    -------------
  The minute area of each wire can be a capacitor but there
 is inductance along the wire "isolating" the capacitance , so
 you cant see the cap ....
 dont expect a capacitive effect at the ends of the xmission line .
    Instead , C  is stored and given back at odd times .
       If you see this give back at the ends of the wire ,
 the resistance of the wire , compared to the capacitance
 is low , allowing the charge to reach the ends , undiminished .

   The capacitor can send his charge to the ends of the wire
  with low loss . if its out of phase , it  causes unwanted noise as
you try
       to transmit .
   It could raise the signal or worse , null it !
   PC "PCI" buss uses this to increase its signals and
  thus lower the power needed to "drive" the bus .
    We call it a
       Tuned buss or
       Tuned transmission line .
     Its Tuned , and will not work if distances are not exact .

  an IBM PC MoBo data/address  has lines , weaving and
 this can create 10 times higher inductance , but it can
 also create a longer xmission line !!

      so , as an engineer , i  must assume they did an
     approx of distance , then added inductive zig-zags
     til the "line" was resistive ( alias "matched line " ) .
     Because to first figure how many zigs-zags , then
     how do you change length ?  If u luck out and can still
     add zigs , in that place ....

     USB wire spacing is not important unless you are at 480Mbits/sec
  aka "Hi-Speed" .
   The EXT connector on GP2X is spaced too close .
  the spacing must be 100 ohms .  100 Ohms is a ratio
  distance to wire size , but wire size is ussually limited .
    But !  GP2X has not Hi-Speed , so less worry .

    USB and Firewire have short distances , but yet they
  can have many "wavelength" on the cable .

  If your xmission line has 2.5 waves on it , and no resistor
 at each end to damp noise  or "terminate"  the line ,
  you will get a boost .

     But if proper resistor ( 100 ohms)  , no stored charge
  on the "distributed" capacitance of the cable/line
 will be seen anywhere .
   Its modular , at all even 1/2 waves , you get same thing ,
 but for very long lengthe  , signal is attenuated .

  A very long and poor line ( RG58 at 450 mhz )  the signal
 is killed as it tries to return , no problem , no need to
 put 50 ohm resistor at end .

  Suppose you used CATV 75 ohms cable on ethernet ?
 you could xmit 5 times further , because Cat5e is trash !


 1)  resistors at both ends for bidirectional comm'
  but you can remove one as you transmit , only destination
  needs a 100 ohm . ( USB )

  2)  twisted pair is 'twisted" , it dont work , it has interference
 where ever it goes and worse it fights adjacent signals as
in Cat5e !!
 3) coax works if you attenuate the "2nd" signal on outside
 of the cable , using stubs .
 this increases the Z , seen on outside , to make it look infinite .
'
  Digital data rates  must be above 50 mega bits / sec to be
 needing your attention .

   Thus 1000' is a matter of signal strength .
   .. drive 2 vac peak to peak and you can go LONG !
  RS232c must be millivolts PP !!

  OOOpppps   door bell rang .... next time ...