Understanding I2C

Arduino Technology
Understanding I2C

I2C Duino

uCHobby has a helpful primer on interfacing electronic components via the handy I2C protocol and Arduino –

I²C uses only two bidirectional open-drain lines, Serial Data (SDA) and Serial Clock (SCL), pulled up with resistors. Typical voltages used are +5 V or +3.3 V although systems with other, higher or lower, voltages are permitted.
What exactly does the I2C protocol and usage mean to the average robot builder? Well, it can mean a lot of different things,such as easily accessible devices like temperature sensors, accelerometers, and even setting up a small on board network on a robot.

Introduction to I2C

Bare Bones Arduino Board Kit (Unassembled)

8 thoughts on “Understanding I2C

  1. The Oracle says:

    Should the master and slave 2 share a ground with slave 1? In the schematic they’re not connected.

  2. japroach says:

    Yeah, thats not the greatest schematic.

    But you will notice a lot of bus documentation tends to leave out a ground connection as it is implied.

  3. Collin Cunningham says:

    yups – opamp +/- supply connections are also often left out of schematics. I understand why, but it’s still always buged me a bit :

  4. The Oracle says:

    Implied, yes, but here the connections are explicitly shown as not connected which has a strong meaning.

    Anyway I just wanted to clarify because I wasn’t certain, and I’m planning on using I2C for a project soon (and it’s an otherwise good read), though it’s a bit vauge about how to use the wiring library, the software level explaination was more confusing than helpful. Particulairly what makes the master and slave different, is it just that the slaves “agree” not to speak unless spoken to?

Comments are closed.

Discuss this article with the rest of the community on our Discord server!