MQTT IoT messaging protocol
Protocolo IoT · ISO/IEC 20922 · 9 min de lectura

MQTT — protocolo de mensajería IoT

La columna vertebral de mensajería de publicación/suscripción del IoT moderno. Cómo encaja MQTT en el hogar inteligente y la automatización de edificios junto a KNX, DALI y Home Assistant.

home/temphome/pvhome/motionautomatizācijalietotneierakstiMQTTbrokerpub / sub · QoSPublishersSubscribers

¿Qué es MQTT?

MQTT (Message Queuing Telemetry Transport) es un protocolo de mensajería de publicación/suscripción ligero, diseñado originalmente para enlaces por satélite en la década de 1990 (IBM/Eurotech). Hoy es el protocolo dominante para la comunicación dispositivo-servidor en el IoT — desde sensores ESP8266 hasta PLC industriales.

A diferencia de KNX (basado en bus) o Modbus (maestro/esclavo), MQTT utiliza un modelo de broker: los dispositivos publican mensajes en topics de un broker central (p. ej. Mosquitto), y cualquier suscriptor que escuche ese topic recibe el mensaje. Sin comunicación directa entre dispositivos.

Conceptos clave:

  • Broker: Servidor central que enruta todos los mensajes (Mosquitto, HiveMQ, EMQX). En hogar inteligente = se ejecuta en el servidor HA o en una Pi separada.
  • Topic: Ruta de texto jerárquica, p. ej. home/livingroom/light/state
  • Publicación: Un dispositivo envía un mensaje a un topic
  • Suscripción: Un cliente escucha un topic y recibe todos los mensajes publicados en él
  • Mensaje retenido: El broker almacena el último valor — los nuevos suscriptores lo reciben de inmediato
  • QoS 0/1/2: Como máximo una vez / Al menos una vez / Exactamente una vez — garantía de entrega

Especificación de MQTT

ParámetroValor
EstándarISO/IEC 20922 (MQTT 3.1.1), MQTT 5.0
TransporteTCP/IP (puerto 1883) o TLS (puerto 8883)
TopologíaEstrella (centrada en el broker)
DirecciónPublicación/suscripción bidireccional
Carga útilCualquier binario/texto — normalmente JSON o valor simple
Separador de topic/ (barra), p. ej. home/floor1/room2/temp
Comodín (un nivel)+ (más), p. ej. home/+/light
Comodín (multinivel)# (almohadilla), p. ej. home/#
QoS 0Enviar y olvidar — sin garantía de entrega
QoS 1Al menos una vez — el receptor confirma (puede duplicar)
QoS 2Exactamente una vez — protocolo de enlace de 4 pasos
Mensajes retenidosEl broker almacena el último mensaje por topic
Mensaje WillLo envía el broker si un cliente se desconecta de forma inesperada
AutenticaciónUsuario/contraseña, certificados TLS
Puerto (sin cifrar)1883
Puerto (TLS)8883

MQTT en el hogar inteligente — el ecosistema

MQTT es el lenguaje común del hogar inteligente DIY y semiprofesional. Varios grandes proyectos lo usan como capa de transporte:

Zigbee2MQTT

zigbee2mqtt.io

Traduce los telegramas de radio Zigbee a MQTT. Conecta un coordinador Zigbee (CC2530, SkyConnect) a HA, ejecuta Zigbee2MQTT y más de 2500 dispositivos Zigbee aparecen como topics MQTT. No hace falta el hub Philips Hue.

Tasmota / ESPHome

tasmota.github.io

Firmware de código abierto para módulos ESP8266/ESP32. Flashea un relé Sonoff económico con Tasmota y se convierte en un interruptor inteligente que publica en MQTT. ESPHome es nativo de HA.

Integración MQTT de Home Assistant

home-assistant.io

HA puede publicar y suscribirse a cualquier topic MQTT. Configuración mediante YAML o interfaz. MQTT Discovery crea automáticamente entidades de HA cuando un dispositivo se anuncia a través de un topic específico.

