Cet article fait partie de la série Domotique (18 articles au total)

Un nouvel article domotique aujourd’hui où on ne manipulera pas de matériel ! Ce que je vous propose c’est d’utiliser le smartphone au fond de votre poche pour que votre système domotique prenne conscience de votre présence. Ici pas de détecteur de mouvement, pas de caméra IP, seul votre beau téléphone est nécessaire. A l’heure où j’écris ces lignes, cette astuce ne marche pas avec les iPhones mais promis je vous cherche une alternative ;)

Cet article fait partie d’une série dédiée à la domotique dont vous pourrez trouver le sommaire au bas de cet article.

Le principe de base

Sur mon smartphone, le wifi est toujours allumé. Au grès de mes déplacements, mon téléphone se connectera chez moi, à mon travail, chez certains de mes amis, etc… Étant donné que le wifi a une portée (dans le meilleur des cas) maximale de 100 mètres, on peut donc supposer que si on est connecté à son wifi domestique, alors on peut considérer que l’on est chez soi. Le tuto du jour vous montrera donc comment faire pour que Domoticz vérifie régulièrement si votre téléphone est connecté au wifi ou pas.

Quel intérêt que Domoticz sache si on est là ou pas ?

Cela permet tout simplement de mettre en scène des scénarios plus ou moins complexes pour par exemple :

  • Diminuer le chauffage quand personne n’est à la maison
  • Éteindre les lumières oubliées lors du départ des occupants
  • Simuler une présence à domicile quand personne n’est là
  • Etc…

La mise en œuvre

Pour mettre cette mécanique en œuvre, voici le scénario que nous allons suivre aujourd’hui :

  1. Créer un interrupteur virtuel qui indiquera si oui ou non quelqu’un est présent au domicile
  2. Créer un script qui modifiera l’état de l’interrupteur virtuel en fonction de la présence du téléphone sur le réseau wifi

Les captures d’écrans et les explications sont faites à partir de la version V2.2151 de Domoticz, affichée en anglais.

 1. Création de l’interrupteur virtuel

C’est la première étape, on va créer l’interrupteur qui matérialisera la présence à domicile. Pour cela rien de très compliqué ! Dans Setup > Hardware, cliquer sur le bouton « Create Virtual Sensor » sur le device « Dummy » (si vous ne l’avez pas, ajoutez le via le menu déroulant).

Création de l'interrupteur virtuel

Création de l’interrupteur virtuel

Sélectionnez le type « Switch« 
Sélection du type "Switch"

Sélection du type « Switch »

Après avoir cliqué sur OK, le périphérique sera visible dans l’onglet Setup > Devices où il faudra cliquer sur la petite flèche verte associée.

02_Ajout_interrupteur

On retrouve notre nouvel interrupteur rattaché au matériel « Dummy »

Choisissez lui un petit nom, dans mon cas « Presence » (oui j’ai peur des accents, c’est mon instinct de développeur qui me pousse à les fuir ;) Votre magnifique interrupteur apparaitra alors dans l’onglet « Switches ». Pour des raisons d’esthétisme, j’ai choisi d’en changer le type en « Motion Sensor » et de l’afficher sur mon Dashboard (c’est purement facultatif bien entendu). Voici ce que cela donne :

Mon interrupteur virtuel "Presence" maquillé en capteur de mouvement

Mon interrupteur virtuel « Presence » maquillé en capteur de mouvement

Il va maintenant falloir passer aux choses sérieuses : le script qui va altérer l’état de cet interrupteur.

2. Création du script

Le rôle de ce script est assez simple : exécuté périodiquement, il va essayer de joindre le (ou les) smartphone(s) du foyer. S’il y parvient, il bascule l’interrupteur virtuel à « On » et ne vérifiera que 10 minutes plus tard si le téléphone est toujours là. Si aucun smartphone n’est détecté, le script bascule l’interrupteur virtuel à « Off » et attendra 1 minute avant d’essayer de joindre à nouveau le(s) smartphone(s).

