🛠 Premier capteur sur le bus I2C

Raspberry Pi 4 Model B (2019) — Ficha de placa · intermediaire · Schéma : IMG-model-4b-intermediaire-2-model4b-i2c-capteur.svg — Bus I2C du Pi 4B : SDA (broche 3), SCL (broche 5), 3.3 V et GND vers un capteur BME680, résistances de pull-up

Objetivos

Activar el bus I2C, escanear el bus con i2cdetect y luego leer un sensor de entorno desde Python con smbus2. El BCM2711 expone hasta 6 controladores I2C; i2c-1 (pines 3 y 5) es el bus de usuario estándar.

Material

Código completo

# Activer I2C : sudo raspi-config -> Interface Options -> I2C (ou dtoverlay=i2c-rtc en plus)
sudo i2cdetect -y 1        # balayage du bus i2c-1
#!/usr/bin/env python3
# lecture_i2c.py - lire l'identifiant de puce du BME680
import smbus2

ADDR = 0x76               # 0x76 ou 0x77 selon la broche SDO du module
# 
bus = smbus2.SMBus(1)
chip_id = bus.read_byte_data(ADDR, 0xD0)
print(f"Chip ID 0x{chip_id:02X} (BME680 attendu : 0x61)")

Verificación esperada

i2cdetect -y 1 muestra una tabla; aparece una celda (a menudo 76 o 77): es el sensor. El script muestra Chip ID 0x61 para un BME680 auténtico. Si no aparece ninguna celda: bus inactivo, cableado SDA/SCL invertido o módulo sin alimentación.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales