Keywords: I2C, 1-Wire, Extend, distance, communication, bridge, 1-Wire protocol, How to extend the distance of I2C, extend I2C range, extend I2C distance
The maximum distance of an I2C bus depends on the capacitive loading. In typical applications, the length is limited to a few meters in standard mode. This is because a system has to be built to accommodate a maximum bus capacitance of 400pF to meet rise time requirements listed in the I2C bus specification (Rev. 6 – 4 April 2014). To achieve greater distances by operating above the maximum allowable bus capacitance, the I2C bus specification allows operating at a lower speed, using higher drive output devices, dividing the bus into segments with bus buffers, or the use of switched pullup circuits. While on the surface these methods may seem viable, they either do not meet the long-distance requirements or significantly increase the cost. An alternative is to use the DS28E17 1-Wire-to-I2C Master Bridge.
The DS28E17 1-Wire-to-I2C Master Bridge takes a different approach by utilizing the 1-Wire® protocol as shown in Figure 1. The distance can be extended because the protocol can tolerate a larger amount of bus capacitance. The use of a single-conductor twisted pair for the 1-Wire bus and ground return keeps the solution costs low.
Figure 1.Typical application circuit.
By using a few simple circuit fundamentals, the circuit in Figure 1 bus capacitance can be examined. Here are basic steps to take:
1) Determine the capacitance of each element in the system.
2) Calculate the total 1-Wire bus capacitance in the system for your length of cable.
CBUS = (CCABLE per meter × Length) + CNear End + CFar End
CBUS = (52pF × 100m) + 10pF + 15pF
CBUS = 5.23nF
3) Determine the 1-Wire master capacitive drive capability (i.e., µC or DS2484). This needs to be determined for low-to-high transitions (i.e., the rising edge) because this is affected the most by bus capacitance. A high-to-low transition (i.e., the falling edge) is always driven by the 1-Wire master with a decent pulldown (i.e., ~8mA) and can usually be ignored.
4) Verify that the 1-Wire bus capacitance does not exceed the capacitive drive capability of the 1-Wire master.
5) Adjust the 1-Wire recovery time (tREC) for long lines in the 1-Wire master's firmware.
This application note provides an alternative method to extend an I2C bus. It also provides basic equations and the design philosophy to check the bus capacitance in a long line application with the DS28E17.