Créer une automatisation pour envoyer une notification en fin de charge de ma voiture

Bonjour,

Je charge mon véhicule hybride en utilisant une prise Zigbee qui me fournit la puissance délivrée instantanée.
Je cherche à créer une automatisation pour m’envoyer une notification lorsque la charge est terminée.
Tout d’abord, j’ai créé un boolean « voiture » en charge pour m’indiquer quand la voiture est en charge.
Ci dessous le code qui devrait me créer cet indicateur:

alias: Switch voiture en charge
description: ""
trigger:
  - platform: numeric_state
    entity_id: sensor.tz3000_2putqrmw_ts011f_active_power_2
    for:
      hours: 0
      minutes: 5
      seconds: 0
    above: 2000
condition: null
action:
  - service: input_boolean.turn_on
    target:
      entity_id: input_boolean.voiture_en_charge
    data: {}
mode: single

Malheureusement, passe à « on » dès que je lance l’automatisation, quel que soit la valeur de sensor.tz3000_2putqrmw_ts011f_active_power_2.
Une idée de ce qui ne fonctionne pas?

Merci d’avance

Salut
Si on lit ton automatisation, ça doit normalement déclencher quand la puissance est supérieur à 2000 pendant 5 minutes…
Tu es certain que c’est le bon indicateur de fin de charge ? Personnellement j’aurai tendance à penser qu’en fin de charge la puissance mesurée par la prise est proche de 0, pas de 2000

Tu as les traces des automatisations aussi pour comprendre ce qu’il se passe réellement

Merci @Pulpy-Luke pour ton retour.
En effet, l’automatisme que j’ai partagé ici cherche juste à créer une variable « la voiture est en charge ».
J’ai créé un autre automatisme qui utilise cette valeur pour identifier la fin de charge.
J’ai donc 2 automatismes:

  • le premier créé la variable « la voiture est en charge »
alias: Switch voiture en charge
description: ""
trigger:
  - platform: numeric_state
    entity_id: sensor.tz3000_2putqrmw_ts011f_active_power_2
    for:
      hours: 0
      minutes: 5
      seconds: 0
    above: 2000
condition: null
action:
  - service: input_boolean.turn_on
    target:
      entity_id: input_boolean.voiture_en_charge
    data: {}
mode: single

  • le deuxième utilise le booléen créé ci-dessus pour identifier la fin de charge et envoyer une notification:
alias: Voiture chargée
description: ""
trigger:
  - platform: numeric_state
    entity_id: sensor.tz3000_2putqrmw_ts011f_active_power_2
    below: 100
condition:
  - condition: state
    entity_id: automation.switch_voiture_en_charge
    attribute: current
    state: "on"
action:
  - service: notify.mobile_app_sm_s906b
    data:
      message: Voiture chargée
  - service: input_boolean.turn_off
    target:
      entity_id: input_boolean.voiture_en_charge
    data: "off"
mode: single

J’ai fait ainsi pour « lisser » les potentielles variations en début ou fin de charge.
Ce que je ne comprends pas, c’est que la valeur de mon booléen pass à « on » dès que je lance l’automatisme.

ça donne quoi dans les traces de ta première automatisation ? Si la charge a commencé il y a plus de 5min, c’est pas forcement anormal

par ailleurs je suis pas un spécialiste des automatisations yaml, mais ça c’est pas une condition sur ton boolean !!
image

Voici la trace de la première automatisation:

