+ Post New Thread
Results 1 to 4 of 4
  1. #1
    Member level 2
    Points: 662, Level: 5

    Join Date
    Jan 2015
    Posts
    48
    Helped
    1 / 1
    Points
    662
    Level
    5

    I2C signal distance and signal booster

    I am using MLX90614, which is a i2c output. My doubt is that, how long can i transmit the signal without any booster? I dont want to waste time in TRIAL and ERROR. My sensor is 30mts far from my MCU. Can the I2C signal reach the MCU with just the pullup resistor at the SCL and SDA pins.?
    If no, please suggest me some booster ICs or SMBus ICs for taking the i2c signals faraway.
    - - - -
    THANKS
    KRISHNAKUMAR.R

    •   AltAdvertisment

        
       

  2. #2
    Super Moderator
    Points: 253,869, Level: 100
    Awards:
    1st Helpful Member

    Join Date
    Jan 2008
    Location
    Bochum, Germany
    Posts
    44,233
    Helped
    13462 / 13462
    Points
    253,869
    Level
    100

    Re: I2C signal distance and signal booster

    Best way to avoid trial and error is to reconsider the design, e.g. place a µC near the sensor and use reliable RS485 communication over the distance. Or plan I2C operation at reduced speed of a few 10 kHz maximum.



    •   AltAdvertisment

        
       

  3. #3
    Member level 2
    Points: 662, Level: 5

    Join Date
    Jan 2015
    Posts
    48
    Helped
    1 / 1
    Points
    662
    Level
    5

    Re: I2C signal distance and signal booster

    That would increase the cost. I'm trying to work it out on a lower budget. Is there any I2C booster, that you would recommend, or at a cheaper rate.?
    - - - -
    THANKS
    KRISHNAKUMAR.R



    •   AltAdvertisment

        
       

  4. #4
    Super Moderator
    Points: 72,553, Level: 65
    Achievements:
    7 years registered
    Awards:
    Most Frequent Poster 3rd Helpful Member

    Join Date
    Apr 2014
    Posts
    14,744
    Helped
    3367 / 3367
    Points
    72,553
    Level
    65

    Re: I2C signal distance and signal booster

    Hi,

    Read I2C specifications.
    This interface is developed for inter IC communication. Mainly for ICc on one board or at least in one box.

    Nowadays this is exteded (somehow misused) to communicat between two electonic equippments.
    Like the SMBus between PC and monitor

    With the I2C bus and it's high impedance you may expect a great influence of environmental noise.
    Also the single ended signalling without taking care of line impedance will generate overshoots and reflection on long distance.
    Usually you need slow clock frequency for longer distance, but this also means you either need analog filters or slow receivers to avoid ringing at the receiver output.
    Driving long lines meabs driving high capacitance. But as you now the the outputs are low ohmic open collectors, but the pullups are high impedance. So you don't have unique driving capabilities.

    Next is the unidircectional (mostely, because some ICs use clock pulse extension) clock signal and the bidirectional data signal brings additional difficulties.
    This especially is true when you want to install a booster. A booster for a bidirectional open collector ind has it's drawbacks. And how do you want to install them? Every 5 meters a boioster?

    My recommendation: It is not even wort a try to use the I2C with a dustance of 30m.
    For sure you may bring it to work at home or in laboratory condutions, but it is reliable to work in every customer's (electrical) environment.

    Klaus



--[[ ]]--