L’Internet des Objets

L’Internet des Objets

35.1 FHEM

Page précédente Page suivante

FHEM est un projet de domotique allemand. Il permet de prendre en main une installation de domotique. La documentation n’est pas toujours très précise et n’aide pas forcément beaucoup le débutant. Elle offre deux interfaces : web et ligne de commande. Cette dernière permet d’utiliser fhem comme interface avec un matériel sans maîtriser celui-ci. Un autre inconvénient, c’est que beaucoup de documentation est en allemand. le site de  : fhem fournit la documentation utile.

L’installation sur une Debian peut se faire en intégrant le site fhem dans la liste des sources :

wget -qO - http://debian.fhem.de/archive.key | apt-key add -
echo "deb http://debian.fhem.de/nightly/ /">> /etc/apt/sources.list
apt-get update
    apt-get install fhem

Il installe alors les dépendances. Il est aussi possible d’ajouter directement le paquet. La programmation est faite principalement en Perl.

Cela ne marche plus... Il faut donc récupérer le fichier .deb sur le site de fhem et installer les dépendances

apt install -y libreadonly-perl libdbd-sqlite3-perl \
 libtext-diff-perl sqlite3 libio-socket-ssl-perl libwww-perl \
 libdevice-serialport libcgi-pm-perl libjson-perl

Ensuite, le serveur est installé. Il est accessible par http sur le port 8083 (figure 35.1 et sur telnet, port 7072. Le port 7072 n’est pas activé par défaut. Il faut rajouter explicitement, dans le fichier fhem.conf la ligne :

define telnet telnet 7072 global

(image)

Fig. 35.1 : La première connexion au site personnel fhem.

Il est alors possible d’insérer la clef usb. Après avoir relancé le serveur fhem, l’onglet Unsorted affiche son existence (figure 35.2). C’est alors parfois le drame. Il se peut qu’il n’y aie pas de baseID…Après un reboot de l’ordinateur, la baseID est arrivée. La clef est alors détaillée dans la figure 35.3.

(image)

Fig. 35.2 : La clef est bien détectée.

(image)

Fig. 35.3 : Le détail de la clef.

Il est possible d’interagir avec la clef en changeant ou relevant un paramètre. Les attributs sont aussi modifiables. Il est conseillé de changer l’alias pour identifier la clef plus précisément. Il est possible de disposer de plusieurs clefs pour plusieurs pièces par exemple. Pour ajouter une prise électrique, il faut activer le teach et smackacklearn. Chacun assorti d’une valeur numérique. Voir la figure 35.4.

(image)

Fig. 35.4 : smartacklearn

Il faut aller sur les prises et les passer en mode découvrable. Pour cela, il faut appuyer quelques secondes avant que le voyant ne passe au rouge. Je ne sais pas ce qu’il faut vraiment faire, mais il semble que teach/ smackacklearn finisse par fonctionner.

Un onglet enOcean apparaît alors dans la figure 35.5. Tous les équipements détectés vont venir s’ajouter dans cet onglet. Il est recommandé de modifier l’attribut alias pour identifier les équipements. Certains sont assez faciles à identifier (actuator pour une prise) d’autres seront moins évident. De plus, il faut identifier les différents équipements en leur assignant des alias explicites.

(image)

Fig. 35.5 : enoceanPrise01

L’interface fhem permet aussi de relever des graphiques. Certains arrivent tout seuls d’autres sont moins aisés à faire apparaître. Je n’ai pas réussi à faire remonter la consommation des prises électriques.

Pour commuter les prises depuis la ligne de commande, il faut envoyer un script sur le port 7072 :

(echo set EnO_05850792 off; echo quit) | nc 192.168.0.204 7072
(echo set EnO_05850792 on; echo quit) | nc 192.168.0.204 7072

L’ajout d’un détecteur d’ouverture (barreau aimenté et détecteur magnétique) se passe bien. Le graphique indiquant les périodes d’ouverture et de fermeture s’affiche tout seul.

La sonde de température est moins facile. La température relevée est erronée, le graphique n’apparaît pas.

Page précédente Page suivante