Contributors: SFUptownMaker
Favorited Favorite 77

Resources and Going Further

I2C is a relatively complex interface, and there are many resources out there to help you deal with it. Below are some of the more informative ones.

  • Wikipedia Article on I2C - Not great, but not a terrible place to start.
  • Standards Doc - Phillips Semiconductor became NXP a few years back; this is the official standards doc for I2C.
  • I2C primer - The official primer on I2C and related technologies.
  • Linux Tools for I2C - A nice set of tools for working with I2C and related buses in embedded Linux environments, like pcDuino or Raspberry Pi.

To use I2C over long distances, check out the dedicated PCA9615 differential I2C bus extender.

Qwiic Differential I2C Bus Extender (PCA9615) Hookup Guide

May 31, 2018

Learn how to extend the range of your I2C communication bus with the Qwiic differential I2C bus extender (PCA9615 ) breakout board.

Or check out our SPI and I2C tutorial with a Raspberry Pi.

Raspberry Pi SPI and I2C Tutorial

October 29, 2015

Learn how to use serial I2C and SPI buses on your Raspberry Pi using the wiringPi I/O library for C/C++ and spidev/smbus for Python.

Need some inspiration for your next project? Check out some of these related tutorials:

Qwiic Human Presence Sensor (AK9753) Hookup Guide

How to get started with your Qwiic enabled AK9753 Human Presence Sensor.

Qwiic Magnetometer (MLX90393) Hookup Guide

Figure out how magnetic fields are oriented, all without having to solder a thing.

ESP32 LoRa 1-CH Gateway, LoRaWAN, and the Things Network

Using the ESP32 LoRa 1-CH Gateway as a gateway and device, and pushing data to The Things Network.

Qwiic IR Array (MLX90640) Hookup Guide

The Melexis MLX90640 contains a 32x24 array of thermopile sensors creating, in essence, a low resolution thermal imaging camera. In this guide, we’ll go over how to connect your Qwiic Infrared Array with MLX90640 and get it communicating with Processing to produce a nice thermal image.

Looking for more inspiration? Check out some of these blog posts for ideas: