[Jeedom] Problème des topics persistants dans Mosquitto MQTT
Lorsque j'ai testé mon premier module ESP et la communication via MQTT, j'ai fait de nombreux essais. Le problème est que par défaut, MQTT garde en mémoire tous les topics même si on ne s'en sert plus alors même qu'on les a supprimés dans Jeedom : à chaque redémarrage, ces topics fantômes réapparaissent. Tout ça n'est pas très propre et très pratique (surcharge l'affichage alors que ça ne sert à rien).
Pour s'en débarrasser, lorsqu'on a fini les réglages/essais de ses modules ESP, il faut agir directement au niveau du "broker" MQTT (c'est à dire Mosquitto) pour supprimer ces vieilles configurations gardées en mémoire.
Mon Jeedom tourne dans un conteneur Docker sur mon serveur NAS Synology, et Mosquitto lui est installé directement sur mon serveur (il n'est pas dans le conteneur Jeedom). Je me connecte donc en ssh sur mon NAS Synology et je vais modifier le fichier /usr/local/mosquitto/var/mosquitto.conf avec la commande :
sudo vim /usr/local/mosquitto/var/mosquitto.conf
Ensuite on va dans la section "Persistence" et là on décommente la ligne "persistence false". On enregistre puis via le centre de paquets du NAS Syno, on arrête et on relance le paquet "Mosquitto". On peut aller dans Jeedom pour arrêter et relancer le plugin "MQTT", relancer son démon et voir si ces topics fantômes existent encore. Une fois qu'on a constaté que le problème est réglé, il ne faut pas oublier de reconfigurer Mosquitto pour qu'il retrouve son réglage initial, c'est à dire qu'il garde par défaut en mémoire les anciens topics en commentant la ligne (en rajoutant le signe # en début de ligne) "persistence false".
Source : https://community.home-assistant.io/t/persistent-mqtt-after-reboot/12642
Info partagée ici dans le fil "MQTT" du forum Jeedom : https://www.jeedom.com/forum/viewtopic.php?f=96&t=5764&p=605823#p605823
[Ubuntu] Activation du Beep, signal sonore d'erreur
En voulant signaler une erreur de façon sonore dans une macro LibreOffice, je me suis aperçu que la fonction "Beep" ne fonctionnait pas. Un petit tour sur Internet et c'est effectivement un bug qu'Ubuntu traîne depuis quelques temps (c'est peut-être résolu dans les dernières versions...). Voici la solution qui a fonctionné pour moi : https://bugs.launchpad.net/ubuntu/+source/unity/+bug/769314
Il faut éditer le fichier "etc/pulse/default.pa" :
sudo vim /etc/pulse/default.pa
Puis activer (ou ajouter ou modifier) ces lignes en enlevant le signe # :
load-sample-lazy x11-bell /usr/share/sounds/ubuntu/stereo/bell.ogg load-module module-x11-bell sample=x11-bell
On relance pulseaudio via la commande :
pulseaudio -k
Jeedom : Envoyer différentes sortes de notifications via un scénario
À partir du module ESP32, clone du Wemos Lolin32 Lite, et après y avoir installé le firmware ESPEasy (plus d'info ici : https://lofurol.fr/joomla/electronique/domotique/139-creer-ses-propres-objets-connectes-avec-les-modules-esp), voici comment à partir de Jeedom envoyer des notifications par courriel. Pour info, il est possible d'envoyer des courriels de notification directement via ESPEasy (voir ici pour plus d'infos : https://lofurol.fr/joomla/electronique/domotique/157-espeasy-envoyer-un-courriel-de-notification).
Il faut tout d'abord installer dans Jeedom le plugin gratuit "Mail". Ensuite il faut ajouter une action et il faut saisir, dans l'onglet "Équipement", les informations relatives au compte de courriel qui sera utilisé pour envoyer les messages.
Inutile de rendre cet équipement visible car on l'utilisera dans des scénarios (voir plus bas).
I- Plugin "Mail" dans Jeedom
ESPEasy : Détecter l'ouverture et la fermeture d'une porte
Il est très facile avec un module Wemos Lolin32 lite d'être informé sur l'état d'une porte via un courriel.
I- Détecteurs d'ouverture utilisés
Pour cela, j'utilise des détecteurs d'ouverture de porte NC (Normally Closed with magnet) comme ceux-ci : https://fr.aliexpress.com/item/10Pcs-5Pair-MC-38-MC38-Wired-Door-Window-Sensor-Magnetic-Switch-Home-Alarm-System-Normally-Closed/32685607339.html.
Sur les sites marchands, il est assez difficile de savoir exactement à quels types de détecteurs on a affaire car il y a une ambiguïté entre NO et NC selon que l'on prenne en compte ou pas l'aimant qui influe sur l'état du composant appelée "Reed" en anglais. Voir ici pour plus d'informations : http://www.hw2sw.com/2012/09/07/connecting-a-magnetic-reed-door-switch-into-arduino/.
- Ces capteurs lorsqu'ils sont "collés" (proches l'un de l'autre en fait), laissent passer le courant : le circuit est fermé.
- Lorsqu'on les éloigne l'un de l'autre, le courant ne passe plus : le circuit est ouvert. Si l'on coupe un des fils, on ouvre aussi le circuit, ce qui indique un dysfonctionnement ou une "destruction".
ESPEasy : Envoyer un courriel de notification
À partir du module ESP32, clone du Wemos Lolin32 Lite, et après y avoir installé le firmware ESPEasy (plus d'info ici : https://lofurol.fr/joomla/electronique/domotique/139-creer-ses-propres-objets-connectes-avec-les-modules-esp), il y a possibilité de recevoir directement un courriel indiquant une action réalisée. Ce qui est intéressant, c'est qu'il n'y a pas besoin de serveur domotique comme Jeedom ou autre : on peut donc réaliser un petit système sans sortir l'artillerie lourde.
Voici un exemple permettant d'être informé d'un redémarrage du module (après une coupure de courant par exemple).
Raspberry Pi : Configuration initiale avec Raspi-Config
Une fois qu'on a installé Raspbian sur le Raspberry Pi, il est nécessaire de le configurer à notre sauce notamment pour les paramètres de langue (interface, clavier, ...). Pour cela, il existe l'utilitaire "raspi-config" à utiliser en ligne de commande. On ouvre donc un terminal, et on tape :
sudo raspi-config
On arrive donc sur une page en anglais proposant différentes options permettant d'activer des fonctionnalités, de changer la langue, le clavier, l'affichage, d'utiliser la capacité de la carte SD au maximum... Vous trouverez plein d'info ici : https://dadarevue.com/raspbian-installation-configuration/
Raspberry Pi : Rajouter un utilisateur et connexion automatique
Pour utiliser le Raspberry Pi en classe, il est nécessaire de créer un compte utilisateur "élève".
Attention avant de rajouter un autre utilisateur, il faut veiller à avoir auparavant bien configuré son système (notamment la configuration du clavier, la langue, ... sinon on risque de se retrouver avec un clavier QWERTY...) avec la commande "raspi-config" !
I- Ajouter un nouvel utilisateur
Pour ajouter un utilisateur, on va procéder en ligne de commande en tapant dans un terminal :
sudo adduser eleve
Ensuite, il faudra saisir différentes informations (mot de passe, etc.) et le nouvel utilisateur sera créé.
II- Connexion automatique sur un compte utilisateur
Il pourra être aussi utile que lorsqu'on allume le Raspberry Pi, on se connecte directement sur ce compte élève. Il est possible via "Raspi-config" de se connecter automatiquement avec le compte "pi" (compte par défaut) mais pour un autre utilisateur, la manip est différente.
Pour cela, il faut éditer le fichier "/etc/lightdm/lightdm.conf". Tout d'abord, dans le terminal, on va faire une copie du fichier que l'on va modifier (c'est toujours plus prudent...) avec la commande :
sudo cp /etc/lightdm/lightdm.conf /etc/lightdm/lightdm0.conf
Ensuite on édite ce fichier en tapant :
sudo nano /etc/lightdm/lightdm.conf
Dans ce fichier, on cherche la ligne "autologin-user=pi" et on la remplace par "autologin-user=eleve". On n'oublie pas d'enregistrer avec la combinaison de touches CTRL-O, on ferme avec CTRL-X et on redémarre.
Désormais lors de l'allumage, le Raspberry Pi se connectera automatiquement sur le compte "eleve".
Page 31 sur 37