[Présentation] Benj29 et blog Jeedom-Facile

De rien. Tant mieux.

Merci pour le retour d’expérience !

Je compte à peine les SD cards des Raspberry qui sont presque des consommables :wink:
Pareil, j’ai quelques modules en rab au cas où. J’essaie d’éviter les modules à piles, mais pour certains modules c’est inévitable.

Je vais essayer de monter un petit cluster pour me faire la main et voir si ça peut être utile.

A bientôt !

Le problème c’est l’investissement et tout de suite les heures de vol de l’installation fois 2…

Au final, j’ai remodifié mon scénario de mouvement où je passe les tablettes en luminosité minimum la nuit et luminosité auto la journée…

bonjour @benj29,
Avec ton scénario et ta détection de mouvement tu sais me dire tout les combien de fois par semaine ta tablette charge stp. Car aujourd’hui je n’utilises pas la détection de mouvement de la tablette car trop consommateur. De mon coté la tablette charge 2 fois par semaine.

Bonjour,

Effectivement, je l’ai remarqué. Mais par contre, il faut blinder de capteurs de mouvement à défaut.
Je dois avouer que le téléphone a le capteur de mouvement désactivé, car la batterie fond. Mais surtout car il y a 5 ou 6 ans facile.

Pour les tablettes, j’ai gardé la détection par la caméra avant.

Le tél du garage, c’est une à deux fois par jour, mais j’insiste, il a déjà un certain âge !

Pour les tablettes, je dirai une fois par jour.

A voir sans détection de mouvement, mais là encore faut blinder de capteurs de mouvement…

Ok. Effectivement c’est beaucoup malgré d’une batterie usagée. J’active l’ecran en fonction de notre présence, mode de vie, par rapport à la désactivation ou activation de l’alarme. Si ça peut donner des idées.

Après la batterie d’une mipad 4 coûte 19e…
Il me faudrait 2 capteurs de mouvement en plus par zone…
Soit 10 à 15e par zone pour 2 capteurs. Pas sûr que cela vaille le coup. Sans parler des cr2032. A méditer.
Moi les tablettes ne restent pas allumées en permanence si pas de mouvement présence dans le coin.

Bon, allez j’ai tenté le coup. Je vais voir, après une première analyse cela me permettrait de passer à une charge tous les 3 ou 4 jours si peu utilisée.

Reste le tel qui est mort… Mais là je l’amène au bout du bout :joy:

EDIT : j’ai modifié la configuration de mes JPi pour ne plus générer la détection de mouvement. Mais j’ai gardé la possibilité d’activer le streaming pour pouvoir me servir des caméras.

Cela donne ça dans les réglages de base pour garder la main sur le streaming :

Le mouvement détecté est donc désactivé :

J’ajouterai les 2/3 capteurs de mouvement dans mes scénarios côté Jeedom et point.

Petit ajout que j’avais commencé à remonter sur le fil des analyseurs de piscine « connectés ».

Cela fait 2 ou 3 étés que je me pose la question d’en acheter un. Il est clair que suivre une piscine est un sujet et que le moindre oubli (ou madame :D) peut faire vite mal. Les prix prohibitifs m’avaient calmé (faut pas déconner quand même 500€ pour un truc qui mesure une tension et un ph… et qu’il faut changer tous les 2 ans).

Jusqu’à l’arrivée de l’IOpool à 199€ !
En vérité, ce n’est 199€, c’est plutôt 150€. Car l’iopool est livré avec des produits (1kg de chaque, ph+, ph-, chlore choc etc). Et il y a 25€ de réduction en parrainage, voir ici :

https://refrr.app/GxdvVmlaEq/58728

La petite boite m’a plu pour plein de raisons :

  • le prix, le format, la taille,
  • l’application « simple » et les recommandations efficaces,
  • le poids des produits à mettre en fonction de votre volume (dimensions à prendre).
  • l’utilisation des languettes « simplement » pour calibrer de temps à autre la sonde.




Mais mais… à ce prix là, bein il n’y a pas d’API.
Et clairement, après avoir discuté avec eux, ce n’est pas prévu.
Logique, l’infrastructure à prévoir fait monter le prix et le marché est déjà bien saturé sur les produits connectés avec API externe.

