Files
EVCS/MEMORY.md
Tallagrand Thierry 59f6ae7e9e memory
2026-06-13 00:31:28 +02:00

8.9 KiB

MEMORY.md — Session du 13/06/2026

Ce document résume l'analyse effectuée lors de la session précédente pour servir de mémoire pour la suite.


1. Workflows n8n pilotables par MCP (liés au projet EVCS/Victron)

Liste des workflows directement liés au projet EVCS/Victron dans /mnt/projects/EVCS/EVCS :

Workflow ID Statut Fonction
HA Snapshot EVCS Surplus Controller V2.6 ATswvGfG4KJUls0K Actif Workflow principal. Récupère snapshot HA → parse inputs → calcule fenêtres/batteries → prend décision de charge → exécute appels service HA.
HA Snapshot EVCS Surplus Controller V2.0 Y4U0g0f6CsZhfhCc Inactif Version précédente (avant upgrade V2.6).
HA Snapshot EVCS Surplus Controller V1.2 xi9DyQKqF6p01lNy Inactif Version legacy.
Victron - EVCS Surplus Controller V1 XDIbH81MPoI8MWR4 Inactif Première version du contrôleur.
Victron - PV Surplus Advisor V1 U0nRmdS9Pa0qzpWm Actif Conseiller de surplus PV.
Victron - Auto Charge Manager V1.2 cTeeHy4ePiVeELLh Actif Gestionnaire de charge automatique Victron.
Victron - Battery / Grid Hysteresis Fix V1 7iIlu7LLTW7TZA8o Actif Correctif d'hystérésis batterie/réseau.
Victron - Garage Thermal Surplus Manager V2.2 FtPVF7byhtu4o6Oh Actif Gestionnaire de surplus thermique garage.
SDB Climate & Surplus Manager V2.2 2NhrfxuGm4pTUNs9 Actif Gestionnaire climat/surplus SDB.
Water Heater Advisor V2.3 A11aOb50cGtpJmvn Actif Conseiller chauffe-eau.
Water Heater Advisor ECS 6 Nodes + Build + Execute yX2j8m04e3pxaoQq Actif Version 6 nœuds du conseiller ECS.
Victron - Flexible Load Advisor V1 YjiNCpEoVhPT8JMw Actif Conseiller de charge flexible.

Actions MCP disponibles : Activer/Désactiver, Mettre à jour, Exécuter, Supprimer, Consulter les exécutions.


2. Analyse de HANDOFF.md

Fichier lu : /mnt/projects/EVCS/EVCS/HANDOFF.md

Contexte Projet

  • Installation Victron ESS sans injection réseau, batterie 17,5 kWh.
  • Workflow actif : HA Snapshot EVCS Surplus Controller V2.6.
  • Code source modulaire dans /mnt/projects/EVCS/EVCS/decoupesurplus/.

Problème historique documenté (Outside-Window Solar Charging Block)

L'après-midi, même avec fort ensoleillement et SOC élevé (> 85%), l'EVCS restait bloqué en :

  • Profil : outside_window
  • Décision : stop_hard / blocked
  • Source : Bloqué

Root Cause identifiée dans HANDOFF.md

  1. Seuils PV trop élevés : pvStartMinW = 1800W, pvHoldMinW = 1200W. Sans injection, MPPT régule PV à la charge maison (~800W) → seuils jamais atteints.
  2. Cloud Debt bloquant : cloudDebtPrevKwh = 1.66 kWh > cloudDebtMaxKwh = 1.2 kWh → cloudDebtOkForPotential = false.
  3. Aucune probe en outside_window : Sondes uniquement pour morning_solar et midday_hc_or_solar. Trou de 14:24→17:00 sans mécanisme de test.

Corrections déjà déployées en V2.6

  • Bug EDF corrigé : Switch edf_general_ok_switch clignotait ON/OFF toutes les 30s. Fix=conditionner l'appel au sourceMode.
  • Feature afternoon_probe déployée : Nouvelle sonde pour l'après-midi.

Workflows MCP tests

  • TEST - Tous les appels HA (complet) (ID: 18dOsLJmqtSo3Nek) — Inactif
  • TEST - Tous les appels HA (ID: QtWF02XU5e6cHFTk) — Inactif
  • MCP - ha.get_state (ID: 76hHlVYIgt1lEHyR) — Inactif
  • MCP - ha.set_helper (ID: eeDmEICJ3ArjwpCt) — Inactif
  • MCP - ha.call_service (ID: tZSzbVG1dxBkYT4y) — Inactif
  • MCP - grid.set_state (ID: uGZAOJjKegRuRNyb) — Inactif
  • MCP - pv.get_forecast (ID: RVTMdsvR4i8wSc18) — Inactif
  • MCP - victron.set_charge_limits (ID: a92quWH4pokpIqdn) — Inactif

3. Description des captures d'écran analysées