{
  "trace": {
    "last_step": "action/0",
    "run_id": "c87f7c75a02cc2bb4b1ade2cf23c0b1f",
    "state": "stopped",
    "script_execution": "finished",
    "timestamp": {
      "start": "2023-04-12T18:38:58.560258+00:00",
      "finish": "2023-04-12T18:38:58.564837+00:00"
    },
    "domain": "automation",
    "item_id": "1681318134506",
    "trigger": "numeric state of sensor.tz3000_2putqrmw_ts011f_active_power_2",
    "trace": {
      "trigger/0": [
        {
          "path": "trigger/0",
          "timestamp": "2023-04-12T18:38:58.560374+00:00",
          "changed_variables": {
            "this": {
              "entity_id": "automation.switch_voiture_en_charge",
              "state": "on",
              "attributes": {
                "last_triggered": "2023-04-12T18:07:43.613138+00:00",
                "mode": "single",
                "current": 0,
                "id": "1681318134506",
                "friendly_name": "Switch voiture en charge"
              },
              "last_changed": "2023-04-12T18:07:47.946626+00:00",
              "last_updated": "2023-04-12T18:07:47.946626+00:00",
              "context": {
                "id": "01GXVADZ7AC1GAY9VW2CTBEYE5",
                "parent_id": null,
                "user_id": "f327fb460f76481ebceca116c3a613cb"
              }
            },
            "trigger": {
              "id": "0",
              "idx": "0",
              "alias": null,
              "platform": "numeric_state",
              "entity_id": "sensor.tz3000_2putqrmw_ts011f_active_power_2",
              "below": null,
              "above": 2000,
              "from_state": {
                "entity_id": "sensor.tz3000_2putqrmw_ts011f_active_power_2",
                "state": "0",
                "attributes": {
                  "state_class": "measurement",
                  "unit_of_measurement": "W",
                  "device_class": "power",
                  "friendly_name": "Prise garage Active power"
                },
                "last_changed": "2023-04-12T16:34:28.293422+00:00",
                "last_updated": "2023-04-12T16:34:28.293422+00:00",
                "context": {
                  "id": "01GXV532T5HWKXSG89PJJYPPDZ",
                  "parent_id": null,
                  "user_id": null
                }
              },
              "to_state": {
                "entity_id": "sensor.tz3000_2putqrmw_ts011f_active_power_2",
                "state": "2081",
                "attributes": {
                  "state_class": "measurement",
                  "unit_of_measurement": "W",
                  "device_class": "power",
                  "friendly_name": "Prise garage Active power"
                },
                "last_changed": "2023-04-12T18:33:58.557506+00:00",
                "last_updated": "2023-04-12T18:33:58.557506+00:00",
                "context": {
                  "id": "01GXVBXX0X0CTAMGP43G47W3H9",
                  "parent_id": null,
                  "user_id": null
                }
              },
              "for": {
                "__type": "<class 'datetime.timedelta'>",
                "total_seconds": 300
              },
              "description": "numeric state of sensor.tz3000_2putqrmw_ts011f_active_power_2"
            }
          }
        }
      ],
      "action/0": [
        {
          "path": "action/0",
          "timestamp": "2023-04-12T18:38:58.560730+00:00",
          "changed_variables": {
            "context": {
              "id": "01GXVC72008TKX4DVHJPJPN42R",
              "parent_id": "01GXVBXX0X0CTAMGP43G47W3H9",
              "user_id": null
            }
          },
          "result": {
            "params": {
              "domain": "input_boolean",
              "service": "turn_on",
              "service_data": {},
              "target": {
                "entity_id": [
                  "input_boolean.voiture_en_charge"
                ]
              }
            },
            "running_script": false,
            "limit": 10
          }
        }
      ]
    },
    "config": {
      "id": "1681318134506",
      "alias": "Switch voiture en charge",
      "description": "",
      "trigger": [
        {
          "platform": "numeric_state",
          "entity_id": "sensor.tz3000_2putqrmw_ts011f_active_power_2",
          "for": {
            "hours": 0,
            "minutes": 5,
            "seconds": 0
          },
          "above": 2000
        }
      ],
      "condition": null,
      "action": [
        {
          "service": "input_boolean.turn_on",
          "target": {
            "entity_id": "input_boolean.voiture_en_charge"
          }
        }
      ],
      "mode": "single"
    },
    "blueprint_inputs": null,
    "context": {
      "id": "01GXVC72008TKX4DVHJPJPN42R",
      "parent_id": "01GXVBXX0X0CTAMGP43G47W3H9",
      "user_id": null
    }
  },
  "logbookEntries": [
    {
      "name": "Switch voiture en charge",
      "message": "triggered by numeric state of sensor.tz3000_2putqrmw_ts011f_active_power_2",
      "source": "numeric state of sensor.tz3000_2putqrmw_ts011f_active_power_2",
      "entity_id": "automation.switch_voiture_en_charge",
      "context_id": "01GXVC72008TKX4DVHJPJPN42R",
      "when": 1681324738.560477,
      "domain": "automation"
    }
  ]
}
1 « J'aime »

