🛠 Interroger un capteur I2C sur les broches 3/5 du connecteur

Orange Pi 3B (Rockchip RK3566) · intermediaire · Schéma : IMG-orangepi-3b-intermediaire-2-opi3b-i2c-capteur.svg — capteur I2C relié aux broches SDA/SCL (broches 3/5, I2C2_M1) du connecteur 40 broches de l'Orange Pi 3B

Objectifs

Brancher un capteur ou périphérique I2C (OLED SSD1306, BME280, etc.) sur l'Orange Pi 3B et le détecter avec i2c-tools. Attention : sur le connecteur 40 broches, le seul I2C sans conflit est I2C2_M1, broches 3 (SDA) et 5 (SCL) ; il n'est activé dans le device tree mainline que depuis le commit du 2025-11-21 — noyau récent requis, sinon image constructeur ou overlay perso (noyaux 6.11 à 6.17).

Matériel

Code complet

sudo apt install i2c-tools
sudo modprobe i2c-dev
i2cdetect -l          # lister les contrôleurs
# Trouver le bus du connecteur : le nom du device tree contient i2c2
for d in /sys/bus/i2c/devices/i2c-*; do echo "$d : $(cat $d/of_node/fullname 2>/dev/null)"; done
sudo i2cdetect -y N   # N = numéro du bus i2c2 repéré ci-dessus
# Exemple de sortie attendue : un périphérique répond 3c (OLED SSD1306)
# Lecture rapide d'un registre :
sudo i2cget -y N 0x3c 0x00

Vérification attendue

i2cdetect -y N affiche une grille ; l'adresse du capteur apparaît (3c, 76, 77…). Aucun UU ne doit apparaître si aucun pilote noyau ne revendique déjà le périphérique.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels