La Geek Attitude

A la recherche de solutions pour améliorer le quotidien


Poster un commentaire

Nouveaux équipements 

32 jours que la Jeedom Smart est en fonctionnement sans problème et cela me rassure et me conforte dans le choix de faire confiance à l’équipe Jeedom pour ma domotique.

Hormis quelques modifications de scénario pour ajouter un peu de confort, je n’avais plus trop fait d’évolutions. J’en parlerai dans un article prochainement où j’utilise le plugin Heliotrope pour gérer les volets lorsque je regarde la TV et que le soleil provoque des reflets sur cette dernière.

Mais après avoir lu plusieurs articles à propos de plugins BLEA, je me suis dit qu’il serait intéressant de peaufiner l’arrosage en ajoutant une sonde d’humidité miplant dans ma pelouse.

J’ai donc reçu l’antenne SENA et j’attends le miplant avec impatience pour mettre cela en place.

je vais également m’intéresser aux cartes arduino afin de pouvoir domotiser mon compteur d’eau et peut-être d’autres choses grâce au plugin arduidom. 


Poster un commentaire

Jarvis@Home v2

Comme vous l’avez surement pu le constater dans mes différents articles, le pilotage par la voix de mon installation domotique est une fonction que j’apprécie fortement et la découverte il y a quelques mois de Jarvis@Home m’a permis de parvenir à mes fins.

J’ai eu la grande joie d’être contacté directement par le concepteur de cette application pour être bêta-testeur de la version 2.

Je viens de l’installer et je prépare tout pour faire des essais.

En attendant, une petite démo:

 

La grande différence par rapport à la v1 est l’interface web qui permet de charger une configuration sur le téléphone avec les interactions qui seront demandées où on configure l’ID de la commande dans le logiciel de domotique.

A suivre…


9 Commentaires

Export des backups, acte 2

Alors que ma Jeedom SMART tourne sans encombres depuis maintenant 10 jours, j’avais envie de prendre le temps pour écrire un second article sur l’export des backups.

Tout d’abord parce que le premier contenait un oubli, à savoir, l’installation d’un service ftp client à effectuer pour que le transfert FTP fonctionne mais aussi parce que j’ai dû changer de méthode car l’équipe Jeedom conseille fortement de ne pas toucher au Linux pré-installé sur la SMART.

J’ai donc opté pour un script qui se trouve sur le Market, le BackupSamba.sh

J’ai un peu écumé le forum avant de pouvoir faire fonctionner ce script avec ma freebox mais quand c’est en place, cela fonctionne nickel.

Un des gros avantages de ce script par rapport au FTP, ce sont les options dont une qui permet de définir le nombre de jours pendant lequel les backups sont gardés sur la freebox. Avec la solution FTP, je devais manuellement effacer les backups plus vieux d’un certain nombre de jours. Ici plus besoin.

Donc, pour faire fonctionner ce script, il faut:

  • Avoir le plugin script installé dans Jeedom (via le market)
  • Avoir installé le script BackupSamba.sh disponible également via le market
  • Avoir configuré une utilisateur et mdp sur le freebox pour permettre la partage Samba, qui se trouve dans « Paramètre Freebox / Mode Avancé / Partage de Fichiers / FTP .
  • Avoir créé un répertoire cible pour les backups, dans mon cas à la racine du disque dur, avec le nom JeeBackups
  • Avoir créé un scénario appelant ce script quotidiennement, à 5h du matin par exemple, pour faire la sauvegarde.

Quand le plugin script est installé, il faut ajouter un nouveau script et lui donner un nom. Je l’ai appelé Export_Backups.

Ensuite, il faut ajouter une commande script à ce dernier et configurer les champs suivants:

Nom: Export_Samba

Type script: Script

Type: Action / Défaut

Requête:

/var/www/html/plugins/script/core/ressources/BackupSamba.sh -a mafreebox.freebox.fr « Disque dur/JeeBackups » freebox votremotdepasse /var/www/html/backup 7

Le 7 à la fin du script détermine le nombre de jour pendant lequel les backups sont gardés sur la freebox.

Divers: Aucune

Un simple scénario exécuté tous les jours, avec comme seule action la commande du script Export_Backups, fera le travail… Et tout cela sans aucune intervention dans le linux.