Image 1 : Vue exécution nœud Build EVCS Surplus Controller V2.0 Actions (onglet Output)

  • Workflow : HA Snapshot EVCS Surplus Controller V2.6
  • Pipeline visible : Schedule Trigger → HA Snapshot → INPUT_PARSE → WINDOWS_SOURCEV2 → BATTERY_CLOUD_LOCKS → DECISION_ENGIN → HA_SERVICE_CALLS_OUTPUT → Build EVCS... → Execute HA Service
  • Nœud sélectionné : Build EVCS Surplus Controller V2.0 Actions — Success in 13ms, 27 items output.
  • Timestamp : 2026-06-13 00:05:30
  • État observé :
    • helper_state = vehicle_not_connected
    • helper_current_decision = stop_not_connected
    • helper_reason = Véhicule ou borne non connecté | ... | Stratégie=auto_solar_plus | Profil=outside_window | Source=blocked | Mode=battery_priority_mod
    • helper_operating_mode = outside_window
    • helper_source_mode = Bloqué
    • helper_target_current = 6 A

Image 2 : Vue détaillée Input/Output du même nœud

  • Section computed :
    • operating_mode : outside_window
    • profile : outside_window
    • source_mode : blocked
    • source_mode_label : Bloqué
    • user_strategy : auto_solar_plus
    • in_night_hc_window : false
    • in_morning_window : false
    • in_midday_window : false
    • in_evening_window : false
    • departure_priority_active : false
    • minutes_until_departure : 525
    • battery_priority_mode : true
    • physical_cap_current_a : 19
    • can_run_at_min_current : true
    • forecast_buffer_kwh : -15
    • projected_end_soc_after_charge : 0
    • cloud_debt_next_kwh : 0
    • cloud_debt_duration_minutes : 0
    • cloud_debt_active : false
    • cloud_tolerance_ok : true
    • probe_window_active : false
  • Section decision :
    • state : vehicle_not_connected
    • current_decision : stop_not_connected
    • desired_charging : false
    • desired_permission : false
    • desired_current_a : 6
    • charging_action : none
    • permission_action : none
    • current_action : none
    • block_reason : vehicle_not_connected
    • blocked_until : 2026-06-13 00:05:30
    • dynamic_ok : false
    • must_stop : false

4. Synthèse de la situation observée

Les captures montrent une exécution nocturne (00:05:30) :

  • Véhicule non connecté.
  • Système en outside_window (normal à minuit).
  • Source blocked / Bloqué.
  • Décision stop_not_connected.

Verdict : C'est un état attendu et normal pour cette heure sans véhicule branché.

Point d'attention issu de HANDOFF.md

Le problème documenté concernait le même état mais l'après-midi avec véhicule branché et soleil disponible. Ce cas problématique semble avoir été adressé par le déploiement de la feature afternoon_probe en V2.6. À surveiller.


5. Fichiers critiques du projet (à connaître)

Fichier Chemin Rôle
WINDOWS/WINDOW_SOURCEV2.js /mnt/projects/EVCS/EVCS/decoupesurplus/WINDOWS/WINDOW_SOURCEV2.js Détermine profile et sourceMode
BATTERY/BATTERY_CLOUD_LOCKS.js /mnt/projects/EVCS/EVCS/decoupesurplus/BATTERY/BATTERY_CLOUD_LOCKS.js Calcule cloudDebt, cloudToleranceOk
snapshot.js /mnt/projects/EVCS/EVCS/decoupesurplus/snapshot.js Récupération des helpers HA
EVCS_V2.5_PATCHED.json /mnt/projects/EVCS/EVCS/modified/EVCS_V2.5_PATCHED.json Export n8n de référence (rollback)
HANDOFF.md /mnt/projects/EVCS/EVCS/HANDOFF.md Rapport de transfert technique session précédente
MEMORY.md /mnt/projects/EVCS/EVCS/MEMORY.md Ce fichier (mémoire de session)

6. Paramètres clés Home Assistant (à vérifier si besoin)

Paramètre Entité typique Valeur défaut Notes
pv_start_min_w input_number.victron_pv_start_min_w 1800 W Seuil démarrage PV
pv_hold_min_w input_number.victron_pv_hold_min_w 1200 W Seuil maintien PV
cloud_debt_max_kwh input_number.victron_cloud_debt_max_kwh 1.2 kWh Dette nuage max
battery_neutral_band_a input_number.victron_battery_neutral_band_a 3 A Bande neutre batterie
allow_grid_hc_midday input_boolean.victron_allow_grid_hc_midday OFF ON actif
allow_grid_hc_night input_boolean.victron_allow_grid_hc_night OFF ON actif

7. Prochaines étapes possibles (à discuter avec l'utilisateur)

  1. Observer le comportement en afternoon avec la nouvelle V2.6 / afternoon_probe.
  2. Ajuster les seuils des helpers HA si nécessaire (pv_start_min_w, pv_hold_min_w, etc.).
  3. Modifier un workflow n8n via MCP (activer/désactiver/exécuter).
  4. Modifier le code source dans decoupesurplus/ si un ajustement de logique est nécessaire.
  5. Relire les exécutions récentes du workflow V2.6 via n8n-mcp_list_executions pour vérifier le comportement.

Document créé par l'IA le : 13/06/2026 Session précédente terminée : sauvegarde mémoire pour session suivante.