HA : un statut de borne illisible ne fabrique plus de faux branchement (vehicle_connected garde son etat)

This commit is contained in:
Tallagrand Thierry
2026-10-16 01:02:33 +02:00
parent c47313a887
commit bfaa070fce
2 changed files with 256 additions and 0 deletions

View File

@@ -2451,5 +2451,11 @@ batterie a 32 A et JEEP (branchee 13:01, 52 %) qui ne demarre pas. SOC 47 % a 12
- ⚠️ Rejeu du 14/10 20:40 : requis prudent **82,2 %** pour SOC 87 -> budget **1,44 kWh** seulement ; ma premiere analyse (« ~9 kWh, la batterie etait la bonne source ») utilisait le requis du matin (56 %) : fausse. Le gain reel du soir aurait ete ~1,4 kWh + les 2,8 kWh de batterie (corriges par A). - ⚠️ Rejeu du 14/10 20:40 : requis prudent **82,2 %** pour SOC 87 -> budget **1,44 kWh** seulement ; ma premiere analyse (« ~9 kWh, la batterie etait la bonne source ») utilisait le requis du matin (56 %) : fausse. Le gain reel du soir aurait ete ~1,4 kWh + les 2,8 kWh de batterie (corriges par A).
- ⚠️ Les gardes de courant par bande de SOC restent en place sur le chemin batterie : debit possiblement bride. - ⚠️ Les gardes de courant par bande de SOC restent en place sur le chemin batterie : debit possiblement bride.
### 16/10 01:00 — Faux branchements d'une seconde : supprimes a la source
- Signale par SPARK (15/10 01:30:29 -> question du concierge a 01:50). A 01:30:29.9, TOUS les capteurs MQTT de la borne passent a `unknown` ~0,2 s (le GX perd la borne, origine non verifiee cote GX) ; `binary_sensor.victron_evcs_vehicle_connected` faisait `status_raw | int(-1) != 0` -> statut illisible = « branche ». 7 faux allers-retours du 08 au 15/10 ; le controleur a ouvert une session de nuit 30 s le 15/10 (budget fige puis efface, borne commandee 8 s sans voiture) ; une etiquette VW (11/10 23:29, sessions_vues 0) accrochee a l'un d'eux, sans effet sur les totaux.
- Correctif (accord du proprietaire, 16/10 01:01) : statut illisible -> etat precedent (`this.state`). Fichier `packages/SAVE/victron_evcs.yaml` (⚠️ CHARGE par HA : `!include_dir_named` lit les sous-dossiers ; copie dans le depot `packages/SAVE/`), sauvegarde `.bak-20261016-statut-illisible`, check_config valide, gabarits recharges, capteur toujours `on` (VW branchee). Effet du rechargement : `last_changed` du capteur remis a 01:01:55 (aucun evenement, aucune session fraiche constatee).
- Cote SPARK : filtre concierge « branchement termine en < 2 min = pas de question » (garde en second rideau).
- Branchement VW du 15/10 14:09 etiquete par le proprietaire (etiquette `proprietaire` + session 16:23 0,64 kWh confirmee) ; la JEEP roulait pendant ce temps (Uconnect).
--- ---
*Document mis a jour le : 14/10/2026 (~00:10) — disjoncteur EDF 100A (identifiants repris), revue (EDF absent, voiture payee par la batterie, interventions, kWh sur la puissance), piles (hysteresis + acquittement), frontal web .17 en cours ; 13/10/2026 (~06:30) — nuit du 12-13/10 : disjoncteur EDF qui n'executait pas la fermeture (alerte edf_ne_ferme_pas, envoyee a toute heure), charge HC manuelle reparee et utilisee a 40 % ; 13/10 : certificats HTTPS du .50 renouveles (via le .17) + alerte d'expiration ; 12/10 : VW payee par la batterie (temps mini + tolerance nuage bornes par le bilan), niveaux estimes par l'autonomie ; 10/10/2026 (~16:00) — conseiller relecteur de la journee (revue calculee + pistes) ; nuit : voiture qui profite d'EDF ferme pour la batterie, nuit qui prepare le soir les jours annonces faibles ; 08/10/2026 (~00:15) — jour faible : charge maximale en HC de midi (bilan 100 %, ACM plafond + solaire) ; 07/10/2026 (~22:45) — reprise de 16 h verifiee, EDF en HP a 18:03, bilan : reprise du soir et prevision recalee sur la matinee ; bilan HC de midi, reprise du soir apres coupure en pleine chauffe, mesure ECS sur 10 min ; recharge reseau HC : courant calcule (12 kVA) et consigne non tenue ; HC de midi : AUTO ne chauffe pas (BOOST), alerte v2, Jeep (contact, relecture, zone), recharge batterie bridee a 30 A par l'ACM ; jour faible = EDF les deux fenetres HC pour le chauffe-eau, alerte BOOST, Victron Mobile refait ; 1re decision jour faible en reel, mesure ECS reparee, douches 06:00/20:00, Grafana chauffe-eau, tableaux ECS ; chauffe-eau en HC de nuit les jours faibles (decision du bilan, workflow ECS sous controle du depot, VRM, V2.3 desactive) ; garde batterie reseau : voiture bridee a 6 A au lieu d'un arret ; garde-fou concierge 2 h ; allers-retours brefs de la borne retrouves dans l'historique HA (echange VW -> JEEP de 20 s), production 14,5 kWh contre 22 prevus, defaut garde batterie en mode reseau a trancher ; voiture a midi : la batterie n'est plus comptee comme du solaire (EDF automatique les jours de depart si le surplus ne couvre pas) ; nuit 05->06 : JEEP chargee sur EDF en complete (6,32 kWh), budget 0 du a la prevision, Windy/ECMWF contre VRM, a comparer ce soir ; concierge aligne sur la preuve fin de trajet ; a verifier : nuit 05->06 et mardi faible, comparaison VRM/Forecast.Solar ; JEEP identifiee aussi par sa fin de trajet, prevision de la nuit 05->06 ; identification JEEP reussie en reel, correction humaine qui prime (refus supprime), session du 04/10 coupee ; EVCS Master en quatre onglets ; Jeep lue par Uconnect et identifiee seule, capacite JEEP 10 kWh, concierge variante (a) ; releve par photo (SPARK), hass-uconnect en attente ; ecart semaine/week-end mesure (pas de profil week-end la nuit) ; nuit du budget : budget borne au plancher prudent, sans EDF = voiture bloquee meme EDF ferme (batterie seule) ; Energie : sauts corriges ; tableau Energie complete (Sud/Ouest, batterie par integration, borne ; aucun redemarrage HA) ; kilometrage des vehicules (km/kWh, capacite, releves de reference, agent cable 15/15) ; a verifier le 04/10 au matin : nuit du budget JEEP ; concierge : vehicule non confirme demande, heure de saisie ; Grafana vehicules en tableau ; Grafana vehicules : ZERO et Invite ajoutes, session 16:46 reetiquetee ZERO ; prevision SOC 10 h ~35 % ; concierge fiable : niveau note par le script, une ligne, dedoublonnage, simulation par drapeau ; agent : message incompris = question, bourse sur demande explicite (banc final 6/6) ; a verifier : nuit du samedi 03 au dimanche 04/10 (budget < besoin JEEP), cron orange-cloture lundi 05/10 apres 17:40, comparaison VRM / Forecast.Solar lundi 05/10* *Document mis a jour le : 14/10/2026 (~00:10) — disjoncteur EDF 100A (identifiants repris), revue (EDF absent, voiture payee par la batterie, interventions, kWh sur la puissance), piles (hysteresis + acquittement), frontal web .17 en cours ; 13/10/2026 (~06:30) — nuit du 12-13/10 : disjoncteur EDF qui n'executait pas la fermeture (alerte edf_ne_ferme_pas, envoyee a toute heure), charge HC manuelle reparee et utilisee a 40 % ; 13/10 : certificats HTTPS du .50 renouveles (via le .17) + alerte d'expiration ; 12/10 : VW payee par la batterie (temps mini + tolerance nuage bornes par le bilan), niveaux estimes par l'autonomie ; 10/10/2026 (~16:00) — conseiller relecteur de la journee (revue calculee + pistes) ; nuit : voiture qui profite d'EDF ferme pour la batterie, nuit qui prepare le soir les jours annonces faibles ; 08/10/2026 (~00:15) — jour faible : charge maximale en HC de midi (bilan 100 %, ACM plafond + solaire) ; 07/10/2026 (~22:45) — reprise de 16 h verifiee, EDF en HP a 18:03, bilan : reprise du soir et prevision recalee sur la matinee ; bilan HC de midi, reprise du soir apres coupure en pleine chauffe, mesure ECS sur 10 min ; recharge reseau HC : courant calcule (12 kVA) et consigne non tenue ; HC de midi : AUTO ne chauffe pas (BOOST), alerte v2, Jeep (contact, relecture, zone), recharge batterie bridee a 30 A par l'ACM ; jour faible = EDF les deux fenetres HC pour le chauffe-eau, alerte BOOST, Victron Mobile refait ; 1re decision jour faible en reel, mesure ECS reparee, douches 06:00/20:00, Grafana chauffe-eau, tableaux ECS ; chauffe-eau en HC de nuit les jours faibles (decision du bilan, workflow ECS sous controle du depot, VRM, V2.3 desactive) ; garde batterie reseau : voiture bridee a 6 A au lieu d'un arret ; garde-fou concierge 2 h ; allers-retours brefs de la borne retrouves dans l'historique HA (echange VW -> JEEP de 20 s), production 14,5 kWh contre 22 prevus, defaut garde batterie en mode reseau a trancher ; voiture a midi : la batterie n'est plus comptee comme du solaire (EDF automatique les jours de depart si le surplus ne couvre pas) ; nuit 05->06 : JEEP chargee sur EDF en complete (6,32 kWh), budget 0 du a la prevision, Windy/ECMWF contre VRM, a comparer ce soir ; concierge aligne sur la preuve fin de trajet ; a verifier : nuit 05->06 et mardi faible, comparaison VRM/Forecast.Solar ; JEEP identifiee aussi par sa fin de trajet, prevision de la nuit 05->06 ; identification JEEP reussie en reel, correction humaine qui prime (refus supprime), session du 04/10 coupee ; EVCS Master en quatre onglets ; Jeep lue par Uconnect et identifiee seule, capacite JEEP 10 kWh, concierge variante (a) ; releve par photo (SPARK), hass-uconnect en attente ; ecart semaine/week-end mesure (pas de profil week-end la nuit) ; nuit du budget : budget borne au plancher prudent, sans EDF = voiture bloquee meme EDF ferme (batterie seule) ; Energie : sauts corriges ; tableau Energie complete (Sud/Ouest, batterie par integration, borne ; aucun redemarrage HA) ; kilometrage des vehicules (km/kWh, capacite, releves de reference, agent cable 15/15) ; a verifier le 04/10 au matin : nuit du budget JEEP ; concierge : vehicule non confirme demande, heure de saisie ; Grafana vehicules en tableau ; Grafana vehicules : ZERO et Invite ajoutes, session 16:46 reetiquetee ZERO ; prevision SOC 10 h ~35 % ; concierge fiable : niveau note par le script, une ligne, dedoublonnage, simulation par drapeau ; agent : message incompris = question, bourse sur demande explicite (banc final 6/6) ; a verifier : nuit du samedi 03 au dimanche 04/10 (budget < besoin JEEP), cron orange-cloture lundi 05/10 apres 17:40, comparaison VRM / Forecast.Solar lundi 05/10*

