Dans l'article RaspberryPi - Installer le serveur MQTT sur le RaspberryPi J'ai écrit un peu sur MQTT et expliqué comment installer votre propre serveur MQTT sur le RaspberryPi.
Pour que vous puissiez également utiliser un serveur MQTT de FHEM, vous devez encore installer quelques modules FHEM. J'ai décrit comment cela fonctionne et ce à quoi vous devez faire attention dans l'article suivant.
Aperçu
Avant de pouvoir commencer l'installation du module MQTT, vous devez avoir préparé le RaspberryPi pour que FHEM soit installé dessus et puisse être configuré via le menu web.
Les trois articles suivants décrivent ce qu'il faut faire pour préparer le RaspberryPi :
RaspberryPi - configuration pour les nerdiys !
RaspberryPI – La première configuration !
RaspberryPi - Contrôlez le RaspberryPi via SSH
FHEM – Installation sur le RaspberryPi
RaspberryPi - Installer le serveur MQTT sur le RaspberryPi
Outil requis :
-Non-
Matériel requis :
Dans la liste suivante, vous trouverez toutes les pièces dont vous avez besoin pour mettre en œuvre cet article.
Connectez-vous au RaspberryPi via SSH
Pour commencer, vous devez d'abord vous connecter au Rasp Pi avec Putty via SSH. Comment faire cela est dans l'article RaspberryPi - Contrôlez le RaspberryPi via SSH décrites.
Mettre à jour la gestion des packages
La gestion des packages sous Linux est un "lieu central" à travers lequel divers packages logiciels peuvent être installés. Pour que cela fonctionne de manière fiable, les listes et les sources de la gestion des packages doivent être mises à jour avant chaque installation de nouveaux packages.
sudo apt-get mise à jour && sudo apt-get mise à niveau
Installer les packages Perl MQTT
Pour que FHEM puisse communiquer avec le serveur MQTT, deux packages Perl doivent être installés.
Vous devez vous connecter au Rasp Pi avec Putty et saisir les commandes suivantes :
sudo cpan install Net ::MQTT:Simple sudo cpan install Net ::MQTT:Constantes
La requête « Souhaitez-vous configurer autant que possible automatiquement ? [oui]” vous confirmez avec “oui” et Enter.
Redémarrez FHEM
Pour que FHEM reconnaisse les packages nouvellement installés, FHEM doit être redémarré une fois. Pour ce faire, vous devez entrer les deux commandes suivantes l'une après l'autre. Cela arrêtera d'abord le serveur, puis le redémarrera. Vous pouvez trouver plus d'informations sur l'arrêt et le démarrage dans l'article FHEM - structure, modules & choses à savoir
sudo /etc/init.d/fhem stop sudo /etc/init.d/fhem start
Définir les clients MQTT
Pour que vous puissiez désormais envoyer et recevoir des données via FHEM MQTT, FHEM doit s'enregistrer auprès du serveur MQTT en tant que client. Vous ne devez créer ce client qu'une seule fois. Tous les capteurs ou actionneurs enregistrés dans FHEM reçoivent ensuite ultérieurement des données via ces clients ou peuvent envoyer vos données via eux.
Pour enregistrer le client MQTT dans FHEM, vous devez passer à l'interface Web FHEM.
Il y a un champ de saisie dans la zone supérieure où nous pouvons entrer la définition du client MQTT.
La définition est (par exemple):
définir mqttClient MQTT 127.0.0.1:1883
La commande a créé le client MQTT dans FHEM. Mais celui-ci ne peut pas faire grand-chose.
Pour tester la fonction, nous créons un MQTT_ DEVICE. Ce module peut être utilisé pour s'abonner à des sujets MQTT dans FHEM et également publier des données.
La définition de notre petit module de test est :
définir mqttTest MQTT_DEVICE ; attr mqttTest subscribeReading_testTopic testTopic ; attr mqttTest publishSet_testTopic testTopic ;
Envoyer un message test et vérifier la réception
Vous avez maintenant rendu votre installation FHEM compatible MQTT.
Amusez-vous avec le projet
J'espère que tout a fonctionné comme décrit. Si ce n'est pas le cas ou si vous avez des questions ou des suggestions, faites-le moi savoir dans les commentaires. Je les ajouterai à l'article si nécessaire.
Les idées de nouveaux projets sont toujours les bienvenues. 🙂
PS Beaucoup de ces projets - en particulier les projets matériels - coûtent beaucoup de temps et d'argent. Bien sûr, je le fais parce que j'aime ça, mais si vous pensez que c'est cool que je partage l'information avec vous, je serais heureux d'un petit don au fonds du café. 🙂