Mosquitto ist ein frei verfügbarer Broker, welcher gut auf dem Raspberry Pi läuft. Er dient in meiner HomeAutomation 2.0 als Datenvermittlungszentrale. Zum Einsatz kommt ein Raspberry B Model 2 mit angeschlossener USB-Festplatte, auf dem auch OpenHAB läuft. Der Pi muß eine feste IP-Adresse haben, das neueste Raspbian Wheezy muß installiert sein. Im Beispiel wird die im September 2015 aktuelle Version 1.4.3 installiert.

 

Die Installation von 'Mosquitto'

Die Installationsanleitung auf http://mosquitto.org/2013/01/mosquitto-debian-repository/ kann für den Raspberry Pi verwendet werden. Man meldet sich 'pi' über PuTTY an.

Um das Debian Paket nutzen zu können, muß man zuerst den Paket-Signierungs-Key importieren:

wget http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key
sudo apt-key add mosquitto-repo.gpg.key

cd /etc/apt/sources.list.d/

Für Raspbian Wheezy wird die Repositoryliste geladen mit
sudo wget http://repo.mosquitto.org/debian/mosquitto-wheezy.list

alternativ für Raspbian Jessie:
sudo wget http://repo.mosquitto.org/debian/mosquitto-jessie.list

Dann wird die Updateinformation auf den neuesten Stand gebracht:
sudo apt-get update

und dann Mosquitto installiert:
sudo apt-get install mosquitto mosquitto-clients python-mosquitto

Dabei werden die Mosquitto-Client-Befehle und die Python-Unterstützung mitinstalliert. Nach der Installation prüft man, ob Mosquitto läuft:

ps -A | grep mosq

 

Betrieb von Mosquitto

Mosquitto startet nach jedem Boot automatisch. Im Verzeichnis

/etc/init.d/mosquitto

befindet sich das Startup-Skript. Von der Kommandozeile aus kann man Mosquitto steuern:

sudo service mosquitto restart
sudo service mosquitto stop
sudo service mosquitto start

 

Test von 'Mosquitto'

Ein erster Test kann über die Kommadozeile durchgeführt werden. Dazu öffnet man zwei PuTTY-Fenster und meldet sich jeweil mit dem Benutzer 'pi' an.

Das erste Fenster dient der Anzeige von MQTT-Topics. Mit 127.0.0.1 ist immer der Localhost gemeint. Wir geben den Befehl für eine Topic-Subscription ein:
mosquitto_sub -h 127.0.0.1 -t meinTopic/#

Das zweite Fenster dient dazu, Topics mit Nachrichten abzusetzen:
mosquitto_pub -h 127.0.0.1 -t meinTopic/Temp -m "23.7"

Jetzt sollte im 1. Fenster "23.7" zu sehen sein. Das wäre testweise die Temperatur eines Thermostats gewesen.
mosquitto_pub -h 127.0.0.1 -t meinTopic/Temp -m "31.2"

Jetzt sollte im linken Fenster '31.2' angezeigt werden. Damit funktioniert 'Mosquitto' und kann für OpenHAB und FHEM bzw. eigene Sensoren verwendet werden.

 

Weitere Infos im Internet

http://mosquitto.org/
https://harizanov.com/wiki/wiki-home/raspberry-pi/how-to-rasbperry-pi-install-mosquitto-with-websockets-enable/
http://blog.moneybag.de/fhem-sensoren-an-fhem-mit-nrf24l01-transceiver/