Intégration pour le pilotage du système d'arrosage automatique Netro

En fait le condition qui impose que le contrôleur soit activé n’est pas pertinente dans ton cas. Tu peux donc la faire sauter ce qui t’évite de l’activer avant la mise à jour. Il prendra les éléments en compte quand il aura décidé de se réveiller.

Les lignes à faire sauter dans l’automatisation :

condition:
  - condition: device
    type: is_on
    device_id: 97b0f5516a5c5a20fca2ebacb3ab0e62
    entity_id: switch.pontaillac_activer_desactiver
    domain: switch

A ma connaissance quand tu es en offline c’est qu’il ne réussit pas à se connecter en wifi.

Je vais désactiver la condition.

J’ai refait le test, ce matin, mon contrôleur était en « online ». J’ai activer le contrôleur via l’entité « Activer/désactiver » et mon contrôleur est passé en mode « offline » et reste dans cette état jusqu’à sa réactivation manuelle.

J’ai l’impression que cette entité ne fonctionne pas correctement.

Pour lever le doute on va faire simple :

  • mets l’intégration en debug (dans Services & Intégration)
  • désactive ton contrôleur avec l’entité enable/disable
  • réactive avec le même switch
  • arrête le debug
  • download le debug et post le

Merci

Je suis au boulot. Dès que je rentre, je test. Mon contrôleur est toujours en mode offline donc je ne peut rien faire dessus depuis le boulot. Je vais devoir le réinitialiser une fois rentré.

Petite idée dans le même genre que Météo France : J’ai trois capteur Wisperer que je ne peux pas rajouter à mon contrôleur (1 seul peut être rajouter). Donc l’idée serait de faire un script moyennant les % d’humidités et de les injecter dans le contrôleur.

Quand penses tu?

Je ne comprends pas tu ne peux pas activer/désactiver ton contrôleur à distance !? Je veux dire avec l’app Netro.
Sinon oui c’est une bonne idée de moyenner les humidités et de faire un set_moisture (service fourni aussi par l’intégration). Même principe une automation/un script.

Je n’ai pas l’impression (ou je n’ai pas trouvé l’option). En général mon contrôleur ( c’est le Pixie) reste allumé en mode veille et se synchronise toutes les 1 heures (je peux programmer les synchro jusqu’à un maximum de toutes les 4 heures).

Si tu sais ou est la fonction je suis preneur.

Pour l’automatisation, je pense que c’est bon mais c’est le script, je ne connais pas bien le YAML ou le Python. En général, je me laisse guider par HA et je recommence jusqu’à temps que cela fonctionne comme je veux. :roll_eyes:

OK. J’ai bien vu que tu avais un Pixie. Je n’en ai pas. Je comprends ce fonctionnement de réveil toutes les heures mais du coup je me demande ce qu’il se passe quand tu lui demandes de se mettre en mode veille, est-ce qu’il réagit tout de suite ou est-ce au prochain réveil qu’il regarde si il a été désactivé entre temps ? Tu vois ce que je veux dire ? J’aimerais bien savoir si tu peux faire l’expérience…

Pour l’automatisation, je pense que c’est bon mais c’est le script, je ne connais pas bien le YAML ou le Python. En général, je me laisse guider par HA et je recommence jusqu’à temps que cela fonctionne comme je veux. :roll_eyes:

En fait tu peux partir du script que j’ai fait, tu fais l’appel au service Set Moisture avec la moyenne des entités correspondant à l’humdité des capteurs. Ca devrait pas être sorcier. Commence un truc et je te filerai un coup de main dès que tu bloques :wink: A ta place je commencerai par me faire une entité qui représente un capteur virtuel qui ferait la synthèse des trois capteurs physiques. Après il suffit de récupérer son degré d’humidité pour le mettre dans le paramètre de set moisture.

  1. Tu créé un fichier template.yaml dans lequel tu mets :
- sensor:
    - name: Sol Humidité
      unit_of_measurement: "%"
      state_class: measurement
      device_class: humidity
      state: >
          {{ (states('sensor.premier_capteur_humidite') + states('sensor.dexuxieme_capteur_humidite') + states('sensor.troisieme_capteur_humidite')) / 3  }}
  1. tu modifies ton fichier de configuration.yaml en mettant n’importe ou :
    template: !include template.yaml

Et ça y est tu l’as ton capteur virtuel d’humidité de ton sol !!

Dès que tu as écrit ces quelques lignes, tu reboote HA et tu vas voir si ta nouvelle entité est bien là :slight_smile:

Y’a plus qu’à :wink:

En fait il y a beaucoup plus simple et là tu vas aimer parce qu’il n’y a rien à programmer (je veux dire pour faire le capteur virtuel)

J’ai fait quelques tests comme demandé.

Le transfère des données ce fait même en mode veille mais cela vient déstabiliser le calcule du nombre de jours avant l’arrosage.

A l’inverse lors de l’activation du contrôleur les données sont transmises et j’ai un retour du nouveau calcule des prochains jours d’arrosage.

