Difference between revisions of "Automation - MQTT"

From Da Nerd Mage Wiki
Jump to navigation Jump to search
Line 15: Line 15:


== Debian Caveat ==
== Debian 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...
There is SOME possibility it's a newer version of Mosquitto causing the issue.  Further research required...
But for now, It's a simple matter of editing the config file for Mosquitto.
* <code class="mwt-code">sudo vi /etc/mosquitto/mosquitto.conf</code>
& add in:
listener 1883
allow_anonymous true
Then,
* <code class="mwt-code">sudo service mosquitto restart</code>


= Install client tools for testing etc =
= Install client tools for testing etc =

Revision as of 17:24, 11 January 2022

  • Proven on Mint 19.3
  • Proven on SparkyLinux 5.11
  • Proven on raw Debian (With a caveat)

Mosquitto MQTT Broker

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)

Debian 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...

There is SOME possibility it's a newer version of Mosquitto causing the issue.  Further research required...

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

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).