Poster un commentaire

Jeedom arrose mon jardin

Opensprinkler est le programmateur que j’ai choisi pour organiser l’arrosage de mon jardin. Il est certes cher par rapport à d’autres mais son interfaçage avec Jeedom a été le principal argument pour lequel je l’ai acheté.

Le boitier est sur le réseau et 3 électro-vannes sont branchées à ce dernier.

Dans Jeedom, j’ai donc tout d’abord le plugin OpenSprinkler qui permet la programmation des vannes. Jeedom importe toutes les vannes configurées sur le boitier (qui a également une interface web).

PluginConf.jpg

Afin d’avoir une interface simple d’utilisation, j’a préféré créer un virtuel contenant les informations minimum pour l’affichage dans le Dashboard afin d’avoir l’état en temps réel du retardateur de pluie ainsi que celui de chaque vanne.

VirtuelOS.jpg

Ensuite, parlons des scénarii.

Scenarii.jpg

J’ai créé un scénario par temps d’arrosage (un court, une moyen et un long ainsi qu’un de test qui est très court). Voici un exemple:

scenar_court.jpg

Je mets donc en route chaque vanne de manière séquentielle pendant un nombre de secondes avec un pause entre chaque.

Ensuite, un autre scénario va être utilisé pour déterminer si l’arrosage doit s’effectuer et quel temps d’arrosage doit être appliqué.

scenar_gestion.jpg

Ici, je vérifie si le chiffre du jour de la semaine est pair ou non car je veux arroser un jour sur deux. Ensuite, je vérifie que le retardateur de pluie est inactif et enfin, je vérifie la saison ainsi que la température afin de déterminer le temps d’arrosage.

Ce scénario est exécuté lorsque l’alarme de la maison est activée (et non pas de manière répétitive programmé à une heure précise car en été, on peut rester très tard dans le jardin).

En cas d’absence, le mode de la maison active automatiquement un dernier scénario, qui lui s’exécute à une heure fixe quotidiennement, et exécute le scénario précédent pour déterminer si l’arrosage doit se faire ou non.

scenar_absence.jpg

J’ai également créé quelques interactions permettant d’arroser par commande vocale avec Jarvis@Home


Poster un commentaire

Trop, c’est trop…

… je veux une domotique SMART.

Après presque une année d’utilisation, la combinaison Jeedom avec le Raspberry Pi n’est pour moi pas viable sur du long terme.

J’ai bien tenté l’utilisation d’un disque dur externe mais il semble que ce n’est non plus sans risques. Derrière un onduleur, le retour du courant a planté mon système.

L’alternative est de faire une installation, ne plus rien toucher, faire une image de la carte SD et l’avoir sous la main si cette dernière flanche. La restauration du dernier backup permettra un retour à la normale rapidement mais tout ça n’est pas très WAF.

J’ai donc décidé d’acquérir la Jeedom Smart en espérant qu’elle sera fiable… Et cela je pourrais le savoir dans quelques temps.

Je dois dire que cette nouvelle box est petite, facile à mettre en place (même le câble réseau est fourni).

Seul bémol est la nécessité de refaire l’appairage de chaque module Z-Wave car le contrôleur n’étant plus le Razberry, même une restauration de la base de données de mon PI3 ne permet pas de récupérer le réseau Z-Wave, il faut tout refaire.

J’ai donc préalablement enregistré une vidéo de mon écran et j’ai parcouru tous les menus de Jeedom du Raspberry avant de passer à la Smart Box. Cela m’a permis de remettre à l’identique la configuration de mon « nouveau jeedom » à celle du Raspberry.

A l’heure où j’écris, la box tourne depuis 2 jours et 25 minutes et j’ai juste une chose qui m’interpelle, la température du processeur. Elle semble plus élevée que celle du Raspberry à installation égale.

Afin d’éviter tout problème de refus de support en cas de bidouillages dans le linux, j’ai arrêté d’utiliser mon script de copie des backups via le FTP car ce dernier n’est pas nativement installé. J’ai donc migré vers un script disponible sur le market permettant la même chose via le share Samba appelé BackupSamba.sh.

Je vais pouvoir maintenant installer le prochain module de chez BroadLink pour tenter de piloter mon système de climatisation à coût plus faible qu’avec les Remotec. Ce sera l’objet d’un prochain article.