Pré-requis : connaitre l’adresse IP de son téléphone. Si vous ne l’avez pas déjà fait, je vous conseille de paramétrer votre box/routeur pour que cette adresse IP ne change jamais . Elle est généralement de la forme 192.168.xxx.yyy. Dans mon exemple, le script est paramétré pour 2 téléphones.

Le script doit être placé dans le répertoire scripts/lua de Domoticz. Le fichier du script doit obligatoirement commencer par « script_time_ » et porter l’extension « .lua« . J’ai par exemple nommé le mien « script_time_presence.lua« . Voici le contenu du script :


Bien sûr il faudra remplacer les adresses IP ligne 26 et 27 de mon script par celles de vos appareils :)

Un cas pratique : simulation de présence en cas d’absence

Histoire d’illustrer l’intérêt de ce « détecteur de présence », voici une implémentation d’un scénario de simulation de présence. Celui-ci n’est pas très évolué mais il « fait le boulot ». Grossièrement : si personne n’est à domicile et que nous somme samedi, on allume les lampadaires du salon vers le crépuscule et on les éteint aux alentours de 23h30 (à chaque fois, on spécifie une fourchette de 15 minutes pour chaque changement d’état).

J’ai utilisé le créateur de scénarios qui est disponible dans le menu via : Setup > More Options > Events

Celui-ci permet de « programmer » sans avoir à écrire de code informatique. On assemble simplement des briques pour indiquer les conditions à tester et actions à effectuer. Une fois terminée, cela donne ça :

Scénario de simulation de présence

Scénario de simulation de présence

Libre à vous de l’adapter ensuite à vos besoins :)

Les limites du système

Cela fait plusieurs mois que j’utilise cette méthode et je suis étonné par sa fiabilité. Cependant quelques ombres au tableau subsistent ! Les iPhones coupent automatiquement leur wifi dès que l’écran s’éteint, ce qui empêche d’utiliser cette astuce. D’autres smartphones font probablement de même ! Qui plus est, ceci fonctionne si chaque habitant de la maison possède un smartphone, ce qui ne sera pas forcément le cas. Enfin, nos beaux terminaux ont un point faible : leur batterie. Attention donc aux scénarios que vous programmez derrière, en cas de panne de batterie vous pourriez avoir de mauvaises surprises !

 


Alors la double portabilité est peut-être faite pour vous :) Vous connaissez le problème : après pas mal de mois au compteur chez votre opérateur de téléphonie mobile, vous bavez devant un nouveau portable de la mort mais voilà… Avec vos quelques points fidélité, votre opérateur vous demande de rajouter la modique somme de 200/300/400 euros (rayer les mentions inutiles) pour un smartphone dernier cri… rageant surtout quand on voit que les nouveaux abonnés peuvent se l’offrir pour 19€ !Lire la suite de


L’info-trafic, tout le monde connait : on vous indique l’état de la circulation en temps réel sur la route. Si comme moi vous prenez l’autoroute tous les jours (ou autre rocade, périph, j’en passe et des meilleurs…) consulter ces infos sur internet avant de partir peuvent vous faire gagner de précieuses minutes.

Oui mais voilà, toutes les routes ne sont pas couvertes par ce type de système et donc bien souvent on s’aventure « à l’aveuglette » sur les routes où rien n’est indiqué. C’est là que Google entre en jeu…

Lire la suite de


Les utilisateurs de smartphones sous Windows Mobile qui aiment un peu bricoler leur téléphone connaissent sûrement MyMobiler. Ce petit logiciel gratuit permet d’afficher sur son PC l’écran du mobile et ainsi de pouvoir manipuler ce-dernier à l’aide d’un clavier et d’une souris… Ceux qui comme moi ont souvent la flemme à l’idée de devoir taper un sms sur un portable en saisiront rapidement l’intérêt ;) Seulement voilà, MyMobiler n’existe que sous windows et je n’ai pas trouvé d’alternative probante fonctionnant sous Linux. Voici donc un petit guide pour les amoureux des OS libres…

Lire la suite de