I2C
Contributors:
SFUptownMaker
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.
- Open Source Hardware Association: A Resolution to Redefine SPI Signal Names
- Qwiic Connect System
To use I2C over long distances, check out the dedicated PCA9615 differential I2C bus extender.
Qwiic Differential I2C Bus Extender (PCA9615) Hookup Guide
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
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:
Keyboard Shortcut, Qwiic Keypad
A simple project using the Qwiic Keypad and the RedBoard Turbo to create your own custom hotkey-pad.
Capacitive Touch Slider (CAP1203) Hookup Guide
An easy and Qwiic way to add capacitive touch to any of your projects using the CAP1203! In this guide, we go over how to connect and set up your Capacitive Touch Slider so you can start playing with it right away.
SparkFun Qwiic 3-Axis Accelerometer (ADXL313) Hookup Guide
Let's get moving with the SparkFun Triple Axis Digital Accelerometer Breakout - ADXL313 (Qwiic), a low cost, low power, up to 13-bit resolution, 3-axis accelerometer with a 32-level FIFO stack capable of measuring up to ±4g. This hookup guide will get users started reading measurements from the ADXL313, by Analog Devices, with an Arduino microcontroller, Jetson Nano, or Raspberry Pi.
Qwiic SHIM Kit for Raspberry Pi Hookup Guide
Get started with the Serial LCD with RGB backlight and 9DoF IMU (ICM-20948) via I2C using the Qwiic system and Python on a Raspberry Pi! Take sensor readings and display them in the serial terminal or SerLCD.
Looking for more inspiration? Check out some of these blog posts for ideas: