Wiki¶
- Table of contents
- Wiki
- Connecteur
- USB <-> I2C
- Composants
- ADS122C04 ADC 24bits (RTD Pt100 2W,3W,4W; Thermocouple; Resistive Bridge)
- PAJ7620U2 Integrated Gesture Recognition Sensor
- APDS996x Digital Proximity, Ambient Light, RGB and Gesture Sensor
- VL53Lxx Time-of-Flight high accuracy proximity sensor
- AGS10 TVOC (total volatile organic compounds)
- SHT45 Digital humidity and temperature sensor
- SGP41 Air Quality Sensor for VOC and NOx Measurements
- SCD4x Breaking the size barrier in optical CO2 sensing
- Bosch BME680 sensor and get temperature, humidity, pressure and gas readings
- SPS30
- INA219
- INA226
- INA3221 High-Side Measurement
- PCF8563 Real-time clock/calendar
- TCA9555 and TCA9535 I/O Expander 16-Bit
- ADS1115 Quad ADCs
- LTC2635 Quad DACs
- IP5306 Battery Management System (FM5324GA)
- 24LC512 EEPROM 512Kbit
- SC18IS606 I2C-bus to SPI bridge
- PCA9515A
Connecteur¶
QWIIC¶

black for GND, red for 3.3V, blue for SDA, yellow for SCL.
style 4-pin Connecteur JST-SH avec un pas de 1 mm

Embases de circuit imprimé JST, SH, 4 pôles , 1.0mm 1 rangée, 1.0A
Code commande RS:
515-1513
Numéro d'article Distrelec:
304-01-006
Référence fabricant:
SM04B-SRSS-TB
Marque:
JST
https://www.sparkfun.com/qwiic
Wemos lolin¶

USB <-> I2C¶
SiLabs CP2112¶

Passerelle USB-I2C SiLabs CP2112
Arduino¶
#include <Arduino.h>
#include <Wire.h>
void setup(){
Wire.begin();
Serial.begin(9600);
}
void loop(){
byte error, address;
int nDevices;
Serial.println("Scanning...");
nDevices = 0;
for(address = 8; address < 127; address++ ){
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0){
Serial.print("I2C device found at address 0x");
if (address < 16)
Serial.print("0");
Serial.print(address,HEX);
Serial.println(" !");
nDevices++;
}
else if (error == 4) {
Serial.print("Unknow error at address 0x");
if (address < 16)
Serial.print("0");
Serial.println(address,HEX);
}
}
if (nDevices == 0)
Serial.println("No I2C devices found\n");
else
Serial.println("done\n");
delay(5000);
}
https://arduino-france.site/i2c-scanner/
Commande Linux¶
i2c-tools
sudo apt install i2c-tools
¶
sudo apt install i2c-tools
i2cdetect¶
i2cdetect -l
sudo i2cdetect -r -y N
N numero I2C ici 5

détection de puces I2C, TCA9535 0x20, ADS1115 0x48, PCF8563 0x51
i2cget¶
sudo i2cget 5 0x20 0x04

lecture dans le TCA9535 0x20, dans le registre 0x4
i2cset¶
sudo i2cset 5 0x20 0x02 0x01

écriture dans le TCA9535 0x20, dans le registre 0x2, les bits 0b00000001
https://www.acmesystems.it/i2c
https://www.youtube.com/watch?v=QwlqOTDAPfk
Composants¶
ADS122C04 ADC 24bits (RTD Pt100 2W,3W,4W; Thermocouple; Resistive Bridge)¶

https://www.ti.com/lit/ds/symlink/ads122c04.pdf
PAJ7620U2 Integrated Gesture Recognition Sensor¶
https://github.com/DFRobot/DFRobot_PAJ7620U2
APDS996x Digital Proximity, Ambient Light, RGB and Gesture Sensor¶

APDS-9960 Obsolète
APDS-9961 Remplacement direct, compatible brochage et logiciel
https://github.com/sparkfun/SparkFun_APDS-9960_Sensor_Arduino_Library
https://github.com/arduino-libraries/Arduino_APDS9960
VL53Lxx Time-of-Flight high accuracy proximity sensor¶

