Retour d’expériences sur Jeedom et liens vers tutos

Bascule domoticz vers Jeedom

J’ai (lâchement) profité d’un plantage de la carte SD de mon Raspberry Pi pour tester l’application Jeedom et comparer avec mon installation Domoticz.

Ma modeste installation domotique est constitué des matériels suivants

Xiaomi / Yeelight

  • 1 Gateway V2
  • 2 capteur Température + Hydrométrie
  • 1 capteur Température + Hydro + Pression
  • 6 capteurs d’ouvertures
  • 1 capteur de présence
  • 1 bouton 4 fonctions (click, double click, click long pressed, click long released)
  • 1 robot aspirateur de première génération
  • 1 Yeelight

Philips Hue

  • 2 ampoules Hue
  • 2 ampoules Ikea compatibles Hue

Heatzy

  • 1 unique module Heatzy branché sur un radiateur du salon

Withings / Nokia

  • 1 balance withings

Mes scénarios existants sont assez “simplistes”

1 ampoule Hue commandable avec le bouton Xiaomi. On peut allumer/éteindre l’ampoule (simple clic), la mettre en luminosité faible (long click), ou baisser la luminosité par pallier de 10% (double clic)

1 ampoule Hue commandée avec le capteur de présence Xiaomi (sur présence, on allume, plus personne, on éteint après 10min).

Cet article n’a pas pour but de faire une comparaison exhaustive des différents protocoles présents dans les deux systèmes, mais de faire profiter d’un petit retour d’expérience.

Comparaison entre les deux systèmes

Les deux systèmes sont assez proches l’un de l’autre et possèdent tous les deux une communauté active.

Petite mise en garde préalable : bien que les deux systèmes peuvent s’installer sur une carte SD et RPI2/3, il est FORTEMENT conseillé d’utiliser une installation sur disque dur/clé USB. En effet, les systèmes domotiques stressent fortement les cartes SD et celles-ci peuvent vite se “briquer”….

Domoticz

Les plus

  • Totalement gratuit
  • Nécessite une machine peu puissante (RPI 1!)
  • Protocoles divers gérés par défaut
  • Interface de programmation “facilité”

Les moins

  • Les ressources sont essentiellement en anglais… et pas toujours à jour
  • Certains protocoles nécessitent des compétences avancées en informatiques
  • L’interface de programmation simplifiée contient des bugs. Certains de mes scénarios n’ont jamais réussi à fonctionner ou fonctionnaient uniquement dans certaines beta!
  • Pas de sauvegarde automatique intégrée

Jeedom

Les plus

  • Beaucoup de ressources en français – dont le forum et le site principal
  • Le market avec énormément de plugins divers
  • Installation facile sur RPI2 ou sur plateforme “vide” supporté
  • Support en ligne “pro”
  • Meilleur support pour les appareils Xiaomi (payant)
  • L’application mobile, vraiment bien faite (payante)
  • Meilleur niveau de WAF

Les moins

  • Plateforme nécessaire plus puissante
  • Beaucoup de plugin payants : pour avoir les mêmes fonctionnalités que j’utilisais sur domoticz, j’ai déboursé 18€ de logiciels. (Détails: Philips Hue – 2€, Xiaomi Home – 6€, App mobile – 4€, et Alarme – 6€).
  • Des plugins, oui, mais encore faut il qu’il y ait un suivi par des développeurs. Exemple, Wunderground ne fonctionne pas sur les dernières versions de Jeedom
  • Installation plus complexe sur serveur avec apache existant
  • L’aide en ligne parfois inexistante (par exemple, sur les fonctions)

Bref, c’est vraiment une question de goût entre les deux systèmes et de philosophie. Si le coût vous rebute, autant rester sur Domoticz ou autre.

Quelques points notables lors de l’installation de Jeedom

Je ne vais pas décrire la procédure d’installation. D’autres blogs font ça beaucoup mieux que moi. Par contre, j’ai quelques REX sur les erreurs qui me sont arrivées…

  • Si un délai de déclenchement est visible lors de l’exécution des scénarios Il s’agit peut être d’un souci de puissance machine. Bien que jeedom peut s’exécuter sur un RPI1, il faut (au minimum) un RPI3 pour bien fonctionner avec le plugin xiaomi. Via SSH, on peut regarder via la commande htop pour vérifier si le serveur n’est pas surchargé.
  • Si la crontab interne de jeedom ne fonctionne pas (menu paramètres, gestionnaire des tâches) ou que la fonction DANS des scénarios ne s’exécute pas….), ce n’est évidement pas normal. On peut également voir dans le syslog du serveur les messages suivants:
(*system*jeedom_watchdog) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom_watchdog)
(*system*jeedom) INSECURE MODE (group/other writable) (/etc/cron.d/jeedom)

Les crontab sont créés dans le script install.sh, via les commande suivantes (compte root).

echo "* * * * * www-data /usr/bin/php ${WEBSERVER_HOME}/core/php/jeeCron.php >> /dev/null" > /etc/cron.d/jeedom
echo "* * * * * root /usr/bin/php ${WEBSERVER_HOME}/core/php/watchdog.php >> /dev/null" > /etc/cron.d/jeedom_watchdog

