MQTT installeren en configureren in Domoticz

De eerste pagina die we moeten volgen is Domoticz MQTT wiki.

Log in op je Domoticz server, ik mijn geval een Raspberry Pi, en ik gebruik daarvoor Putty.
We gaan eerst alles updaten en dan de volgende pakketten installeren: NPM, Node.js, Node RED en Mosquitto.
sudo apt update

sudo apt dist-upgrade

sudo apt install npm cmake uuid-dev libwebsockets-dev libssl1.0.2

apt-get install mosquitto mosquitto-clients

sudo npm install npm@latest -g

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

sudo apt install -y nodejs

sudo npm install -g mqtt url request nodemon

sudo npm install -g --unsafe-perm node-red

sudo apt install mosquitto mosquitto-clients

sudo npm install node-domoticz-mqtt

Na deze installatie gaan we onze Domoticz installatie en kiezen voor de Hardware pagina: Instellingen > Hardware. Hier gaan we een nieuwe ‘MQTT client Gateway met LAN interface’ aanmaken.

Toevoegen MQTT Client Gateway

Om de MQTT communicatie op te starten in Domoticz moet er Domoticz zich inschrijven bij de Mosquitto MQTT service.

  1. Open Domoticz
  2. Ga naar Setup > Hardware
  3. Vul de volgende gegevens in
    Naam : MQTT Gateway
    Type : MQTT Client Gateway with LAN interface
    Data Timeout : Disabled
    Remote Address : localhost
    Port : 1883
  4. Laat de velden Username en Password voor nu leeg.
    Deze moeten wel gevuld worden als je MQTT afschermt met een login
  5. Druk op Add
  6. Er is nu een MQTT Gateway als hardware naam aangemaakt

Om te testen of de nieuwe MQTT verbinding werkt kunnen we een dummy sensor aanmaken

  1. Op hetzelfde scherm Setup > Hardware voeren we de volgende gegevens in
    Name : Dummy
    Type : Dummy (Does nothing, use for virtual switches only)
    Data Timeout : Disabled
  2. Druk op Add
  3. Nu is er in het overzicht een Dummy sensor aangemaakt.
  4. In de rij van de Dummy sensor druk je op “Create Virtual Sensors”
  5. Vul nu name “Nep temperatuur” en type “Temperature”
  6. Druk op Ok
  7. Ga naar de Tab Setup > Devices Onthou hiervan de idx. In ons geval is dat 1
  8. Ga naar de Putty of console en voer het volgende commando op uit op de Pi
    mosquitto_pub -h localhost -m ‘{ “idx” : 1, “nvalue” : 0, “svalue” : “25.0” }’ -t ‘domoticz/in’
  9. Onder de Tab Temperature zie je onze Nep Temperatuur staan met de waarde 25
  10. Om de temperatuur op te voeren doe je
    mosquitto_pub -h localhost -m ‘{ “idx” : 1, “nvalue” : 0, “svalue” : “27.0” }’ -t ‘domoticz/in’
  11. het is binnen 1 second ineens 27 graden
    Temperatuur Domoticz

Je RaspBerry Pi is nu klaar om jouw sensoren en Arduino projecten aan te sturen en weer te geven.