Donc il faut en Bluetooth, venir à côté de sa piscine tous les jours et faire un relevé, bof clairement.

Après, avoir tenté de remonter des données par BLEA qui voit bien IOpool, pas de trame à décoder et surtout pas la compétence, il faudrait développer un truc et qu’ils veuillent bien nous filer quelques pistes, pas sûr qu’ils le fassent. Et au final, pourquoi ? Leur modèle c’est justement la simplicité. Moi ce que je souhaite c’est pas forcément remonter les données, c’est être notifié…

Bon, on réfléchit et on voit :

J’ai la chance d’avoir une prise à disposition extérieure, bien protégée, le relais ira là et plus de problème de portée.

En complétement de ma PI qui gère la pompe de piscine et me relève les températures, ça ira :

  • température de l’eau,
  • température de l’air,
  • température de la pompe,
  • niveau de l’eau,
  • module Sonoff pour piloter la pompe.
  • le plugin piscine fait le boulot derrière pour filtrer et protéger la pompe (+ quelques scénarios) si manque d’eau.



J’ai un tél JPI qui j’utilise pour les SMS et autres tâches.
Tiens automatisons le relevé et l’envoi tant qu’à faire.

Macrodroid ne permettant pas de fixer un nom de fichier (cela est prévu à terme) et l’envoi par Telegram, bon va falloir ruser.

Résultat, il faut :

  • un serveur FTP sur le téléphone,
  • Macrodroid, Automate sur le téléphone,
  • Un scénario côté jeedom avec le plugin script.

Et ça donne ça,2 fois par jour ou plus !

En résumé :

  • macrodroid est paramétré avec les déclencheurs que vous souhaitez, ici 2 fois par jour à heure fixe.
  • comme le tél JPI est optimisé pour sa consommation, je repasse la mise en veille à 5 min pour éviter de capturer un écran noir, je lance le flux automate qui fera la photo puis pendant l’exécution (2 min) j’attends et je lance le scénario Jeedom finale par un lien http et l’api. Enfin, je remets l’affichage veille à 15 secondes.

Pour rappel pour lancer un scénario :

http://#IP_JEEDOM#/core/api/jeeApi.php?apikey=#APIKEY#&type=scenario&id=#ID#&action=#start#

Ensuite côté Automate, le flux simplifié est le suivant (il faut supprimer le BT si vous passez par le relais wifi/bluetooth) :

Là encore, on allume l’écran au cas où, on attend, active le BT (si nécessaire), on supprime la copie d’écran précédente (voir le chemin plus bas), on lance l’application iopool, elle est assez longue à démarrer car va chercher des infos (au relais wifi et sur leur serveur). Je rallume l’écran si besoin, et je fais une photo. Notez que vous devez mettre un chemin (pour ma part, j’ai fait un répertoire qui sera celui qui sera partagé par le serveur FTPDroid) avec toujours le même nom de fichier. Puis on tue l’application (car root je peux), coupe le bt et relance JPI pour afficher mon design habituel.

Renommez le fichier .txt en share.data et vous pouvez l’importer directement.

Share.data.txt (425 Octets)

Pour pouvoir passer ce fichier à Jeedom, après avoir testé plusieurs solutions, j’ai simplement installé un petit serveur FTP léger sur le téléphone. FTPdroid.

https://play.google.com/store/apps/details?id=berserker.android.apps.ftpdroid&hl=fr

Voici la configuration « simple ». Il faut veiller à le faire démarrer au début. J’ai simplement partagé le répertoire où est stocké le fichier snapshot, point.



Vous pouvez tester votre accès FTP par un simple client sur un PC ou depuis votre Jeedom en pointant sur le port/ip de votre téléphone…

Et donc le scénario Jeedom fait simplement :

Le script que vous devez stocker dans le répertoire de votre choix et faire pointer le plugin script dessus (n’oubliez pas de faire un sudo chmod u+x script.sh)

