Estos proyectos IoT con Raspberry Pi 5 muestran lo que la Pi más reciente hace bien: más margen de CPU, almacenamiento NVMe rápido, dos conectores de cámara y un acelerador de IA opcional, todo en una placa que sigue ejecutando las mismas herramientas de Python y Node-RED de siempre. Cada uno de los diez proyectos siguientes usa MQTT para la mensajería, de modo que las piezas pueden hablar entre sí, con dashboards y con tu teléfono. Puedes probarlos todos contra el broker gratuito en broker.connectmq.com antes de pasarlos a credenciales privadas.
Qué cambia la Raspberry Pi 5 para el IoT
La Pi 5 supone un salto importante respecto a la Pi 4 para proyectos siempre encendidos. Su CPU Cortex-A76 de cuatro núcleos ejecuta cargas más pesadas, como bases de datos locales, visión artificial y varios puentes de protocolos a la vez. Un conector PCIe admite SSD NVMe mediante el M.2 HAT+, lo que elimina la tarjeta SD como punto débil de fiabilidad. La placa añade un reloj de tiempo real (con conector de batería), un botón de encendido y dos conectores de cámara/pantalla de cuatro carriles. El GPIO pasó al nuevo controlador de E/S RP1, por eso las bibliotecas actuales, como gpiozero con el backend lgpio, son la forma de manejar los pines.
Las contrapartidas son el consumo y el calor: la Pi 5 necesita una fuente USB-C de 5 V y 5 A para alimentar periféricos USB a plena corriente, y agradece el Active Cooler bajo carga sostenida. Para nodos de sensores con batería, una Pico W o un ESP32 suele ser mejor opción, con la Pi 5 como hub, porque duermen entre lecturas y solo despiertan para publicar.
Una estructura de topics común
Los diez proyectos usan la misma convención de topics, para que puedas combinarlos más adelante sin renombrar nada:
connectmq/demo/<your-id>/<project>/<device>/<measurement>
connectmq/demo/<your-id>/<project>/<device>/status (retained, Last Will)
connectmq/demo/<your-id>/<project>/<device>/<output>/set (commands, not retained)
Y el mismo publicador mínimo, que cada proyecto amplía:
import json, time, uuid
import paho.mqtt.client as mqtt
PREFIX = "connectmq/demo/p5x9m3"
client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id=f"pi5-{uuid.uuid4().hex[:8]}")
client.will_set(f"{PREFIX}/hub/pi5/status", "offline", qos=1, retain=True)
client.connect("broker.connectmq.com", 1883, keepalive=30)
client.loop_start()
client.publish(f"{PREFIX}/hub/pi5/status", "online", qos=1, retain=True)
while True:
with open("/sys/class/thermal/thermal_zone0/temp") as f:
cpu_c = int(f.read()) / 1000
client.publish(f"{PREFIX}/hub/pi5/cpu_temp", json.dumps({"value": cpu_c, "ts": int(time.time())}), qos=1)
time.sleep(10)
Los 10 proyectos de un vistazo
| # | Proyecto | Hardware clave | Dificultad |
|---|---|---|---|
| 1 | Hub de sensores doméstico | BME280, DS18B20 | Principiante |
| 2 | Monitor de energía | Medidor de energía Modbus o ADC con pinza CT | Intermedio |
| 3 | Cámara con IA y eventos de objetos | Camera Module 3 o AI Camera, AI Kit | Avanzado |
| 4 | Gateway multiprotocolo | BLE, LoRa, Modbus | Intermedio |
| 5 | Dashboard MQTT de pared | Pantalla táctil | Principiante |
| 6 | Stack local de series temporales | SSD NVMe | Intermedio |
| 7 | Controlador de riego inteligente | Relés, sensores de humedad del suelo | Intermedio |
| 8 | Estación de calidad del aire | Sensores de PM2.5 y CO2 | Principiante |
| 9 | Gateway de monitoreo de máquinas | Modbus TCP o CAN | Avanzado |
| 10 | Monitor de salud de la flota | Nada adicional | Principiante |
1. Hub de sensores doméstico
Conecta un BME280 (temperatura, humedad, presión) por I2C y algunas sondas DS18B20 por one-wire, y publica cada lectura cada minuto con mensajes retenidos para que los dashboards muestren los valores de inmediato. La Pi 5 tiene margen para ejecutar también Node-RED o Home Assistant en la misma placa. Las sondas DS18B20 son sumergibles, lo que las hace ideales para tanques, refrigeradores y lecturas en exteriores.
2. Monitor de energía
Lee un medidor de energía de carril DIN por Modbus RTU con un adaptador USB-RS485, o mide la corriente con pinzas CT y un HAT ADC. Publica la potencia cada pocos segundos y los totales de energía cada minuto. Las alertas por umbral sobre el consumo pueden avisarte cuando un aparato se queda encendido. Deja que un electricista cualificado instale cualquier cosa dentro de un tablero eléctrico.
3. Cámara con IA y eventos de objetos
Aquí es donde brilla la Pi 5. Usa la Camera Module 3 con el AI Kit o el AI HAT+ basados en Hailo, o la Raspberry Pi AI Camera, que ejecuta el modelo en el propio sensor. Ejecuta la detección en local y publica eventos, no video: un pequeño mensaje JSON como {"label": "person", "confidence": 0.91, "zone": "driveway"} en .../camera/front/detections. Guarda las imágenes en la Pi o súbelas por separado; MQTT transporta los metadatos. El tutorial de detección de movimiento con cámara por MQTT es un buen punto de partida sin IA.
4. Gateway multiprotocolo
Combina sensores Bluetooth, una radio LoRa y un dispositivo Modbus en una sola Pi 5, cada uno como un servicio propio que publica en un único árbol de topics. Los núcleos adicionales permiten que los tres puentes funcionen sin competir por la CPU. Sigue el puente BLE a MQTT con Raspberry Pi para la parte Bluetooth y luego añade los demás de uno en uno.
5. Dashboard MQTT de pared
Conecta la pantalla táctil oficial, arranca en un navegador a pantalla completa y muestra un dashboard que se suscribe por WebSocket seguro en el puerto 8084. Como la Pi 5 renderiza páginas web con fluidez, los gráficos y los indicadores en vivo responden bien. Añade botones que publiquen comandos en topics .../set para luces o relés en otras partes de la casa.
6. Stack local de series temporales
Instala un SSD NVMe en el M.2 HAT+ y ejecuta Telegraf, InfluxDB y Grafana. Telegraf se suscribe a tus topics MQTT como un cliente normal y escribe en InfluxDB, y Grafana grafica el historial. El SSD soporta las escrituras constantes mucho mejor que una tarjeta SD. La guía de Grafana e InfluxDB en Raspberry Pi cubre la instalación.
7. Controlador de riego inteligente
Sensores capacitivos de humedad del suelo a través de un ADC, una placa de relés para las válvulas y una previsión meteorológica obtenida por un pequeño script: la Pi decide cuándo regar y publica cada decisión. Haz que los comandos no sean retenidos y añade en el código un tiempo máximo de funcionamiento por válvula, para que una conexión perdida nunca deje el agua abierta.
8. Estación de calidad del aire
Un sensor de partículas PM2.5 por serie y un sensor de CO2 NDIR por I2C dan una imagen útil del aire interior. Publica ambos cada 30 segundos y alerta cuando el CO2 sube, lo que sirve como recordatorio práctico para ventilar una sala. Deja que los sensores se calienten unos minutos antes de fiarte de las primeras lecturas.
9. Gateway de monitoreo de máquinas
En un taller o una pequeña fábrica, una Pi 5 puede consultar un PLC por Modbus TCP o escuchar el bus CAN de una máquina, y publicar estados y contadores bajo una ruta al estilo ISA-95, como site1/workshop/line1/press2/state. Esa estructura alimenta un Unified Namespace y funciona con herramientas que entienden las jerarquías de planta. Para instalaciones en armario, considera un dispositivo industrial basado en Compute Module con alimentación de 24 V y montaje en carril DIN.
10. Monitor de salud de la flota
Si tienes más de una Pi, haz que cada una publique cada minuto la temperatura de la CPU, los indicadores de throttling, el espacio en disco y el tiempo de actividad, además de un estado Last Will retenido. Un solo dashboard muestra entonces la salud de todos los dispositivos, y las alertas saltan antes de que un disco lleno o un sobrecalentamiento provoquen una parada. El publicador mínimo de arriba ya es el primer paso: añade el uso de disco de shutil.disk_usage("/") y la salida de vcgencmd get_throttled.
Cómo preparar cualquier proyecto para producción
Todos los proyectos anteriores empiezan en el servidor MQTT público gratuito, perfecto para experimentar pero legible por cualquiera. Antes de depender de un proyecto, repasa esta lista:
- Pasa a un broker privado con TLS en el puerto 8883 y credenciales por dispositivo.
- Ejecuta cada script como servicio systemd con reinicio automático.
- Arranca desde NVMe o un SSD USB en lugar de una tarjeta SD.
- Almacena las lecturas en un búfer local durante los cortes de red.
- Refuerza SSH, activa el firewall y mantén el sistema operativo actualizado.
- Publica un heartbeat y un Last Will para saber cuándo se detiene un dispositivo.
Los consejos de fiabilidad para Raspberry Pi tratan a fondo los puntos 2 a 4, y el tutorial de MQTT con Raspberry Pi es el lugar para empezar si MQTT en la Pi es nuevo para ti. La documentación oficial de la Raspberry Pi 5 enumera los conectores y los requisitos de alimentación de la placa.
Un broker MQTT en la nube une los diez proyectos: los sensores en casa, un gateway en el taller y un dashboard en tu teléfono se conectan de salida al mismo broker, sin redirección de puertos. ConnectMQ ofrece exactamente eso como broker MQTT gestionado, con un explorador de topics en vivo, alertas por umbral y una vista de dispositivos integrados en el portal.
Crea tu próximo proyecto con Pi 5 en ConnectMQ
Crea un broker Serverless gratuito de ConnectMQ en app.connectmq.com, sin tarjeta de crédito, y tendrás credenciales TLS en un par de minutos. Apunta cualquiera de estos proyectos hacia él y verás aparecer tus topics en el navegador en cuanto la Pi se conecte.
Preguntas frecuentes
¿Es la Raspberry Pi 5 excesiva para proyectos IoT sencillos?
Para un solo sensor, a menudo sí; una Pico W o una Zero 2 W es más barata y consume menos. La Pi 5 compensa cuando un mismo dispositivo ejecuta varios servicios, una base de datos o visión artificial.
¿Funcionan en la Pi 5 los proyectos de la Pi 4?
La mayoría sí. La principal excepción es el código GPIO escrito para RPi.GPIO, que no es compatible con la Pi 5; cambia a gpiozero o lgpio.
¿Qué biblioteca MQTT debo usar en la Pi 5?
paho-mqtt 2.x es la opción estándar para Python, y los nodos MQTT integrados de Node-RED funcionan bien para proyectos basados en flujos. Ambos funcionan sin cambios en la Pi 5.
¿Pueden varios proyectos compartir un broker?
Sí. Asigna a cada proyecto su propia rama de topics y a cada dispositivo su propio client ID, y un solo broker puede atenderlos a todos, dentro de los límites de conexión de tu plan.



