Contents
What is the speed of I2C bus?
Data on the I2C-bus can be transferred at rates of up to 100 kbit/s in the Standard-mode, up to 400 kbit/s in the Fast-mode, up to 1 Mbit/s in Fast-mode Plus, or up to 3.4 Mbit/s in the High-speed mode.
Is I2C considered high-speed?
The high-speed variant of the I2C bus allows communication up to 3.4 Mbit per second. Both, master and slave device must be highspeed-enabled in order to benefit from this increase. High-speed IC devices are downward compatible allowing for mixed bus systems.
What is speed for fast mode in I2C?
Characteristics
| Wires | 2 (SCL and SDA) |
|---|---|
| Maximum speed | Standard mode = 100 Kbps |
| Fast Mode = 400 Kbps | |
| High-Speed mode = 3.4 Mbps | |
| Ultra-Fast Mode = 5 Mbps |
Which is the best way to recover the I2C bus?
In simple words, toggling SCL till slave releases SDA will mostly help in recovering the I2C bus, unless the device boots from I2C. If device boots from I2C, best is to make sure reset happens after I2C transfer is complete.
How can I recover from an I2C lock up?
In the best case, the hardware will allow each I2C slave device to be reset by the software on the master. For example, this could be done by toggling one or more discrete output signals. Otherwise, the best recovery action is usually to force a series of at least ten clock pulses out on the I2C clock signal.
Why is my I2C slave not working after a reset?
A safer but more complex solution is to power cycle all I2C devices after a reset condition. The key point to keep in mind is that an I2C slave is not stateless and therefore may not function properly out of the box after reset or – equally common – a spike caused by EMC influence interpreted as clock signal.
How can my design handle lock-up in I2C?
If you simply reset the CPU or re-start the software, the I2C slave will never see the end of that transaction so the I2C bus will be locked when the software re-starts. How should my design handle lock-up? So, I2C lock-up is definitely “a thing” in practice as well as theory. What can be done about it? The first approach is prevention.