#!/bin/bash
sudo rm /home/XXX/iopool_snapshot.*
sudo wget -P /home/XXX ftp://IPduTELJPI:PORTFTP/iopool_snapshot.png
sudo chown www-data:www-data /home/XXXX/iopool_snapshot.png

ne fait que supprimer le dernier fichier,
récupérer le nouveau sur le téléphone sur votre serveur FTP,
et lui mettre les droits pour permettre un envoi.
enfin, le scénario jeedom l’envoi par télégram.

A partir de là, il y a deux pistes à creuser :

  • j’ai pensé à mettre en place un autocrop pour sélectionner les deux lignes importantes de cette page. C’est à dire, le ph et la désinfection. Malheureusement, le texte du haut varie en hauteur et fait changer tout :frowning:


C’est dommage car on pourrait automatiser la relève toutes les heures par exemple et remonter ces fichiers dans les designs tout simplement !

  • à défaut, je vais nettoyer un peu le cadre de l’image (bandeau en haut etc) pour avoir une image plus présentable et l’intégrer sur le design de la tablette par exemple…

Il faut jouer du paquet imagemagick et de ce script pour avoir un truc répétable :

#!/usr/bin/env python3
import subprocess
import sys

# image, crop- dimensions
img = sys.argv[1]; left = sys.argv[2]; right = sys.argv[3]; top = sys.argv[4]; bottom = sys.argv[5]
# arrange the output file's name and path
img_base = img[:img.rfind(".")]; extension = img[img.rfind("."):]; path = img[:img.rfind("/")]
img_out = img_base+"[cropped]"+extension
# get the current img' size
data = subprocess.check_output(["identify", img]).decode("utf-8").strip().replace(img, "")
size = [int(n) for n in data.replace(img, "").split()[1].split("x")]
# calculate the command to resize
w = str(size[0]-int(left)-int(right)); h = str(size[1]-int(top)-int(bottom)); x = left; y = top
# execute the command
cmd = ["convert", img, "-crop", w+"x"+h+"+"+x+"+"+y, "+repage", img_out]
subprocess.Popen(cmd)

sous ce format :

<script> <image> <crop_left> <crop_right> <crop_top> <crop_bottom>

Au final pour 150/200€ le tout, perso, je suis conquis !
Et surtout quelles économies de produit, je dois dire !

1 « J'aime »

J’ai reçu mon relais, du coup, j’approuve.

Installé (sous la terrasse) pour faire relais sur l’iopool dans la piscine :

Ajouté par l’application, on parle d’un relais wifi/bluetooth :

Du coup, le flow automate se simplifie grandement (plus besoin de bluetooth) :

Et du coup, la mesure est plus rapide et marche maintenant partout :

A l’occasion, je ferai un crop propre et je l’intégrerai dans les designs avec une récupération par exemple toutes les 3h …

Bon, au final, on gagne à ne pas avoir la détection par la caméra côté JPI.
Pas sûr totalement que ce ne soit que ça car j’ai aussi désactivé un autre paramètre côté JPI.

J’ai désactivé la fonction côté JPI de rallumer périodiquement pour éviter le décrochage Wifi. Djul m’avait conseillé cela par rapport à la perte passerelle wifi, mais avec le recul finalement, ça vide plus la batterie qu’autre chose et c’est désagréable que l’écran s’allume tout seul.

Exemple sur ma Xiaomi de l’entrée, c’est déjà sympa… mais pas flagrant car il y a beaucoup de mouvement quand on est là.

Décharge avant de 17h30 en moyenne contre 22h soit 25% de plus.
OK, c’est sûr, on peut résumer autrement sur 9 mois de consommation équivaut à 1 an. Donc oui sur 3 ou 4 ans de durée de la vie de batterie, on gagne 1 an.

Autre exemple pour l’autre xiaomi du couloir : 13h30 de décharge pour 31h… là c’est plus intéressant. On vise le x2. A affiner sur le plus long terme. Donc 2 ans d’utilisation = 4 ans maintenant !

J’ai soulevé un point intéressant :slight_smile: Je te fais faire des économies :wink: et une usure moins importante du matériel.
J’utilise fully kiosk donc j’ai pas les mêmes réglages. Je dois encore améliorer le fonctionnement (mais je sais pas comment encore) car l’écran reste allumé alors que ce n’est pas utile.

