This page (revision-21) was last changed on 2021-11-21 04:33 by Murray Altheim

This page was created on 2019-12-26 08:51 by Murray Altheim

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
21 2021-11-21 04:33 6 KB Murray Altheim to previous

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 1 changed 2 lines
The __Inter-integrated Circuit (I%%sup 2%%​C) Protocol__ (pronounced ''I-squared-C''
) is a hardware serial interface (or "protocol") intended to allow multiple "slave" components to communicate with one or more "master" components. It used across many microprocessors and microcontrollers, including the [Raspberry Pi].
The __Inter-integrated Circuit (I²C) Protocol__ (pronounced ''I-squared-C'') is a hardware serial interface (or "protocol") intended to allow multiple "slave" components to communicate with one or more "master" components. It used across many microprocessors and microcontrollers, including the [Raspberry Pi].
At line 4 changed one line
I2C permits sensors and other IO devices to be connected to the controller (and/or each other) with only four wires (or really only ''two'' if you don't count Vcc and ground):
I²C permits sensors and other IO devices to be connected to the controller (and/or each other) with only four wires (or really only ''two'' if you don't count Vcc and ground):
At line 6 changed 4 lines
# __3-6V__ (Vcc)
# __SDA__ (Serial Data Line)
# __SCL__ (Serial Clock Line)
# __GND__ (Ground)
# __3-6V__ (Vcc, red)
# __SDA__ (Serial Data Line, blue)
# __SCL__ (Serial Clock Line, yellow)
# __GND__ (Ground, black)
At line 11 changed one line
The Pimoroni "Breakout Garden" set of I2C sensors also includes an "__{{{INT}}}__" (interrupt) pin, ''AKA'' "{{{GCLK}}}" or "{{{GPIO4}}}".
The colors listed are those used by Adafruit with their line of STEMMA Qt connectors.
At line 13 changed one line
!! To View the Current I2C Devices
The Pimoroni "Breakout Garden" set of I²C sensors also includes an "__{{{INT}}}__" (interrupt) pin, ''AKA'' "{{{GCLK}}}" or "{{{GPIO4}}}".
At line 14 added 2 lines
!! To View the Current I²C Devices
At line 33 changed one line
!! Known I2C Devices
!! Known I²C Devices
At line 35 changed one line
Some well known I2C products. No two I2C may share the same address on an I2C bus, otherwise there will be contention.
Some well known I²C products (mostly a list of tested devices; there are thousands available). No two I²C may share the same address on an I²C bus, otherwise there will be contention.
At line 37 changed 14 lines
|| Stock || Brand || Description || 7 bit address || Notes
| 1 | Pimoroni | LTR-559 Light & Proximity | 0x23 |
| 3 | Pimoroni | VL53L1X Time of Flight (ToF) | 0x29 | range 40mm-4m
| 1 | Adafruit | VL6180X Time of Flight Distance Sensor | 0x29 | range 5-100mm
| 2 | Pimoroni | 11x7 LED Matrix #1 | 0x75 |
| 2 | Pimoroni | 11x7 LED Matrix #2 | 0x77 |
| 4 | Pimoroni | 5x5 RGB Matrix | 0x74 / 0x77 | 77 will be in conflict with 11x7 #2
| 2 | Pimoroni | [ADS1015 +/-24V ADC 3 Channel|Ads1015AnalogDigitalConverter] | 0x48 / 0x49 |
| 2 | Adafruit | ADS1015 12 bit ADC 4 Channel w Prog Gain | 0x48 - 0x4B (jumpers) |
| 2 | PiBorg | Thunderborg | 0x10 / 0x11 |
| 1 | PiBorg | Ultraborg | 0x36 |
| 1 | Pimoroni | ICM20948 9-DOF Motion Sensor | 0x68 / 0x69 |
| 1 | Adafruit | [BNO055 IMU Sensor|BNO055ImuSensor] | 0x28 / 0x29 |
| 0 | Adafruit | VCNL4010 Proximity Sensor | 0x13 |
|| Stock || Brand || Description || 7 bit address || Notes
| 1 | Pimoroni | [RGB Potentiometer|https://shop.pimoroni.com/products/rgb-potentiometer-breakout] | 0x0E ‡ | uses [Nuvoton MS51|NuvotonMS51]
| 1 | Pimoroni | [RGB Encoder|https://shop.pimoroni.com/products/rgb-encoder-breakout] | 0x0F ‡ | uses [Nuvoton MS51|NuvotonMS51]
| 2 | PiBorg | [Thunderborg|https://www.piborg.org/motor-control-1135/thunderborg] | 0x10 / 0x11 † | dual motor controller
| 0 | Adafruit | [VCNL4010 Proximity Sensor|https://www.adafruit.com/product/466] | 0x13 | infrared, 0-200mm range
| 1 | Pimoroni | [IO Expander|https://shop.pimoroni.com/products/io-expander] | 0x18 ‡ | uses [Nuvoton MS51|NuvotonMS51]
| 2 | Pimoroni | [LSM303D 6DoF Motion Sensor|https://shop.pimoroni.com/products/lsm303d-6dof-motion-sensor-breakout] | 0x1D / 0x1E † |
| 1 | Adafruit | [BH1750 Light Sensor|https://www.adafruit.com/product/4681] | 0x23 / 0x5C | 16-bit Ambient Light Sensor
| 1 | Pimoroni | [LTR-559 Light & Proximity|https://shop.pimoroni.com/products/ltr-559-light-proximity-sensor-breakout] | 0x23 | light detection; 0-50mm range proximity detection
| 3 | Pimoroni | [VL53L1X Time of Flight|https://shop.pimoroni.com/products/vl53l1x-breakout] | 0x29 | range 40mm-4m; 0x29 conflicts with BNO055
| 1 | Adafruit | [BNO055 IMU Sensor|BNO055ImuSensor] | 0x28 / 0x29 † | 0x29 conflicts with VL531X
| 0 | Adafruit | [VL53L0X Time of Flight Distance Sensor|https://www.adafruit.com/product/3317] | 0x29 | range 50-1200mm (2m on long range)
| 1 | Adafruit | [VL6180X Time of Flight Distance Sensor|https://www.adafruit.com/product/3316] | 0x29 | range 5-100mm
| 1 | PiBorg | [Ultraborg|https://www.piborg.org/sensors-1136/ultraborg] | 0x36 |
| 2 | Pimoroni | [HT0740 10A Switch|https://shop.pimoroni.com/products/ht0740-breakout] | 0x38 / 0x39 † |
| 1 | Adafruit | [INA260 Current Sensor|https://www.adafruit.com/product/4226] | 0x40 / 0x41 / 0x44 / 0x45 † | up to 4 devices via 2 jumpers
| 2 | Pimoroni | [ADS1015 +/-24V ADC 3 Channel|Ads1015AnalogDigitalConverter] | 0x48 / 0x49 † |
| 2 | Adafruit | [ADS1015 12 bit ADC 4 Channel w Prog Gain|https://www.adafruit.com/product/1083] | 0x48 - 0x4B † |
| 1 | Adafruit | [9-DOF Orientation IMU Fusion Breakout - BNO085 (BNO080)|https://www.adafruit.com/product/4754] | 0x4A |
| 1 | Pimoroni | [ICM20948 9-DOF Motion Sensor|https://shop.pimoroni.com/products/icm20948] | 0x68 / 0x69 † |
| 2 | Pimoroni | [11x7 LED Matrix|https://shop.pimoroni.com/products/11x7-led-matrix-breakout] | 0x75 / 0x77 † | 77 will be in conflict with 5x5
| 4 | Pimoroni | [5x5 RGB Matrix|https://shop.pimoroni.com/products/5x5-rgb-matrix-breakout] | 0x74 / 0x77 † | 77 will be in conflict with 11x7
At line 52 changed one line
| 0 | Adafruit | VL53L0X Time of Flight Distance Sensor | 0x29 | range 50-1200mm (2m on long range)
| 1 | Pimoroni | [AS7262 6-channel Spectral Sensor (Spectrometer)|https://shop.pimoroni.com/products/as7262-6-channel-spectral-sensor-spectrometer-breakout] | 0x49 | 6 spectral channels (450, 500, 550, 570, 600, 650nm)
At line 63 added 3 lines
† jumper selectable
‡ software configurable
At line 73 added one line
* [Adafruit's I2C Address List|https://learn.adafruit.com/i2c-addresses/the-list]