Poster un commentaire

Je donne de mes nouvelles

Et oui, cela fait un peu plus d’un mois que je n’ai plus rien posté sur mon blog. Il faut dire que mes semaines au bureau sont quelque peu chargées. Je n’ai donc pas eu l’occasion de faire de la domotique et avancer sur les points qui me restent à faire.

En fait, il ne m’en reste plus que deux, dont un pour lequel je suis certain de le concrétiser, à savoir le contrôle de ma consommation d’eau alors que le second, le pilotage des réversibles des chambres, est assez secondaire… Mais peut-être que cela changera lorsque notre seconde princesse sera née.

Pour la consommation d’eau, je n’ai pas envie d’investir dans l’Eco-device et je ne veux pas non plus acheter un second compteur uniquement pour cela. Après en avoir parlé avec un collègue au bureau, il fait également des petites recherches pour connecter son compteur à Jeedom pour pas trop cher. Il semble avoir trouvé le moyen et il me tarde de savoir comment il aura procéder pour pouvoir faire de même. D’après ce que j’ai compris, un petit montage électronique connecté au Sensor universel de Fibaro le permettra.

Pour les réversibles des chambres, l’idée d’investir dans le Remotec n’est plus trop d’actualité car cela fait 4 modules à 75€, cela fait un peu cher… Mais d’un autre côté, je sais que cela fonctionne très bien vu que c’est ce que j’avais conseillé à mon voisin.

Broadlink a un module similaire pour la moitié du prix. Ayant déjà le multiprise de la même marque, il est possible que je tente l’expérience avec un module et en fonction du résultat, on investira dans 3 autres.

Même si j’arrive doucement à la fin de mon installation, je vais, dans de prochains articles, partager la configuration de mon installation pour certains éléments comme l’arrosage du jardin et mon retour d’expérience sur le pilotage vocal de Jeedom.

A bientôt.


Poster un commentaire

Un multiprise pour les gouverner tous

J’arrive tout doucement à la fin de mon installation, car il faut bien qu’il y en ait une sinon mon but de faire des économies d’énergie serait ruiné par la multitude d’appareils ajoutés dans la maison.

Aujourd’hui, je voulais justement parler d’un élément de mon installation qu’il me semble intéressant d’aborder: le coin TV.

Jusque maintenant, j’avais un multiprise branché sur mon réseau électrique à travers un wallplug de Fibaro afin de pouvoir éteindre tout et ne rien laisser en veille. Point embêtant, j’ai un harmony hub qui met 40 secondes à s’allumer à chaque fois que je rallume le wallplug. Autre point, tous mes périphériques non-utilisés sont en veille. J’ai donc une TV, le Harmony Hub, l’ampli home-cinéma et un subwoofer amplifié.

J’avais déjà chercher une solution et avais trouvé le multiprise Greenwave mais il n’est plus disponible.

C’est donc suite à un article de Sarakha63 que j’ai découvert l’univers Broadlink dans lequel j’ai enfin trouvé mon bonheur, à savoir, un multiprise pas cher du tout permettant la gestion individuellé des prises de courant.

Hier, j’ai donc recyclé mon wallplug pour l’utiliser avec mon poêle à granulés et j’ai remplacé mon multiprise par le Broadlink MP1. 

Tout d’abord, j’ai dû remplacer la prise mâle de ce dernier car il est fourni avec une prise chinoise ( ou US, je ne sais pas trop ). Ensuite, sans lire les instructions ( normal, c’est en chinois ), j’ai installé l’application sur mon smartphone en utilisant le QR code. Attention, la clé de votre wifi ne doit pas être trop longue car le système refuse qu’elle soit plus longue que 32 octets. J’ai été obligé de la changer et de refaire la configuration de tous mes autres appareils connectés en wifi.

Après vérification du bon fonctionnement avec l’application du constructeur, j’ai installé le plugin dans Jeedom, inclus le mp1 et magie, widget ajouté dans le dashboard avec mes 4 prises.

Il ne me restait plus qu’à revoir mes scénarios afin d’ajouter les activations et désactivations individuelles des prises en fonction des activités choisies, ces dernières venant du Harmony Hub.

