From b52e900e17f56544c72793de387bfe556facc75d Mon Sep 17 00:00:00 2001 From: Patrick Schurig Date: Thu, 13 Aug 2026 20:14:02 +0200 Subject: [PATCH] =?UTF-8?q?docs(spec):=20=C2=A77=20=E2=80=94=20la=20premi?= =?UTF-8?q?=C3=A8re=20t=C3=A2che=20est=20un=20appairage,=20pas=20du=20code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le smartmeter Modbus ECS est câblé et vérifié depuis le 2026-08-09 : d'où vient la mesure n'est plus une décision à prendre, et exposer un second Eastron simulé reviendrait à simuler ce qu'on possède en vrai. L'ordre est posé : appairer les compteurs réels sur .75 (root-meter maison, producteur, smartmeter ECS, PAC si prêt), puis retirer la vue SunSpec simulée du rôle de rootmeter — en établissant d'abord ce que devient la configuration de l'arbitre quand il change, tout en dépend — et vérifier que le compteur ECS n'est jamais désigné rootmeter. Au 2026-08-13, things.conf ne déclare que la vue Fronius/SunSpec : aucun de ces compteurs n'est appairé. ECS-500 différé : le calibrage améliore la précision, pas l'interprétabilité. Co-Authored-By: Claude Opus 5 (1M context) --- specs/spec_ecs.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/specs/spec_ecs.md b/specs/spec_ecs.md index a9334e5..42876a3 100644 --- a/specs/spec_ecs.md +++ b/specs/spec_ecs.md @@ -697,6 +697,27 @@ définir et tester. ## §7 — Mesure par charge +> **Première tâche : un APPAIRAGE, pas du code.** Le smartmeter Modbus ECS est +> **câblé et vérifié depuis le 2026-08-09**. Il ne s'agit donc pas de décider d'où +> vient la mesure, et surtout **pas d'exposer un second Eastron simulé** — ce +> serait simuler ce qu'on possède en vrai. Dans l'ordre : +> +> 1. **Appairer les compteurs réels dans nymea sur `.75`** — Eastron root-meter de +> la maison, Eastron producteur, smartmeter ECS, et le compteur PAC s'il est +> prêt. Au 2026-08-13, `things.conf` ne déclare que la vue Fronius/SunSpec : +> aucun de ces compteurs n'est appairé. +> 2. **Retirer la vue SunSpec simulée du rôle de compteur racine**, et établir +> **d'abord** ce que devient la configuration de l'arbitre quand le rootmeter +> change — tout en dépend (`internalRootMeter()`, `energyarbitrator.cpp:229`). +> 3. **Vérifier que le compteur ECS n'est JAMAIS désigné rootmeter** (voir le piège +> de mise en service en fin de section). +> +> Effet de bord favorable : des compteurs réels **bougent d'eux-mêmes**, ce qui +> dissout le piège du watchdog L2 décrit en `docs/RELEVE_ECS306.md` §3.0. +> +> Ensuite seulement ECS-501/502. **ECS-500 est différé** : le calibrage améliore la +> précision, pas l'interprétabilité, et la campagne a besoin de la seconde. + `telemetry()` (`relayrouter.cpp:104-114`) lit déjà `currentPower` sur les Things relais : c'est un demi-pas vers ECS-500.