| Modèle | Description | Portée max. | Résolution | Interface | Particularités |
| VL53L0X | Première génération, capteur ToF pour la détection de proximité et de geste. | 4 m | 1 mm | I2C | Faible consommation, idéal pour les applications mobiles et IoT. |
| VL53L1X | Amélioration du VL53L0X, avec une meilleure immunité à la lumière ambiante. | 4 m | 1 mm | I2C | Meilleure précision en extérieur, gestion avancée des interférences lumineuses. |
| VL53L1CB | Version compacte du VL53L1X, optimisée pour les applications embarquées. | 4 m | 1 mm | I2C | Boîtier plus petit, faible consommation, idéal pour les smartphones et wearables. |
| VL53L3CX | Capteur multi-zones (jusqu'à 64 zones), pour la détection de geste et la cartographie 3D. | 3 m | 1 mm | I2C | Permet de mesurer plusieurs objets simultanément, idéal pour les applications de réalité augmentée. |
| VL53L4CD | Version améliorée du VL53L3CX, avec une meilleure précision et une consommation réduite. | 3 m | 1 mm | I2C | Optimisé pour les applications de détection de présence et de geste. |
| VL53L5CX | Capteur ToF de 8x8 zones (64 zones), avec une résolution et une précision accrues. | 4 m | 1 mm | I2C | Idéal pour les applications de détection de mouvement, de présence et de cartographie 3D. |
| VL53L6 | Dernière génération (2024), avec une résolution de 16x16 zones (256 zones). | 4 m | 0.5 mm | I2C/SPI | Meilleure précision, faible consommation, et gestion avancée des interférences lumineuses. |
| VL53L7CX | Capteur ToF avec une résolution de 16x16 zones, optimisé pour les applications industrielles. | 6 m | 0.5 mm | I2C/SPI | Portée étendue, robustesse accrue face aux conditions environnementales difficiles. |
| VL53L8CX | Capteur ToF avec une résolution de 64 zones (8x8), pour les applications grand public. | 4 m | 0.5 mm | I2C/SPI | Équilibre entre performance et coût, idéal pour les smartphones et les appareils connectés. |
VL53L0x
https://github.com/adafruit/adafruit_vl53l0x
VL53L4cd
https://github.com/pololu/vl53l4cd-arduino
STMicroelectronics
VL53L4EDV0DH/1
MOUSER : 511-VL53L4EDV0DH/1
FARNELL : 4382002
AGS10 TVOC (total volatile organic compounds)¶
Operating voltage 3.0±0.1 V DC

https://www.aosong.com/userfiles/files/Datasheet%20AGS10.pdf
https://github.com/gina-seth/AGS10_sensor
SHT45 Digital humidity and temperature sensor¶

Accuracies:
ΔRH = ±1.0 %RH
ΔT = ±0.1 °C
https://sensirion.com/media/documents/33FD6951/67EB9032/HT_DS_Datasheet_SHT4x_5.pdf
https://docs.arduino.cc/libraries/artronshop_sht45/
SGP41 Air Quality Sensor for VOC and NOx Measurements¶

https://sensirion.com/media/documents/5FE8673C/61E96F50/Sensirion_Gas_Sensors_Datasheet_SGP41.pdf
https://docs.arduino.cc/libraries/sensirion-i2c-sgp41/
https://github.com/Sensirion/arduino-core/
SCD4x Breaking the size barrier in optical CO2 sensing¶

▪ SCD40: Base accuracy, specified measurement range
400 – 2’000 ppm, compatible with WELL Building
Standard™ 1
▪ SCD41: Improved accuracy, specified measurement
range 400 – 5’000 ppm, additionally compatible with
California Title 24 2 and RESET® 3, features single-shot
operation mode
▪ SCD43: High accuracy, specified measurement range
400 – 5’000 ppm, additionally compatible with
ASHRAE Standard 62.1 4, features single-shot
operation mode
https://sensirion.com/media/documents/48C4B7FB/67FE0194/CD_DS_SCD4x_Datasheet_D1.pdf
Bosch BME680 sensor and get temperature, humidity, pressure and gas readings¶

Response time (𝜏0−63%) ~8 s
Accuracy tolerance ±3% r.H.
https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf
https://docs.arduino.cc/libraries/bme680/
SPS30¶

Capteur de particules, 0 à 1000 µg/m3, Laser, I2C, UART, calibré, Alimentation 4,5 à 5,5 V

https://sensirion.com/products/catalog/SPS30
https://github.com/Sensirion/arduino-i2c-sps30

BU?
INA219¶

INA219 Zerø-Drift, Bidirectional Current/Power Monitor With I2C Interface
The INA219 senses across shunts on buses that can
vary from 0 to 26 V. The device uses a single 3- to 5.5-V supply, drawing a maximum of 1 mA of supply
Power Management current. The INA219 operates from –40°C to 125°C
https://www.ti.com/lit/ds/symlink/ina219.pdf
INA226¶



36V, 16-bit, ultra-precise i2c output current/voltage/power monitor w/alert
Operates from 2.7V to 5.5V power supply
https://www.ti.com/lit/ds/symlink/ina226.pdf
Arduino library for the INA226 power sensor.
https://github.com/RobTillaart/INA226
INA3221 High-Side Measurement¶

Triple-Channel, High-Side Measurement, Shunt and Bus Voltage Monitor
https://docs.arduino.cc/libraries/ina3221/
https://www.ti.com/lit/ds/symlink/ina3221.pdf
PCF8563 Real-time clock/calendar¶

VDD = 1.8 V to 5.5 V
400-kHz Fast I2C bus
@I2C 0x51
TCA9555 and TCA9535 I/O Expander 16-Bit¶
TCA9535 Low-Voltage 16-Bit I2C and SMBus Low-Power I/O Expander with Interrupt Output and Configuration Registers,
TCA9555 is identical to the TCA9535, except for the inclusion of the internal I/O pull-up resistor

VDD 1.65 V to 5 V
400-kHz Fast I2C bus.
@I2C
TCA9535
ADS1115 Quad ADCs¶
16-bit, 860-SPS, 4-channel, delta-sigma ADC with PGA, oscillator, VREF, comparator and I2C

VDD 2.0 V to 5.5 V
@I2C
| 0x48 | 0b1001000 | GND |
| 0x49 | 0b1001001 | VDD |
| 0x48 | 0b1001010 | SDA |
| 0x49 | 0b1001011 | SCL |
LTC2635 Quad DACs¶
Quad 12-/10-/8-Bit I2C VOUT
DACs with 10ppm/°C Reference
VDD 2.7V to 5.5V
@I2C
| 0x10 | 0b0010000 | GND |
| 0x11 | 0b0010001 | NC |
| 0x12 | 0b0010010 | VDD |
IP5306 Battery Management System (FM5324GA)¶
Fully-Integrated Power Bank System-On-Chip with 2.1A charger, 2.4A discharger
@I2C 0x75
IP5306
https://done.land/components/power/powersupplies/battery/chargers/charge-discharge/ip5306/ip5306i2c/
24LC512 EEPROM 512Kbit¶

VDD 2.5-5.5V
400-kHz Fast I2C bus
@I2C
| A2 | A1 | A0 | ||
| 0x50 | 0b1010000 | GND | GND | GND |
| 0x51 | 0b1010001 | GND | GND | VCC |
| 0x52 | 0b1010010 | GND | VCC | GND |
| 0x53 | 0b1010000 | GND | VCC | VCC |
| 0x54 | 0b1010100 | VCC | GND | GND |
| 0x55 | 0b1010101 | VCC | GND | VCC |
| 0x54 | 0b1010110 | VCC | VCC | GND |
| 0x55 | 0b1010111 | VCC | VCC | VCC |
SC18IS606 I2C-bus to SPI bridge¶

https://github.com/maxgerhardt/SC18IS602B-arduino
https://www.nxp.com/docs/en/data-sheet/SC18IS606.pdf
PCA9515A¶
Dual Bidirectional I2C Bus and SMBus Repeater

Updated by Frédéric Blanc about 2 months ago · 81 revisions