Mes débuts avec la domotique

Voila, je voulais simplement partager mes aventures du coté de la domotique. Hé oui comme beaucoup, je trouve séduisant de rendre intelligent quelques peu son habitat de tout un tas de manière. A l’origine j’ai retrouvé un vieil automate WAGO dans mes cartons, et me suis demandé ce que je pouvais en faire. Je suis donc tombé naturellement sur le site Calaos qui propose un outils installable sur Raspberrypi (deuxième bon point j’en ai aussi un qui traine) et utilisant un automate WAGO ainsi que plein d’autre truc comme des caméras IP, une squeezbox etc… Bon l’inconvénient majeur, il y a beaucoup de cuivre pour connecter tout ça et ce projet est essentiellement implémenté dans du neuf… ça se complique donc. En revanche j’ai trouvé l’interface de ce dernier très esthétique, mais c’est une question de gout.

Suite à ce constat j’ai commencé à me promener sur la toile en quête d’info et je suis tombé sur pas mal d’article concernant Domoticz, y compris en français. Il y a aussi tout un tas de système « box » plus ou moins propriétaire mais l’idée était d’utiliser du matériel à ma dispo et de limiter les achats… et puis j’aime bien faire moi même les choses quitte à me prendre la tête… baste en avant pour Domoticz.

Voici quelques articles qui m’ont bien guidés:

  • http://blog.domadoo.fr/2014/02/27/utilisation-du-logiciel-domoticz-sur-raspberry-pi/
  • http://www.planete-domotique.com/blog/2014/01/29/domoticz-gerer-sa-domotique-avec-un-raspberry-pi/
  • http://blog.zener.free.fr/index.php?post/2014/03/13/Station-M%C3%A9t%C3%A9o-Virtuelle-grace-%C3%A0-Domoticz-et-au-Raspberry-Pi-!
  • http://domotique-info.fr/2014/05/domoticz-installation-premiers-pas/
  • http://poneynumerique.fr/domotique-poney-skalen-philio-psm02/

Je ne vous présenterai pas mieux le produit ainsi que les pré-requis que ces derniers.

Installation sur le Raspberry

  1. Télécharger l’image depuis le site: http://sourceforge.net/projects/domoticz/files/
  2. Décompresser le tout et on obtient un répertoire avec l’image et le logiciel Win32DiskImager permettant d’installer cette dernière sur la carte SD. Pour info vous pouvez vérifier la compatibilité de cette dernière avec le RPI: http://elinux.org/RPi_SD_cards#Which_SD_card.3F
  3. Insérer la carte SD dans un lecteur externe ou intégré
  4. Lancer l’utilitaire Win32DiskImager
  5. Sélectionner le fichier d’image (*.img)
  6. Sélectionner le lecteur associé à la carte SS
  7. Cliquer sur Write et ATTENTION comme l’indique l’avertissement cette dernière sera complètement effacée
  8. A l’issue, quitter le logiciel et éjecter la carte SD
  9. Nous pouvons maintenant insérer la carte dans le RPI.

Premier démarrage

L’image installée est configurée par défaut en DHCP, il va donc obtenir une adresse du serveur.