J’en ai également profité pour ajouter un aeontec 6 en un pour contrôler température et humidité dans mon garage, le pilotage du radiateur de la cuisine ainsi que l’ajout de Roller Shutter 2 pour le deux derniers volets qui n’étaient pas encore domotisés.

Je compte quand même suivre les évolutions de chez Broadlink car il existe d’autres modules qui pourraient être intéressants… On verra l’espérance de vie de ce matériel chinois…


Poster un commentaire

Booter sur un disque dur externe

Après avoir attendu quelques semaines, mon boitier USB-IDE-SATA est enfin arrivé. J’ai donc maintenant la possibilité de connecter un disque dur externe au PI3, qu’il soit IDE ou SATA.

J’ai donc pu démarrer l’opération de transfert du contenu de la carte SD vers le disque dur externe afin d’éviter des crashs de cartes SD et dormir sur mes deux oreilles sans me demander si la carte tiendra jusqu’au lendemain. Voici un résumé des actions à effectuer reprise du forum de Jeedom.

  • Se logger en SSH en utilisant la commande ssh root@ip_du_pi et mettre le mot de passe (Mjeedom96 si vous ne l’avez pas changer).
  • Vérifier que le disque est bien reconnu en exécutant la commande cfdisk /dev/sda.cfdisk
  • Il devrait y avoir une seule partition, il faut la supprimer.Ensuite, il faut successivement effectuer les actions suivantes:
    • New.
    • Definir la taille de la partition (laissez celle par défaut).
    • Primary.
    • Type.
    • Choisir le type 83 Linux.
    • Write.
    • Réponse Yes à la question.
    • Quit.
  • Vérifier que le disque dur est bien partitionné pour Linux en exécutant la commande fdisk -l.

fdisk-l

  • Exécuter la commande mkfs.ext4 /dev/sda1 pour formater la partition.
  • Exécuter la commande cat /boot/cmdline.txt afin de trouver l’identifiant de la partition qu’il va falloir transférer sur le disque dur externe. Il semble que ce soit toujours mmcblk0p2 (zéro, et pas o) sur les RPI3, j’ai répété l’opération sur deux système.
  • Exécuter la commande umount /dev/sda1.
  • Exécuter la commande dd if=/dev/mmcblk0p2 of=/dev/sda1 bs=512 afin de copier la contenu de la carte SD vers le disque dur externe.
  • Quand la copie est terminée, exécuter la commande vi /boot/cmdline.txt.
  • Dupliquer l’unique ligne du fichier en tapant dans l’ordre les touches suivantes: ESC,Y,ESC,P.
  • Commenter la première ligne en y ajoutant un # au début de la ligne (ce qui aura pour effet de la désactiver) en tapant dans l’ordre les touches suivantes: ESC,i,#.

cmdline

  • Modifier la seconde ligne en remplaçant l’identifiant de la partition en commençant par descendre sur la seconde ligne avec ESC puis flèche du bas, placer vous sur le premier slash de l’identifiant, taper ESC puis répéter x jusqu’à ce que le chemin soit effacé, ESC,i puis taper /dev/sda1.
  • Pour sauvegarder le fichier, taper les touches suivantes dans l’ordre: ESC,:,w,q puis ENTER.
  • Quand ce changement est effectué, exécuter la commande reboot.
  • Exécuter la commande suivante: vi /etc/fstab.
  • Dupliquer la seconde ligne de la même manière que dans le fichier cmdline, commenter cette seconde ligne et modifier le chemin de l’identifiant de la partition par /dev/sda1

fstab

  • Taper la commande reboot pour redémarrer, cela devrait être bon.

Jeedom sera sur un environnement plus stable et cela donne également la possibilité d’effectuer des copies de la partition du disque dur sur la partition de la carte SD si besoin en exécutant les commandes:

  • dd if=/dev/sda1 of=/dev/mmcblk0p2 bs=512

Si le besoin de revenir sur la carte SD pour quelque raison que ce soit:

  • modifier le fichier /boot/cmdline.txt pour désactiver la ligne ajoutée avec le /dev/sda1 et réactiver celle avec /dev/mmcblk0p2
  • modifier le fichier /etc/fstab pour également désactiver la ligne ajoutée avec le /dev/sda1 et réactiver celle avec /dev/mmcblk0p2
  • exécuter la commande reboot.