Là pour le coup en version graphique, c’est plus facile à lire

Salut,
peux tu clarifier ce que tu appelles « lancer l’automatisation »?

Bonjour,

Merci de vous pencher sur mon problème.
Pour répondre @Pulpy-Luke , malheureusement, l’interface graphique me dit : « Error rendering graph. Please download trace and share with the developers. »
Pour @AlexHass, lorsque je parle de lancer l’automatisation, je fais référence à « activer l’automatisation ». Pour clarifier, j’ai créé un dashboard avec une carte représentant mon booléen. Si je mets le switch sur « off » dans l’interface, puis ensuite j’active l’automatisation, le booléen passe immédiatement à « on ».

@AlexHass a raison, il n’y a pas d’action spécifique à faire sur l’automatisation… C’est le booleen qui la déclenche (en principe)…
Il faut tout vérifier, c’est bien le même booleen, quel est son historique etc…
Et vire la condition sur l’automatisation … ça sert à rien (ou c’est pas le bon truc)

Salut Gilles,
Tu peut regarder mon poste sur les notifications que j’ai fait là :

Il te permettra d’avoir le temps de charge, la consommation pendant la charge et le cout pour recharger ta voiture …

1 « J'aime »

Ok je vois, tu voulais tenter de simuler le on/off.
Si je comprends la trace, il te dit que l’état de ta prise était à 2081 au moment où l’automatisation a changé la valeur du booléen.
Et je suppose que ta voiture était en charge déjà depuis plus de 5min…
Les durées que tu met dans « for » c’est basé sur l’état de l’entité, pas l’automatisation, donc en gros si ton entité était au dessus de 2000 déjà avant d’activer l’automatisation, c’est normal que ton booléen passe directement à on.

@AlexHass malheureusement, même si la voiture n’est pas en charge, et que la valeur de l’état de la prise est à 0, le booléen passe immédiatement à « on ». Je n’y comprend rien.
Du coup, je suis parti sur une adaptation des automatisations crées par @roumano qu’il a partagées sur le message précédent, et qui fait la même chose

Bonjour Gilles2.
Je suis désolé mais je ne vais pas répondre directement à ta question de dev qui te préoccupe (et qui m’interresse) , par contre je te donne un avis subjectif sur ton « architecture » de recharge (qui n’est pas le problème décrit dans ton post, j’en suis conscient, mais qui est lié tout de même).
Tu dis que tu utlises « une prise zigbee » pour mesurer ton intensité de charge. Or, à ma connaissance, les prises zigbee courantes de marché supportent une puissance de 3800w en pointe. Même si ton disjoncteur divisionnaire le supporte, la prise zigbee ne supportera pas cette puissance sans s’échauffer au bout de quelques heures…avec un début d’incendie potentiel ! Si tu veux faire de véritables mesures avec la tranquilité d’esprit, passe par du matériel qui supporte la puissance en continu (j’étudie le cas en ce moment).
Au fait: c’est quoi le type/modèle de prise que tu utilises ?
Cordialement

Bonjour BRAVOPAPA,
Merci pour ton message. J’utilise ce type de prise:
NOUS - Prise intelligente Zigbee 3.0 + Mesure de consommation (domadoo.fr)
Je les ai choisies justement car elles supportent 16A en crête et 10A en continu. La charge de mon véhicule ne dépasse jamais 9.5A d’après mes mesures.
Je suis bien évidemment preneur de recommandations lorsque tu auras trouvé une solution plus robuste.
Peut-être que ceci mériterait de créer un sujet différent sur le forum.
Merci

Gilles2:
Je te déconseille fortement (cela n’engage que moi) la prise « Noos » pour cette utilisation! J’ai aussi un VE que je charge sur une prise classique. Les constructeurs sont très optimistes sur leurs caractéristiques techniques ! De plus ce genre de prises (j’en ai une dizaine…) ne supportent pas mais pas du tout les pics de charge (branchements/débranchements; inductances: moteurs electriques, accumulateurs,etc…) D’autres matériels (compteurs de puissance sur rails Din ) fonctionnant en wifi (plus répandus) sous Tuya sont plus adaptés à ces problématiques. Je n’ai pas étudié le cas en zigbee…
A toi de voir …