2 solutions pour obtenir cette dernière:

  • On connecte le RPI en HDMI a un écran et on saisie la commande ifconfig sur la mire.
  • Sur le serveur DHCP, on trouve la bail associé à la MAC du RPI (pour moi une freebox donc j’accède à cette interface via l’adresse http://mafreebox.freebox.fr/)

Bien sur nous pouvons fixer cette adresse par la suite soit par une réservation DHCP soit en dur dans la configuration du réseau:

# sudo nano /etc/network/interfaces

Puis ajouter votre configuration comme ci-dessous:

iface eth0 inet static

address 10.0.1.10 # << change to an ip address in your network

netmask 255.255.255.0

gateway 10.0.1.1 # << change to your gateway

Ensuite on peut se logger en ssh sur le RPI.

Le login et le mot de passe par défaut sont: pi/raspberry

J’ai pour habitude de changer tout ça ainsi que le port d’écoute du daemon ssh. Nous pouvons utiliser l’utilitaire de configuration du raspberry pour ceci et se laisser guider:

# sudo raspi-config

raspi-config

On en profite au passage pour personnaliser la langue et le fuseau horaire (menu internationalisation option) et dans les Advanced Options le Hostname éventuellement…

Ensuite on change le port d’écoute de ssh en éditant le fichier de configuration dans /etc/ssh/sshd_config:

On modifie la ligne:

# What ports, IPs and protocols we listen for
Port XXXX

Puis on reload le daemon: # service ssh reload

Et voilà, nous pouvons maintenant nous connecter à l’interface Web Domoticz:

http://ipaddress:8080
https://ipaddress

Si vous voulez modifier le port d’écoute 8080 de Domoticz il vous suffit d’éditer le script /etc/init.d/domoticz.sh:

#DAEMON_ARGS= »-daemon -www 8080″

Juste simplement modifier le port derrière le 8080, on peut aussi choisir l’emplacement le fichier de log ainsi que le niveau de ce dernier etc…

Paramétrage de l’application Domoticz

Lors de l’ouverture nous arrivons directement sur le tableau de bord (dashboard), qui est vide pour le moment. En avant pour les premières personnalisations: Outils > Application Settings.

domoticz-system-setup

On va détailler un peu les différentes options, ce n’est pas exhaustif.

User Interface: on choisit la langue

Location: utiliser l’utilitaire en saisissant votre adresse afin d’obtenir la latitude et la longitude

Dashboard/Mobile: à tester suivant les gouts

Website Protection: saisir un login/pass surtout si on permet l’accès depuis l’extérieur

Local Networks: permet de bypasser l’authentification précédente lorsque le client est connecté via le réseau local

Actives Menus: sélectionner suivant le besoin

Log History: à définir

La partie importante concerne les notifications. Je n’ai pas encore gratté du coté des notifications de type NMA ou Pushover vers mon Nexus et me suis limité à la version mail. Voici ma configuration derrière ma freebox:

domoticz-mail-configuration

Ajouter ses premiers capteurs

Nous avons dans configuration 2 sous menus:

  • Matériel: permet de régler les modules capables de communiquer avec Domoticz.
  • Dispositifs: liste de tous les périphériques (lié au matériel) qui ont été ajoutés dans Domoticz et de voir de quelle manière le RPi établit la communication avec eux.

Nous allons dans un premier temps ajouter ceux qui sont à notre dispo ou ne nécéssitant pas de matériel, comme par exemple les données de santé liées à notre Raspberry, ou encore les informations météorologique de stations via Weather Underground (WU).

Donc dans un premier temps on se rend dans matériel pour ajouter les modules et nous découvrons les capteurs de la carte mère du RPi que l’on peut renommer pour le coup:

domoticz-materiel

Ensuite ajoutons une station météo. Je vous renvois vers le blog de Zener dans les liens plus haut qui aborde ce sujet. Pour la clé API je l’ai trouvé sur le site suivant après mettre logger sur le site de WU: http://www.wunderground.com/weather/api/. Autre astuce, penser à ajouter pws devant votre station si cette dernière est de type privée comme par exemple: pws:IRHNESTG2

Deuxième étape l’ajout de périphériques maintenant que nous avons des modules qui nous retournent des infos. Se rendre dans le menu Dispositifs qui dispose de 3 types de filtres d’affichage: utilisés, tous les dispositifs et inutilisés. Il vous suffit ensuite de cliquer sur la petite flèche verte pour ajouter ce dernier, un formulaire vous demandera de spécifier un nom et hop il sera rangé dans la catégorie associé à l’information qu’il retourne.

domoticz-dispositif

Petite astuce au passage, pour ajouter un élément sur la page d’accueil, il suffit de cliquez sur la petite étoile (similaire au classique icône des favoris) sur ce dernier.

Ajout d’un matériel de communication

Vient le moment de commencer à ajouter une interface de communication. J’ai choisi de me lancer dans l’aventure du protocole zWave pour les raisons suivantes:

  • Technologie radio avec débit important et de type « Mesh » c’est à dire que chaque éléments peut répéter le signal et donc augmenter la portée radio.
  • Faible consommation énergétique prenant tout son sens lors de l’utilisation sur batterie.
  • Catalogue d’équipements fournis avec un grand nombre de fabricants

Bon ce n’est pas trop le sujet de cet article mais voici un petit tableau comparatif des protocoles du marché:

Protocole Autocalimenté Fréquence radio Débit de donnée Disponibilité d’API? Open Source
C-Bus no yes 3500 bps yes no
EnOcean no 902 MHz (North America) 9600 bps yes  ?
Insteon yes yes 13,165 bps yes no
KNX yes yes 9600 bps yes no
UPB yes no 480 bps no no
X10 yes
  • 310 MHz (North America)
  • 433 MHz (Europe)
20 bps yes no
Zigbee no
  • 2.4 GHz (worldwide)
  • 915 MHz (Americas and Australia)
  • 868 MHz (Europe)
20-250k bps yes no
Z-Wave no yes 250k bps yes no

Alors voici les équipements dont je dispose:

  • Récepteur/émeteur Z-Wave USB: Aeon Labs Z-Stick. Choisit pour sa connectivité USB permettant de changer de système le cas échéants et de sa batterie intégrée afin de pouvoir associé des périphériques plus facilement.
  • Un capteur 4 en 1 Philio PSM02 ouverture/température/luminosité/mouvement positionné sur ma porte d’entrée.

Brancher le Z-Stick à un port USB du RPi, puis dans le menu Configuration, Matériel, choisir un périphérique de type « OpenZwave USB », lui donner un nom et sélectionner le port série (il se positionne par défaut sur le bon port normalement). Petite nouveauté par rapport aux autre matériels, la présence d’un bouton setup permettant d’accéder aux dispositifs liés à celui-ci ainsi que lui même.  Maintenant on va procéder à l’inclusion du Philio, pour ceci un clic sur le contrôleur et 3 clics rapides sur le module. Le contrôleur devrait clignoter rapidement pour signifier le résultat. Rafraichir la page des dispositifs liés aux contrôleurs pour voir apparaitre un nouveau venu qu’on s’empresse de renommer:

domoticz-philio-association

Nous avons pas mal de paramètres concernant celui-ci par contre que je vais lister mais je n’en utilise que peut étant donné que j’utilise ce dernier en mode « Home Automation » cad juste pour retourner des infos et non m’en servir comme élément d’alarme:

  • Basic Set Level: semble utile pour allumer un variateur de lumière, n’en ayant pas je n’ai pas pu valider.
  • PIR Sensitivity: réglage de la sensibilité du capteur de mouvement. 0 correspondant à désactivé et 99 le plus sensible. Dépend de votre installation afin d’accroitre la portée de détection.
  • Light threshold: seuil pour déclencher l’éclairage en cas d’évènement. Mis à 0 pour ne pas utiliser de l’énergie.
  • Operation Mode: on peut semble t-il mettre plusieurs paramètre, honnêtement j’ai laissé le mien sur 0 pour le mode domotique.
  • Multi-Sensor Function Switch: permet éventuellement de couper une des fonctionnalités.
  • PIR re-detect interval time: utiliser en mode sécurité seulement.
  • Turn Off Light Time:
  • Auto Report Battery Time: mise à 48 pour n’avoir qu’une remontée par jour au vue de la faible conso du module.
  • Auto Report Illumination Time: mise à 1 pour recevoir l’info de luminosité toute les 30 min.
  • Auto Report Temperature time: idem pour la température mise à 1.
  • Wake-up Interval:

Il faut maintenant aller dans le menu Configuration, Dispositifs et sélectionner inutilisés. Voila le résultat qui est très parlant pour certain et moins pour d’autres:

domoticz-philio-dispositifs

Alors pour les plus simples comme la température et la luminosité on clic directement sur la flèche verte et on nomme correctement tout simplement.

kiolul