1 « J'aime »

Petite update oubliée récemment, intégration des relevés ioPool dans les designs.
Après un crop de l’image, je fais un relevé maintenant toutes les 3h par le téléphone.
Je notifie par télégram uniquement à 6/12/18h.

Le scénario a donc évolué (côté macrodroid, j’ai juste augmenté le nombre de déclencheurs, pas besoin d’une image).

Le script a évolué, après l’installation du paquet :
https://doc.ubuntu-fr.org/imagemagick
En gros, toujours comme avant, ménage, récupération du fichier, droits, crop de l’image (je fais appel à un script trouvé sur le net, pratique) pour ne plus avoir la météo de l’iopool et le bandeau du tél et je copie le fichier à la fin sur mon design pour affichage.

Pensez à avoir les propriétaires et droits www-data/www-data et 775 sur vos fichiers côté Jeedom (/var/www/html/), chmod et chown sont à utiliser.
De même pour les scripts, pensez à les rendre exécutable par :
sudo chmod u+x nomduscript.sh
(sudo si stockés dans /var/www/html/plugins/script/data)

Le code du script get-snapshot.sh :

#!/bin/bash
sudo rm /home/boss/iopool_snapshot.*
sudo wget -P /home/boss ftp://192.168.2.200:2221/iopool_snapshot.png
sudo chown www-data:www-data /home/boss/iopool_snapshot.png
sudo /var/www/html/plugins/script/data/crop_image.sh /home/boss/iopool_snapshot.png 0 0 340 310
sudo chown www-data:www-data /home/boss/iopool_snapshot[cropped].png
sudo chmod 775 /home/boss/iopool_snapshot[cropped].png
sudo rm /var/www/html/montheme/images/iopool_snapshot[cropped].png
sudo cp /home/boss/iopool_snapshot[cropped].png /var/www/html/montheme/images -f -p

Le script qui fait le crop :

#!/usr/bin/env python3
import subprocess
import sys

# image, crop- dimensions
img = sys.argv[1]; left = sys.argv[2]; right = sys.argv[3]; top = sys.argv[4]; bottom = sys.argv[5]
# arrange the output file's name and path
img_base = img[:img.rfind(".")]; extension = img[img.rfind("."):]; path = img[:img.rfind("/")]
img_out = img_base+"[cropped]"+extension
# get the current img' size
data = subprocess.check_output(["identify", img]).decode("utf-8").strip().replace(img, "")
size = [int(n) for n in data.replace(img, "").split()[1].split("x")]
# calculate the command to resize
w = str(size[0]-int(left)-int(right)); h = str(size[1]-int(top)-int(bottom)); x = left; y = top
# execute the command
cmd = ["convert", img, "-crop", w+"x"+h+"+"+x+"+"+y, "+repage", img_out]
subprocess.Popen(cmd)

Je passe par l’affichage d’une iframe sur mon design.
Le code HTML :

<iframe
    width="320"
    frameborder="0"
    style="border:0"
    height="375"
    allow="fullscreen"
    src="/montheme/iopool.html">
</iframe>

Le fichier html iopool.html :

<html>
  <head>
  <meta http-equiv="refresh" content="60" >
  </head>
  <body>
    <img src="/montheme/images/iopool_snapshot[cropped].png" width="300px"/>
  </body>
</html>

Autre solution, ajouter directement ce code HTML dans le design (ajouter html/code) :

<html>
  <head>
  <meta http-equiv="refresh" content="60" >
  </head>
  <body>
    <img src="/montheme/images/iopool_snapshot[cropped].png" width="300px"/>
  </body>
</html>

EDIT : je me suis posé la question de le faire à la demander, c’est à dire, design qui lance la requête sur le tél pour récupérer l’image mais au final, pas d’intérêt.
Si je veux une analyse, je prends mon tél et l’apk dédié…

Tu devrais ouvrir un fil dédié. J’ai un problème pour ma part, dans l’affichage direct de l’image, je vais voir un peu de mon côté…