250
packages/SAVE/victron_evcs.yaml Executable file
View File

@@ -0,0 +1,250 @@
mqtt:
sensor:
- name: "Victron EVCS Status Raw"
unique_id: victron_evcs_status_raw
state_topic: "N/c0619ab34ac5/evcharger/40/Status"
value_template: "{{ value_json.value }}"
icon: mdi:ev-station
- name: "Victron EVCS Mode Raw"
unique_id: victron_evcs_mode_raw
state_topic: "N/c0619ab34ac5/evcharger/40/Mode"
value_template: "{{ value_json.value }}"
icon: mdi:tune
- name: "Victron EVCS Current"
unique_id: victron_evcs_current
state_topic: "N/c0619ab34ac5/evcharger/40/Current"
value_template: "{{ value_json.value }}"
unit_of_measurement: "A"
state_class: measurement
icon: mdi:current-ac
- name: "Victron EVCS Set Current"
unique_id: victron_evcs_set_current_sensor
state_topic: "N/c0619ab34ac5/evcharger/40/SetCurrent"
value_template: "{{ value_json.value }}"
unit_of_measurement: "A"
state_class: measurement
icon: mdi:current-ac
- name: "Victron EVCS Max Current"
unique_id: victron_evcs_max_current
state_topic: "N/c0619ab34ac5/evcharger/40/MaxCurrent"
value_template: "{{ value_json.value }}"
unit_of_measurement: "A"
state_class: measurement
icon: mdi:current-ac
- name: "Victron EVCS Min Current"
unique_id: victron_evcs_min_current
state_topic: "N/c0619ab34ac5/evcharger/40/MinCurrent"
value_template: "{{ value_json.value }}"
unit_of_measurement: "A"
state_class: measurement
icon: mdi:current-ac
- name: "Victron EVCS Charging Time Raw"
unique_id: victron_evcs_charging_time_raw
state_topic: "N/c0619ab34ac5/evcharger/40/ChargingTime"
value_template: "{{ value_json.value }}"
unit_of_measurement: "s"
state_class: measurement
icon: mdi:timer-outline
- name: "Victron EVCS Connected Raw"
unique_id: victron_evcs_connected_raw
state_topic: "N/c0619ab34ac5/evcharger/40/Connected"
value_template: "{{ value_json.value }}"
icon: mdi:connection
- name: "Victron EVCS Product Name"
unique_id: victron_evcs_product_name
state_topic: "N/c0619ab34ac5/evcharger/40/ProductName"
value_template: "{{ value_json.value }}"
icon: mdi:ev-station
- name: "Victron EVCS Custom Name"
unique_id: victron_evcs_custom_name
state_topic: "N/c0619ab34ac5/evcharger/40/CustomName"
value_template: "{{ value_json.value }}"
icon: mdi:rename-box
- name: "Victron EVCS Serial"
unique_id: victron_evcs_serial
state_topic: "N/c0619ab34ac5/evcharger/40/Serial"
value_template: "{{ value_json.value }}"
icon: mdi:identifier
- name: "Victron EVCS Firmware Version"
unique_id: victron_evcs_firmware_version
state_topic: "N/c0619ab34ac5/evcharger/40/FirmwareVersion"
value_template: "{{ value_json.value }}"
icon: mdi:chip
- name: "Victron EVCS Device Instance"
unique_id: victron_evcs_device_instance
state_topic: "N/c0619ab34ac5/evcharger/40/DeviceInstance"
value_template: "{{ value_json.value }}"
icon: mdi:identifier
- name: "Victron EVCS AC Power"
unique_id: victron_evcs_ac_power
state_topic: "N/c0619ab34ac5/evcharger/40/Ac/Power"
value_template: "{{ value_json.value }}"
unit_of_measurement: "W"
device_class: power
state_class: measurement
icon: mdi:flash
- name: "Victron EVCS L1 Power"
unique_id: victron_evcs_l1_power
state_topic: "N/c0619ab34ac5/evcharger/40/Ac/L1/Power"
value_template: "{{ value_json.value }}"
unit_of_measurement: "W"
device_class: power
state_class: measurement
icon: mdi:flash
- name: "Victron EVCS L1 Energy Forward"
unique_id: victron_evcs_l1_energy_forward
state_topic: "N/c0619ab34ac5/evcharger/40/Ac/L1/Energy/Forward"
value_template: "{{ value_json.value }}"
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
icon: mdi:lightning-bolt
binary_sensor:
- name: "Victron EVCS Device Connected"
unique_id: victron_evcs_device_connected
state_topic: "N/c0619ab34ac5/evcharger/40/Connected"
value_template: "{{ value_json.value | int }}"
payload_on: "1"
payload_off: "0"
device_class: connectivity
icon: mdi:lan-connect
switch:
- name: "Victron EVCS Charging"
unique_id: victron_evcs_charging
state_topic: "N/c0619ab34ac5/evcharger/40/StartStop"
value_template: "{{ value_json.value | int }}"
state_on: "1"
state_off: "0"
command_topic: "W/c0619ab34ac5/evcharger/40/StartStop"
payload_on: '{"value":1}'
payload_off: '{"value":0}'
icon: mdi:power
- name: "Victron EVCS Auto Start"
unique_id: victron_evcs_auto_start
state_topic: "N/c0619ab34ac5/evcharger/40/AutoStart"
value_template: "{{ value_json.value | int }}"
state_on: "1"
state_off: "0"
command_topic: "W/c0619ab34ac5/evcharger/40/AutoStart"
payload_on: '{"value":1}'
payload_off: '{"value":0}'
icon: mdi:auto-fix
number:
- name: "Victron EVCS Set Current Command"
unique_id: victron_evcs_set_current_command
state_topic: "N/c0619ab34ac5/evcharger/40/SetCurrent"
value_template: "{{ value_json.value }}"
command_topic: "W/c0619ab34ac5/evcharger/40/SetCurrent"
command_template: '{"value": {{ value | int }}}'
min: 6
max: 32
step: 1
unit_of_measurement: "A"
mode: box
icon: mdi:current-ac
template:
- sensor:
- name: "Victron EVCS Status"
unique_id: victron_evcs_status
state: >
{% set v = states('sensor.victron_evcs_status_raw') | int(-1) %}
{% if v == 0 %}
EV déconnecté
{% else %}
Inconnu ({{ v }})
{% endif %}
icon: mdi:ev-station
- name: "Victron EVCS Mode"
unique_id: victron_evcs_mode_text
state: >
{% set v = states('sensor.victron_evcs_mode_raw') | int(-1) %}
{% if v == 0 %}
Manuel
{% elif v == 1 %}
Auto
{% elif v == 2 %}
Planifié
{% else %}
Inconnu ({{ v }})
{% endif %}
icon: mdi:tune
- name: "Victron EVCS Charging Time"
unique_id: victron_evcs_charging_time
state: >
{% set s = states('sensor.victron_evcs_charging_time_raw') | int(0) %}
{% set h = s // 3600 %}
{% set m = (s % 3600) // 60 %}
{% set sec = s % 60 %}
{% if h > 0 %}
{{ h }}h {{ m }}m
{% elif m > 0 %}
{{ m }}m {{ sec }}s
{% else %}
{{ sec }}s
{% endif %}
icon: mdi:timer-outline
- binary_sensor:
- name: "Victron EVCS Vehicle Connected"
unique_id: victron_evcs_vehicle_connected
# 16/10/2026 : un statut ILLISIBLE (le GX perd la borne ~0,2 s) garde
# l'etat precedent. Avant, `int(-1)` le transformait en -1, donc
# « branche » : 7 faux branchements d'une seconde du 08 au 15/10
# (questions du concierge, session de nuit ouverte 30 s le 15/10 01:30).
state: >
{% set raw = states('sensor.victron_evcs_status_raw') %}
{% if raw | is_number %}
{{ raw | int != 0 }}
{% else %}
{{ this.state == 'on' }}
{% endif %}
device_class: plug
icon: mdi:car-electric
script:
victron_evcs_mode_manuel:
alias: Victron EVCS Mode Manuel
sequence:
- service: mqtt.publish
data:
topic: "W/c0619ab34ac5/evcharger/40/Mode"
payload: '{"value":0}'
victron_evcs_mode_auto:
alias: Victron EVCS Mode Auto
sequence:
- service: mqtt.publish
data:
topic: "W/c0619ab34ac5/evcharger/40/Mode"
payload: '{"value":1}'
victron_evcs_mode_planifie:
alias: Victron EVCS Mode Planifié
sequence:
- service: mqtt.publish
data:
topic: "W/c0619ab34ac5/evcharger/40/Mode"
payload: '{"value":2}'