Desarrollo con MQTT
MQTT es el protocolo estándar para IoT. Ligero, eficiente y diseñado para conexiones inestables. Implementamos arquitecturas MQTT completas: brokers gestionados o auto-alojados, niveles de QoS, seguridad TLS, gestión de topics y bridge edge-to-cloud.
MQTT: comunicación eficiente entre dispositivos y la nube
MQTT (Message Queuing Telemetry Transport) es un protocolo de mensajería pub/sub diseñado para entornos con ancho de banda limitado, alta latencia o conexiones inestables. Un mensaje MQTT puede ocupar tan solo 2 bytes de overhead, frente a los cientos de bytes de una petición HTTP. Esto lo convierte en el protocolo ideal para dispositivos IoT con baterías y conectividad limitada.
El modelo pub/sub de MQTT desacopla completamente a los productores de datos (dispositivos) de los consumidores (aplicaciones, dashboards, sistemas de alertas). Un dispositivo publica datos en un topic; cualquier número de suscriptores puede recibir esos datos sin que el dispositivo sepa quién los consume. Esto permite añadir nuevos consumidores (un nuevo dashboard, un sistema de alertas, un pipeline de ML) sin modificar el firmware de los dispositivos.
En Soamee implementamos MQTT como protocolo principal en nuestros proyectos IoT. Lo usamos en la plataforma de Spherag para la transmisión de datos de sensores agrícolas, y en múltiples proyectos de IoT industrial para monitorización y control de dispositivos.
Trabajamos con brokers gestionados como AWS IoT Core y brokers auto-alojados como EMQX y Mosquitto. La elección depende de los requisitos de escala, coste, control y compliance de cada proyecto.
Overhead mínimo
Seguridad nativa
Niveles de garantía
Detección desconexión
Calidad de servicio adaptada a cada caso
MQTT ofrece tres niveles de QoS que balancean fiabilidad y eficiencia. Elegir el nivel correcto es clave para optimizar el rendimiento.
QoS 0: At most once
Fire and forget. El mensaje se envía una vez sin confirmación. El más rápido y ligero. Ideal para telemetría de alta frecuencia donde perder un dato puntual no es crítico (temperatura cada segundo, posición GPS). Mínimo overhead de red y batería.
QoS 1: At least once
Entrega garantizada con posibles duplicados. El emisor reenvía el mensaje hasta recibir confirmación (PUBACK). El nivel más usado en IoT industrial. Ideal para datos de sensores donde la pérdida no es aceptable pero un duplicado se puede gestionar (alertas, lecturas de consumo).
QoS 2: Exactly once
Entrega garantizada sin duplicados. Handshake de 4 pasos que asegura que cada mensaje se recibe exactamente una vez. Mayor overhead de red y latencia. Reservado para operaciones críticas donde un duplicado causaría problemas (comandos de actuadores, transacciones, actualizaciones de firmware).
Lo que implementamos con MQTT
Seguridad TLS/mTLS
Cifrado de todas las comunicaciones MQTT con TLS 1.2/1.3. Autenticación mutua (mTLS) con certificados X.509 para verificar la identidad tanto del dispositivo como del broker. Rotación automática de certificados y revocación inmediata de dispositivos comprometidos. Autorización granular por topic para controlar qué dispositivo puede publicar o suscribirse a qué datos.
Broker setup y clustering
Desplegamos y configuramos brokers MQTT según los requisitos del proyecto. EMQX para alta escala (millones de conexiones) con clustering nativo. Mosquitto para proyectos más pequeños o edge gateways. AWS IoT Core como servicio gestionado. Configuración de bridge entre brokers para arquitecturas edge-to-cloud con sincronización de datos.
Diseño de topics
Diseño de la jerarquía de topics MQTT adaptada al dominio del proyecto. Patrones como {org}/{site}/{device-type}/{device-id}/{data-type} que permiten suscripciones por wildcard (# y +) para consumir datos de forma flexible. Shared subscriptions para distribuir la carga entre múltiples consumidores.
Bridge edge-to-cloud
Arquitectura de bridge entre broker local en el edge (Mosquitto en gateway) y broker cloud (AWS IoT Core, EMQX Cloud). Los datos se publican localmente con baja latencia, se almacenan en buffer durante desconexiones y se sincronizan con el cloud cuando hay conectividad. Store-and-forward para garantizar zero data loss.
¿Necesitas implementar MQTT en tu proyecto IoT?
Consultoría gratuita →Brokers y herramientas que utilizamos
También te puede interesar
Preguntas frecuentes sobre MQTT
MQTT 5.0 o MQTT 3.1.1?
MQTT o HTTP para mi proyecto IoT?
Cuántas conexiones simultáneas soporta un broker MQTT?
Implementa MQTT en tu proyecto IoT
Te ayudamos a elegir el broker adecuado, diseñar la arquitectura de topics y construir el pipeline MQTT completo.