Instalar y probar mosquitto en Raspberry Pi

En este post te mostraré cómo instalar mosquitto y mosquitto-clients sobre raspbian para, más tarde, realizar comunicaciones por el protocolo MQTT y así indagar más en el internet de las cosas.

Después vamos a publicar mensajes, y a suscribirnos a un “tópico o tema” para probar que todo funcione perfectamente.

Instalación y configuración de Mosquitto en Raspberry Pi

Ejecuta los siguientes comandos:

sudo apt install -y mosquitto mosquitto-clients

Espera a que se termine de instalar. Es momento de revisar la versión con:

mosquitto -v

Lo que te debe dar una salida similar a la siguiente. Presta atención al puerto en caso de que te quieras conectar más tarde:

Revisar versión de mosquitto en Raspberry pi

Vamos a hacer que el servicio de mosquitto se inicie con el sistema, así que usamos systemctl:

sudo systemctl enable mosquitto.service

Y después revisamos su status con:

sudo systemctl status mosquitto

Lo que debe resultar en algo como lo de la imagen:

Revisar estado de mosquitto en raspbian con systemctl status

Si aparece algo similar a ello, y dice “active (running)” todo está bien.

Nota: si no aparece habilitado intenta reiniciar, o ejecuta:

sudo systemctl enable mosquitto.service --now

Publicar y suscribir

El funcionamiento de mosquitto es sencillo. Podemos publicar “mensajes” por tópicos, y suscribirnos a ellos.

Publicar con mosquitto_pub

Para publicar usamos el comando mosquitto_pub por ejemplo:

mosquitto_pub -h localhost -t "mi_casa/sala/temperatura" -m "20"

En donde -h indica el hostname; sería localhost en este caso. La opción -t indica el tópico (intentamos enviar la temperatura de la sala dentro de mi casa) y finalmente la opción -m indica el mensaje (indico que estamos a 20 grados celsius)

Suscribir con mosquitto_sub

De igual modo podemos usar mosquitto_sub para suscribirnos a un tópico en especial. Por ejemplo, si quisiera suscribirme al tópico de la temperatura del jardín podría ser:

mosquitto_sub -h localhost -t "jardin/temperatura"

De modo que, cuando se publique en el tópico temperatura del jardín se me mostrará el mensaje (presiona CTRL + C para detenerlo)

Conclusión

Parece simple e incluso sin sentido, pero con esto hemos creado un servidor con el protocolo MQTT. Más adelante traeré tutoriales para usar la ESP8266 con la Raspberry y enviar la temperatura de un sensor DHT22 a la Pi o a otros dispositivos.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario