Termination

Every I2C bus must be terminated

The I2C bus relies on open drain technology. Except for one special case in conjunction with the high-speed mode, no I2C device is allowed to drive the bus, i.e. to send a 1 by putting voltage on the bus. Instead, the bus is terminated to a high level, e.g. 5 V, and both lines, SCL and SDA, remain there during idle mode. A device sends a 0 by pulling the bus to ground level. A 1 is sent by doing nothing, i.e. leaving the bus at high level. Termination of I2C lines is achieved by connecting the bus to the bus reference voltage through an appropriate resistor. Missing or wrong termination is the source of many field problems. As a rule of thumb, the higher the termination, the better the signals. On the other hand, a high termination bears a potential risk of damaging components. Note: In I2C engineering terms, a high termination means a strong pull-up to VCC, which translates into a low value for the resistor.