What about multi-controller setups and arbitration?

That is beyond the scope of this guide. It is also not very common.

What about 10 bit addressing?

That is beyond the scope of this guide. It is also not very common.

Why Do Some Targets Have Two Addresses?

Most likely, the 7-bit address plus the 1-bit read/write are being combined and treated as two separate 8-bit addresses. One for reading. One for writing. It's just a different way of thinking of the first byte (8 bits) sent after the start condition.

For other cases, it may be multiple targets buried in one chip. Each target has its own address in the normal fashion.

Didn't the Raspberry Pi 4 fix the clock stretching issue?
Is SMBus the same as I2C?

They're the "sameish". I2C came first, circa 1982. SMBus came along circa 1995 and added to it. SMBus stands for System Management Bus. They have some commonality at the protocol level, so there can be some intermixing.

See smbus.org for more info. Also, this article explains some key differences.

This guide was first published on Mar 09, 2022. It was last updated on Mar 09, 2022.

This page (FAQ) was last updated on Apr 23, 2022.

Text editor powered by tinymce.