MAIS il faut corriger les droits des scripts via les commandes suivantes (ce n’est pas fait dans le script!)

chmod og-w /etc/cron.d/jeedom_watchdog
chmod og-w /etc/cron.d/jeedom

A noter également, de manière plus anecdotique, que l’intégration du robot Xiaomi Mi Robot dans le système a été assez compliqué (clé chiffré sous forme 96bits)

L’ajout dans Jeedom du Xiaomi MiRobot Vacum (v1 ou v2) nécessite en effet un token à récupérer dans l’application Mi Home.

Souci : les dernières versions de Mi Home sur Android ne stockent plus ce token. Les méthodes consistent donc à prendre une ancienne version de Mi Home ou à utiliser une sauvegarde d’un … iPhone.

Quelques tutoriaux utiles pour les débutants

http://sarakha63-domotique.fr/jeedom-installation-premiers-pas/

https://www.maison-et-domotique.com/72202-tuto-gerer-presence-domicile-grace-a-jeedom-wifi/

https://guillaumebraillon.fr/jeedom-scenario-bouton-switch-xiaomi/

https://guillaumebraillon.fr/jeedom-scenario-lumiere-sur-presence-corrige-optimise/

Quelques sites avec des exemples de scénario Jeedom, des ressources etc.

http://electrotoile.eu

https://jeedom-facile.fr

Dans l’avenir, je compte rajouter au blog quelques tutoriaux sur mes scénarios Jeedom.

Une commande debian / ubuntu utile : apt

Aujourd’hui, un court article pour vous parler de la commande apt.
Celle-ci a été conçue et intégré au système debian pour être plus user-friendly que les apt-get, apt-cache et dpkg.

One command to rule them all…

Elle remplace avantageusement les 3 commandes précédentes et a été introduit en 2014 ;
Pourquoi en parler en 2018 ? Et bien en informatique linuxienne, on met longtemps à changer les habitudes. 4 ans, c’est pas si long que ça 🙂

Continue reading “Une commande debian / ubuntu utile : apt”

find ou la commande à tout faire

Sous linux, quand on cherche des fichiers, il existe la commande find.

Mais cette commande permet de réaliser plus que de simple recherches : elle permet également d’appliquer des outils directement sur les résultats de recherche.

ça paraît vague dit comme ça, mais cette commande est M*A*G*I*Q*U*E* et fait partie du BA-ba à connaître sous linux quand on est DevOps.

Continue reading “find ou la commande à tout faire”

Renommage en masse sous linux : rename

Edit du 19/01/2019 : suite au contact de Cyril Bois, je rajoute également son site pour les tests de RegEx.

Il existe plusieurs méthodes “petit barbu” pour traiter des renommages de masses sous linux en ligne de commande.
Deux commandes sont citées souvent rename et mmv. Cet article porte sur le premier 🙂

rename

Voici quelques exemples ‘simples’ d’utilisation de rename

A noter que pour tester les regex de “rename” on peut utiliser les sites suivants

Le second site contient également pleins d’outils sympathiques pour les CSS, JDOM…

Dans les exemples, l’option “-n” signifie noexecute, l’option -v = mode verbeux

  • Insérer un 0 au numéro de saison d’une série:
    Exemple :
    12 Monkeys/Saison 01/12 Monkeys – 1×13 Arms of Mine – IMMERSE.mkv ⇒ 12 Monkeys/Saison 01/12 Monkeys – 01×13 Arms of Mine – IMMERSE.mkv
find . -type f -name "*.mkv" -exec rename -v 's/(.*[[:space:]]+-)[[:space:]]+([0-9]{1})(x.*\.mkv)/$1 0$2$3/' {} \;
  • Supprimer la valeur ” – Sonarr” d’un fichier quelconque

Game of Thrones – 02×01 The North Remembers – Sonarr.mkv ⇒ Game of Thrones – 02×01 The North Remembers.mkv

 rename -n -v 's/(.*) - Sonarr(.*)/$1$2/' *
rename -n -v 's/(Game of Thrones - [0-9]+)x([0-9]+) -( .*\.[a-z]{2}\.srt)/$1x$2$3/' *.srt
  • Insérer un 0 supplémentaire dans les fichiers ayants deux chiffres finaux;

Exemple:
03 – Darth Vader and the Cry of Shadows #05-05.jpg ⇒ 03 – Darth Vader and the Cry of Shadows #05-005.jpg
Cas particulier, les fichiers avec trois chiffres ne doivent pas être modifiés, par Exemple
03 – Darth Vader and the Cry of Shadows #05-105.jpg => 03 – Darth Vader and the Cry of Shadows #05-105.jpg

rename -n -v 's/(.*)-([0-9]{2})(\.jpg)/$1-0$2$3/' *.jpg
  • renommer les fichiers “* – Txx ” en ” #xx”
  • Changer rapidement les extensions des fichiers
rename 's/\.zip$/\.cbz/' *.zip