J’ai fait sur un autre site, à partir de https://www.meteonord-pasdecalais.fr/wp-content/uploads/2020/09/. Un peu de Python pour wget, un peu de poudre de perlimpinpin et j’ai un super affichage de la météo locale. Ton site Jeedom-facile et ce post sont très inspirants ! Je n’aurais jamais pensé à faire comme ça.

1 « J'aime »

Hello,

Je viens de migrer mon contrat de l’offre online à super heures creuses après un premier estimatif en me basant sur les consommations de mes 2 dernières années.

J’ai aussi fait évoluer mon installation de chauffage par un second groupe Daikin pour le RDC pour la partie chauffage/climatisation. Du coup, ma gestion des thermostats été/hiver a évolué comme pour le premier étage.

Je conserve donc l’article sur le blog car il touche chauffage électrique et clim réversible plus pratique pour une mise en place. Pour ma part, je devrais bien moins consommer avec plus de confort !

Du coup, aucun plugin ne permettant de tenir compte des tarifs multi-horaires que va porter l’offre Linky, j’ai donc fait une mise en place pour vérifier son intérêt :

J’ai prévu d’attaquer la rédaction d’un article de suivi de consommation, autoconsommation et des usages.
Mais le travail proposé par @superbricolo et @Thibaut_T sur le plugin dans les semaines à venir va simplifier grandement la présentation des tableaux de bord.

Pour l’heure, j’historise toutes les grandeurs du plugin (jour, veille, semaine, mois etc) et j’attaque ça par scénario avec des maxbetween. Forcément, long à mettre en place. Ils prévoient de l’intégrer au plugin pour faciliter l’utilisation par tout le monde.

Autre intérêt, si erreur de comptage, les erreurs corrigées seraient intégrées dans ces informations. Alors que moi l’historisation continue de les voir !

D’ailleurs, petit mémo pour ceux qui souhaitent corriger des erreurs de données. RDV ici :

Merci adminer pour faire cela (voir article sur le blog : https://jeedom-facile.fr/index.php/2018/12/06/machine-virtuelle-jeedom/)

Mise à jour de l’article sur la gestion de présence pour éviter les sauts GPS et avoir une présence fiable même sans Bluetooth et clés NUT…

https://jeedom-facile.fr/index.php/2020/02/09/gestion-de-la-presence/

1 « J'aime »

Bonsoir,

Mémo suite à ce post.

Après être parti dans de mauvaises directions, malgré l’aide de @naboleo, j’ai cru d’abord à un problème de charge de ma VM.

Après, analyse, il se trouvait qu’un virtuel avait un comportement erratique malgré l’option « ne jamais répéter » ou de base en" automatique".

Mais depuis le 3.3.58, je rencontre de nouveau des problèmes de scénarios lancés de manière trop récurrente.

En grattant, il se trouve que j’ai enfin trouvé la source du problème et je le mets ici si jamais quelqu’un a le même problème.

Mon capteur sec de portail génère des rebonds… encore fallait-il le savoir ! Ce capteur sec est sur une raspberry avec Jeedouino, l’excellent plugin de @revlys (qui ne donne pas signe de vie depuis plusieurs mois, j’espère que rien de grave…)

Et effectivement, la recopie de cette information sur un virtuel ou autre lance les scénarios « à fond »… (celui de notification si le portail est ouvert et celui des éclairages extérieurs en fonction de la configuration) ; mettant Jeedom en carafe.

La solution a été de modifier le code python de la raspberry qui exécute jeedouino et son démon. J’ai donc modifier dans le répertoire de la pi :

/var/www/html/JeedouinoExt$ sudo nano jeedouinoPiGpio.py

Dans la fonction qui gère le toggle_inputs :

Et voilà avant/après :

On voit bien que la charge explose avant…

1 « J'aime »

Salut @benj29, je tenais deja à te remercié de nous faire profiter de tes connaissance sur jeedom.

Je suis entrain de suivre ton tuto sur le centre de notification et je suis un peu perdu. Pourrais tu m’eclairer un peu?? tout d’abord le scénario que tu mets en capture d’ecran , ce n’est qu’un seul scenario ou il y en à plusieurs??
Merci pour ta réponse