Texas Instruments’ buffer features stuck bus recovery
Texas Instruments’ TCA4307 is a hot-swappable I2C bus buffer that supports I/O card insertion into a live backplane without corruption of the data and clock lines. Control circuitry prevents the backplane-side I2C lines (in) from being connected to the card-side I2C lines (out) until a stop command or bus idle condition occurs on the backplane without bus contention on the card. When the connection is made, this device provides bidirectional buffering, keeping the backplane and card capacitances isolated. During insertion, the SDA and SCL lines are pre-charged to 1 V to minimize the current required to charge the parasitic capacitance of the device.
The TCA4307 has stuck bus recovery, which automatically disconnects the bus if it detects either SDAOUT or SCLOUT are low for about 40 ms. Once the bus is disconnected, the device automatically generates up to 16 pulses on SCLOUT to attempt to reset the device which is holding the bus low. When the I2C bus is idle, the TCA4307 can be put into shutdown mode by setting the EN-pin low, reducing power consumption. When EN is pulled high, the TCA4307 resumes normal operation. This buffer includes an open-drain READY output pin, which indicates that the backplane and card sides are connected. When READY is high, the SDAIN and SCLIN are connected to SDAOUT and SCLOUT. When the two sides are disconnected, READY is low.