Difference between revisions of "Automation - MQTT"
Line 2: | Line 2: | ||
{{!}}+ Proven on: | {{!}}+ Proven on: | ||
{{!}}- <!-- Debian --> | {{!}}- <!-- Debian --> | ||
{{!}} style="text-align: center; width: | {{!}} style="text-align: center; width: 60px;" {{!}} [[File:Logo Debian.png{{!}}60px{{!}}link=https://www.debian.org/{{!}}center{{!}}middle{{!}}frameless]] | ||
{{!}} 11 (bullseye) | {{!}} style="text-align: center; width: 40px;" {{!}} 11 (bullseye){{!}} ([[#Debian / Version Caveat{{!}}caveat]]) | ||
{{!}} ([[#Debian / Version Caveat{{!}}caveat]]) | |||
<br> | <br> | ||
{{!}}- <!-- LMDE --> | {{!}}- <!-- LMDE --> |
Revision as of 21:07, 14 January 2022
11 (bullseye)| (caveat)
| ||
4 | (caveat)
| |
19.3 / 20.3 |
| |
20.04.3 |
| |
5.11 | (caveat)
|
As always...
Start with:
sudo apt update
sudo apt upgrade
Installing Mosquitto
sudo apt-get install mosquitto
Pretty simple, eh?
Ensure that Mosquitto broker is running
sudo service mosquitto status
expected result is Active: active (running)
Note: Ubuntu repositories have an outdated version
If you want to know which version you've installed...
mosquitto
(Ignore the error message "Error: Address already in use". It's already running as a service.)
Install client tools for testing etc
(Do this on any machine expected to manually use MQTT)
sudo apt install mosquitto-clients
Testing
In a terminal:
mosquitto_sub -h localhost -t "mqtt" -v
In another terminal:
mosquitto_pub -h localhost -t "mqtt" -m "Hello MQTT"
Now the message “mqtt Hello MQTT
” will be displayed in the first terminal where the topic “mqtt” is subscribed.
Subscribing to #
gives you a subscription to everything except for topics that start with a $
(these are normally control topics anyway).
Debian / Version Caveat
During an install on a raw Debian system, I discovered that Mosquitto refused connection when I tried to access it with anything other than "localhost" as the hostname...
Apparently, mosquitto 2.0 binds only to the loopback interface unless specifically told otherwise.
& Debian installs v2.0 or higher...
But for now, It's a simple matter of editing the config file for Mosquitto.
sudo vi /etc/mosquitto/mosquitto.conf
& add in:
listener 1883 allow_anonymous true
Then,
sudo service mosquitto restart