Blog de Wisely

¿Cuándo y por qué utilizar MQTT (y cuándo no)?

Escrito por Wisely | Aug 19, 2025 8:35:24 PM
Si estás explorando el mundo del IoT industrial, es probable que te hayas topado con el protocolo MQTT. Muchos lo mencionan como la vía más eficiente para transmitir datos desde sensores hacia plataformas de visualización, pero ¿realmente es siempre la mejor opción? En esta entrada, explicamos de forma clara y práctica qué es MQTT, cuándo conviene usarlo y cuándo es mejor optar por otra solución.
 
Entendiendo MQTT sin complicacionesMQTT (Message Queuing Telemetry Transport) es un protocolo de mensajería pensado para entornos con poco ancho de banda, dispositivos con recursos limitados y redes no siempre estables.
 
A diferencia de otros protocolos más pesados, MQTT permite que un sensor envíe datos ("publique") a un servidor central llamado broker, y que otras aplicaciones puedan recibir esos datos ("suscribirse") sin que el emisor tenga que preocuparse de quién está escuchando.
 
 Esta arquitectura de tipo publicar/suscribirse permite escalabilidad y flexibilidad: un mismo dato puede llegar a varias plataformas o usuarios sin que eso implique una sobrecarga para el sensor.
 

¿Qué hace falta para usar MQTT?

Para que un sistema IoT funcione con MQTT necesitas, principalmente:
  • Dispositivos capaces de comunicarse por red usando TCP/IP.
  • Un *broker*, que puede estar instalado localmente (por ejemplo, **Mosquitto**) o ser gestionado en la nube (como **AWS IoT Core** o **Azure IoT Hub**).
  • Algún mecanismo de autenticación y cifrado (TLS) si se requiere seguridad en la transmisión.
 La instalación local es útil para pruebas o implementaciones simples, mientras que los servicios gestionados ofrecen escalabilidad sin preocuparse de mantener servidores. Herramientas como **Adafruit IO** son también una buena opción para empezar sin complicaciones.
 

 ¿Y si quiero usar MQTT sin gastar?

Sí, es totalmente posible. Muchos brokers como Eclipse Mosquitto son gratuitos y de código abierto. También existen plataformas como Adafruit IO que ofrecen entornos amigables para pruebas. Incluso AWS y Azure permiten ciertos niveles gratuitos para comenzar. Eso sí, si tu solución escala en cantidad de dispositivos o volumen de datos, deberás evaluar los costos asociados.
 

¿Qué pasa con tecnologías como LoRaWAN o NB-IoT?

Aquí empieza a ponerse interesante. MQTT funciona muy bien cuando los dispositivos están conectados continuamente o al menos tienen una conexión confiable. Pero tecnologías como NB-IoT o LoRaWAN están diseñadas precisamente para minimizar el uso de red y consumir la menor energía posible, enviando datos solo en ciertos momentos.
Por ejemplo, un sensor NB-IoT puede estar dormido la mayor parte del tiempo, encenderse, enviar un dato y volver a dormir. En esos casos, mantener una conexión MQTT abierta no tiene sentido, ya que el protocolo espera una conexión más permanente. Aun así, existe una solución práctica: usar un dispositivo intermedio o concentrador local.
 Este concentrador (como un pequeño PC industrial o gateway avanzado) se encarga de recibir los datos desde los sensores, incluso si llegan vía HTTP o por una red LoRaWAN local. Luego, convierte esos datos a formato MQTT y los publica a un broker, donde otras plataformas o sistemas pueden consumirlos.
 
En el caso de LoRaWAN, por ejemplo, es posible implementar una red completamente local. Algunos gateways permiten levantar su propio Network Server embebido. Esto evita depender de servicios externos, y permite que todos los datos circulen dentro de la red del cliente. Si se necesitan varios gateways, algunos fabricantes permiten configurarlos en modo maestro-esclavo dentro de la misma red para centralizar la recepción de datos.
 

Entonces, ¿Cuándo sí y cuándo no usar MQTT? Usa MQTT cuando:

  • Tienes dispositivos conectados continuamente (por Wi-Fi, Ethernet o redes celulares permanentes).
  • Necesitas enviar datos en tiempo real o con baja latencia.
  • Requieres una solución escalable con múltiples receptores de datos.
Evita MQTT cuando:
  • Tus dispositivos operan en ciclos largos de sueño (ej. NB-IoT).
  • El entorno no permite mantener conexiones TCP abiertas.
  • Se trata de un caso de uso donde el volumen de datos es muy bajo y esporádico (en esos casos, un HTTP sencillo puede ser más práctico).
 Buenas prácticas al implementar MQTTPara que todo funcione correctamente, conviene tener en cuenta algunos puntos:
 
  • Estructura bien los *topics*. Usa jerarquías claras como `planta/sensor1/temperatura`.
  • Ajusta el nivel de QoS según el caso. QoS 1 suele ser un buen equilibrio entre rendimiento y confiabilidad.
  • Asegura tus conexiones con TLS y controla el acceso con usuarios y contraseñas.
  • Implementa alertas para saber si un dispositivo deja de enviar datos o si ocurre un error.

¿Vale la pena usar MQTT?

En muchos escenarios industriales, sí. MQTT es una excelente opción para proyectos donde se necesita transmitir datos de forma continua, segura y a múltiples sistemas a la vez. Su bajo consumo de ancho de banda y flexibilidad lo han convertido en un estándar de facto para IoT.Sin embargo, como todo en tecnología, la clave está en entender el contexto.
A veces será mejor optar por arquitecturas híbridas, donde MQTT juega un rol clave en una parte del sistema, mientras otras tecnologías (como HTTP o Modbus) manejan otros flujos. Si eliges bien cómo usarlo, MQTT puede convertirse en el conector ideal entre el mundo físico de tus sensores y el sistema que toma decisiones con esos datos.