j’ai tenter d’injecter la moyenne d’humidité du sol et j’ai un problème. L’interface de l’app Netro ne donne pas la bonne info. Comme tu peux le voir sur les captures, elle annonce du 79% alors que j’ai essayé injecter via le service de HA 89%. Quand je regarde l’entité dans HA, j’ai bien la valeur de 89%. Je ne sais pas si cela vient de l’app ou du contrôleur.
J’ai vraiment du mal avec la syntaxe pour faire les scripts hors interface utilisateur. :pensive:
Je viens de faire cela comme script, j’ai des doutes sur son bon fonctionnement.

alias: Netro Synchro Hydrometrie
mode: single
icon: mdi:weather-rainy
variables:
  humidite_entity: sensor.capteur_humidite_moyenne_jardin
sequence:
  - alias: report hydrometrie
    service: netro_watering.set_moisture
    data:
      config_entry_id: "{{ config_entry_controller }}"
      moisture: "{{ humidite_entity }}"

Ton script ne marchera pas : moisture: attend la valeur de l’entité pas l’entité elle meme. Il faut écrire :

states(entité) pour récupérer cette valeur.

Suite à ton conseil, je viens de modifier de cette façon

alias: Netro Synchro Hydrométrie
mode: single
icon: mdi:water-outline
sequence:
  - alias: report hydrometrie
    service: netro_watering.set_moisture
    data:
      config_entry_id: "{{ config_entry_controller }}"
      moisture: "{{states.sensor.capteur_humidite_moyenne_jardin.state}}"

Et alors ça tourne ? T’as regardé les logs ?

Non, cela ne marche pas.

Logger: homeassistant.components.automation.synchro_hydrometre
Source: components/automation/__init__.py:268 
Integration: Automatisation (documentation, issues) 
First occurred: 23:33:51 (1 occurrences) 
Last logged: 23:33:51

Error while executing automation automation.synchro_hydrometre: extra keys not allowed @ data['config_entry_id']

Logger: homeassistant.components.automation.synchro_hydrometre
Source: helpers/script.py:410 
Integration: Automatisation (documentation, issues) 
First occurred: 23:33:51 (1 occurrences) 
Last logged: 23:33:51

Synchro Hydrometre: Error executing script. Invalid data for call_service at pos 1: extra keys not allowed @ data['config_entry_id']

Logger: homeassistant.components.script.netro_synchro_hydrometrie
Source: helpers/script.py:410 
Integration: Script (documentation, issues) 
First occurred: 23:33:51 (1 occurrences) 
Last logged: 23:33:51

Netro Synchro Hydrométrie: Error executing script. Invalid data for call_service at pos 1: extra keys not allowed @ data['config_entry_id']

[/quote]

Il faut que tu testes à la main moisture avec toujours le principe de tout préparer avec l’UI et de basculer en YAML pour voir quel paramètre passer notamment pour pointer sur la zone de ton Pixie.

Salut,

Justement, je n’arrive pas a savoir quel est la zone de mon Pixie car j’ai beau changer le % d’hydrométrie, mais rien ne change dans l’app Netro

Est-ce que tu as vu mon post juste au dessus ? Il répond à la question.
Ca ne devrait pas être très compliqué, dans ton cas tu as un contrôleur et une zone.

Je te confirme, j’ai bien les deux, le contrôleur et la zone. Quand je met le contrôleur, j’ai l’erreur « invalid… » du post précédent, quand je met la zone, pas d’erreur dans HA, la mise à jour s’effectue bien dans l’entité HA mais pas dans l’app Netro.

Petit question, que doit-on modifier dans le script météo France pour rajouter les modification de la force du vent et hydrométrie extérieur donnée par Météo France?

Petit question, que doit-on modifier dans le script météo France pour rajouter les modification de la force du vent et hydrométrie extérieur donnée par Météo France?

Réponse dans le script modifié dans la discussion github. J’ai pris tout ce qui était fourni par les entités Météo France (en particulier le weather fourni qui contient tout en fait). Pour moi le taf est fait maintenant.

Je te confirme, j’ai bien les deux, le contrôleur et la zone. Quand je met le contrôleur, j’ai l’erreur « invalid… » du post précédent, quand je met la zone, pas d’erreur dans HA, la mise à jour s’effectue bien dans l’entité HA mais pas dans l’app Netro

Comment tu le vérifies ? Si tu es passé par l’utilisation de set moisture depuis les outils développeurs il a du te proposer que la zone de toute façon !?

Ayant une station météo à la maison, je souhaite compléter les données météo France avec celle de ma station. En rentrant ce soir je vais essayer de rajouter certaines données à ton script. Si tu le souhaite, je te ferais un retour.

Les tests que j’ai effectué pour l’instant c’est en passant par par l’outil développeur et le service set moisture. Pour la vérification, je vais dans les informations de l’appareil dans HA et je regarde la valeur du capteur Humidité et sa valeur a bien été changer. En suite je vais voir dans l’app de Netro et j’ai constater une différence de % d’humidité environ 10%. Je ne sais pas si c’est un bug ou si c’est normal car le contrôleur recalcule l’hydrométrie avec les nouvelles données.

Ayant une station météo à la maison, je souhaite compléter les données météo France avec celle de ma station. En rentrant ce soir je vais essayer de rajouter certaines données à ton script. Si tu le souhaite, je te ferais un retour.

Le truc c’est qu’on a déjà rempli tous les champs sauf « Dew Temp » (température de rosée)…Si tu as ce type de température avec ta station météo why not mais je ne suis pas sur que ça va changer grand chose :slight_smile: