Sensores I2C: lee temperatura, humedad y presión
Activa I2C, detecta un sensor BME280 y lee datos en vivo con Python.
I2C permite que decenas de sensores compartan dos cables (SDA y SCL). Apréndelo una vez y podrás agregar pantallas, ADC, IMU y sensores ambientales a cualquier proyecto.
Video tutorial

Video de Sam, insertado desde YouTube. Los pasos escritos abajo son nuestros y coinciden con la lista de piezas.
Pasos de la misión
Activa I2C
Corre sudo raspi-config → Interface Options → I2C → Enable y reinicia.
Conecta el sensor
VIN a 3V3 (pin 1), GND al pin 6, SDA al pin 3 y SCL al pin 5.
Detéctalo
Instala i2c-tools y corre i2cdetect -y 1. Un BME280 aparece en la dirección 76 o 77.
Instala la librería
Dentro de tu entorno virtual instala la librería BME280 de Adafruit.
Lee los datos
Corre el script. Guarda los valores en un archivo, un panel o el proyecto de estación meteorológica.
Código
sudo apt install -y i2c-tools
i2cdetect -y 1
source ~/venv/bin/activate
pip install adafruit-circuitpython-bme280import time, board
from adafruit_bme280 import basic as adafruit_bme280
i2c = board.I2C()
bme = adafruit_bme280.Adafruit_BME280_I2C(i2c, address=0x76) # or 0x77
while True:
print(f"{bme.temperature:.1f} C {bme.humidity:.0f}% {bme.pressure:.1f} hPa")
time.sleep(2)Code comments are in English, like most libraries and docs — a good habit for makers.
Preguntas
i2cdetect no muestra nada
Revisa que SDA/SCL no estén invertidos, que el sensor reciba 3V3 y que I2C esté activo. Algunas placas baratas son BMP280 (sin humedad).