Node-RED

nodered.org

Programación visual basada en flujos que se suscribe a topics MQTT, aplica lógica y publica en otros topics o endpoints KNX/HTTP. A menudo se usa junto a HA para enrutamiento complejo.

WirenBoard

wirenboard.com

Este controlador ruso para carril DIN usa MQTT como protocolo principal. WirenBoard publica todas las lecturas de los sensores y acepta control mediante topics MQTT. Funciona con HA y Node-RED.

Ejemplos de estructura de topics

Ejemplo de árbol de topics MQTT (hogar inteligente)

home/
├── livingroom/
│   ├── light/state          → "ON" / "OFF"
│   ├── light/brightness     → "75"  (0-100%)
│   ├── light/color_temp_k   → "3000"
│   ├── temperature          → "21.5"
│   └── occupancy            → "true" / "false"
├── kitchen/
│   ├── light/state          → "ON"
│   └── humidity             → "45"
├── bedroom/
│   ├── blind/position       → "75"  (0=open, 100=closed)
│   └── thermostat/setpoint  → "20.5"
└── panel/
    ├── meter/power_w        → "1247"
    └── meter/energy_kwh     → "1852.3"

MQTT frente a KNX — cuándo usar cada uno

AspectoMQTTKNX TP
InfraestructuraRed IP (Ethernet/Wi-Fi)Cable de bus TP dedicado
FiabilidadDepende de la red y del tiempo de actividad del brokerDeterminista, el bus siempre está activo
LatenciaMilisegundos (IP) + ida y vuelta al broker<50 ms (telegrama de bus directo)
EscalabilidadIlimitada (escalado horizontal)255 direcciones por línea, máx. 15 líneas
Complejidad de instalaciónBaja (broker + publicación/suscripción)Alta (programación ETS, direccionamiento)
Coste de hardwareBajo (ESP8266 = 2 €)Alto (actuador KNX = 50–200 €+)
CertificaciónNo requeridaCertificado KNX + licencia ETS
Funciona sin servidor❌ El broker debe estar en ejecución✅ El bus local funciona sin servidor
Mejor caso de usoDatos de sensores, integración IoT, DIY flexibleControl crítico para la seguridad, edificio comercial
Usuario típicoMaker, integrador de HA, desarrollador IoTIngeniero eléctrico, especialista en DALI/KNX

La respuesta sincera: En una instalación premium bien diseñada, KNX se encarga del control del hardware (conmutación, regulación, persianas) y MQTT/IP se encarga de la agregación de datos de sensores y las integraciones de software (monitorización de energía, presencia, clima). Son complementarios — no competidores.

Opciones de integración KNX + MQTT

Home Assistant (integraciones KNX + MQTT)

Tanto la integración de KNX como la de MQTT se ejecutan en HA. Las automatizaciones pueden leer los valores de los sensores MQTT y activar los actuadores KNX — o viceversa. Sin hardware adicional.

knx-mqtt-bridge (código abierto)

Servicio Node.js independiente que conecta las direcciones de grupo KNX con los topics MQTT de forma bidireccional. Cada GA de KNX se asigna a un topic MQTT. Se ejecuta en Pi o Docker.

Nodos Node-RED KNX + MQTT

node-red-contrib-knx + nodos MQTT. Programación visual por flujos: topic MQTT → transformación → telegrama KNX. Ideal para el enrutamiento condicional complejo.

Pasarela WirenBoard WB-MGW

La pasarela WirenBoard puede traducir entre dispositivos RS-485/Modbus y MQTT. Después HA lee MQTT y publica en KNX. Habitual en Europa del Este.

Arquitectura KNX + MQTT diseñada para tu proyecto

Integramos redes de sensores MQTT con cuadros de control KNX — Zigbee2MQTT, contadores de energía, sensores HVAC — todo unificado en un solo sistema.

Solicitar presupuesto →
Loading...
Back to top