Poster un commentaire

Comment j’utilise JARVIS@Home?

Après quelques demandes à travers le forum et par plusieurs collègues, voici comment j’utilise JARVIS@Home et comment je l’ai configuré.

Il y a 2 terminaux dans la maison pour le moment. Ces deux terminaux me servent pour commander ma domotique dans deux pièces différentes, avec des besoins différents. Ils remplacent donc définitivement mes deux lapins Karotz que j’utilisais principalement pour le TTS.

Afin de bien dissocier les deux, j’ai donc créé deux virtuels, deux groupes de scripts en plus du scénario et de l’interaction utilisés pour réveiller l’application pour exécuter mes ordres.

Encore une fois, je ne vais pas détailler la configuration côté Android car le forum ainsi que l’aide de l’application le font déjà très bien mais je vais me focaliser sur la configuration dans Jeedom.

J’ai tout d’abord créer deux scripts. Chaque script permettra à Jeedom de faire parler (mais aussi faire redémarrer) JARIVS@Home sur chaque terminal Android de manière indépendante.

scripts-main

Derrière chaque script, il y a pour le moment 2 commandes. Attention, les commandes ne devant pas porter le même nom entre les différents scripts, il faut bien veiller à les différencier sinon Jeedom refusera de les enregistrer.

scriptjarvis

Il faut alors configurer chaque commande avec le type script, type et y mettre la requête http qui va bien avec l’adresse ip du terminal en question.

Ici, j’en ai deux, une pour redémarrer et une pour faire parler le terminal.

Ces commandes pourront alors être utilisée dans des scénarios ou des interactions.

Ensuite, il faut créer un virtuel par terminal pour pouvoir avoir l’état visible dans le Dashboard de Jeedom de chacun d’eux.

La aussi, il faut bien avoir des noms différents pour éviter des doublons.virtuel-etat

Cela permet donc de pouvoir récupérer l’état de chaque terminal avec l’ID de la commande state en configurant l’application Android comme décrit sur le forum de Jeedom.

statut-dashboard

Pour rappel, il faut faire bien attention au mot-clé que vous allez utiliser car « Jarvis » est reconnu « Jarvi » sur mes deux terminaux et j’avais 10% de reconnaissance du mot clé. J’ai donc changé de nom (ce qui veux dire qu’il faut également changer la demande de l’interaction qui permet le réveil. Le mieux est d’utiliser le TTS pour s’assurer que le mot-clé à utiliser est bien rendu par le terminal.

Maintenant, aussi bien avec l’un que l’autre, mes deux terminaux envoient et reçoivent bien les informations de Jeedom.

Voici un exemple d’interaction que j’ai écrite pour que JARVIS@Home me donne l’heure si je lui demande:

interact-heure

Je me tâte pour un troisième terminal mais j’attends un peu pour voir à long terme si tout cela fonctionne bien.

Je prépare un article sur mon expérience sur le déplacement de partition de boot pour Jeedom sur un disque SSD externe et l’intégration du multiprise BroadLink que j’espère recevoir très bientôt.

 


Poster un commentaire

La bonne surprise de JARVIS@Home

Comme expliqué dans mon article précédent, j’ai donc fait mes premiers pas avec Jarvis@Home en utilisant un terminal Alcatel (vu comme un HUAWEI sur ma freebox).

Cela fonctionne assez bien malgré les quelques fois où JARVIS n’est pas réveillé au premier appel.

La documentation sur le forum Jeedom est assez claire et l’aide de l’application sur le terminal Android est également bien utile.

Une belle surprise de cette application est la présence du TTS directement utilisable en exécutant des requêtes HTTP (expliquées aussi dans l’aide de l’application).

Donc, Jarvis@Home transforme tout terminal Android compatible en un appareil permettant le pilotage par la voix de votre domotique mais également de recevoir des messages vocaux.

Cela donne une autre dimension à l’application et met au placard les Karotz et Nabaztag (surtout que l’Openkarotz ne fonctionne plus en TTS et qu’ils avaient tous les deux toujours besoin d’un accès à des serveurs sur le net).

Je vois un bel avenir pour cette application et j’espère trouver des terminaux compatibles pour avoir JARVIS dans plusieurs pièces.