docs(prépa): la box est prête — plugin V2C posé, phaseCount corrigé
Le blocage §2.1 est fermé et vérifié sur machine : powersync-plugin-v2c
1.15.2+etm12 construit en arm64, posé par deploy.sh, ThingClass trydan chargée
avec phaseCount (Uint, min 1, max 3, défaut 1) en état ET en réglage.
Deux choses apprises en le faisant :
- Le .deb du canal powersync-testing ne convenait pas : il n'existe qu'en
amd64, et l'index arm64 du canal ne porte que abbb2x et eastron. D'où la
construction croisée.
- Le validateur de plugin refuse une classe evcharger dont phaseCount n'a pas
les bornes de l'interface. S'y conformer, c'est être lu par le moteur À
TRAVERS l'interface plutôt que par une convention propre au plugin.
Le défaut du réglage est 1 — celui du repli du moteur — pour qu'une
installation non renseignée se comporte comme avant. Conséquence : poser
phaseCount = 3 à l'appairage devient le seul geste dont l'oubli reste
silencieux. Il est en tête de la liste de contrôle, avec le moyen de le
vérifier (le minPowerW publié, pas la mémoire).
Le moteur n'a pas bougé au redémarrage : chauffe-eau 3 500 W, pac-terrain
3 000 W, degradedMode false.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017TVywtayEeoRJ2yWUW4iZj
This commit is contained in:
parent
c496316b4c
commit
9b96d84479
@ -3,22 +3,27 @@
|
||||
**Écrit la veille**, depuis le code et le banc, pour que rien de ceci ne se découvre avec la
|
||||
borne au mur. Le banc tourne `1.15.2+etm24`.
|
||||
|
||||
> **Deux blocages trouvés ce soir, et les deux sont silencieux** — ils ne produiraient aucune
|
||||
> erreur, seulement des chiffres faux. Ils sont au §2. Le reste est de la logistique.
|
||||
> **Deux blocages trouvés la veille, et les deux étaient silencieux** — ils ne produiraient
|
||||
> aucune erreur, seulement des chiffres faux.
|
||||
>
|
||||
> **✅ ÉTAT AU SOIR DU 27 : la box est PRÊTE.** Le plugin V2C `1.15.2+etm12` est construit en
|
||||
> arm64, posé, et la ThingClass `trydan` se charge avec `phaseCount` (§2.1 corrigé). Le blocage
|
||||
> §2.2 est un refus assumé, pas une tâche. Il ne reste que le câblage et l'appairage — §6.
|
||||
|
||||
---
|
||||
|
||||
## 1. Ce qui n'est pas encore sur la box
|
||||
|
||||
**Le plugin V2C n'est PAS installé.** Le banc porte `powersync-plugin-abbb2x` et
|
||||
`powersync-plugin-eastron`, rien d'autre. Le plugin `v2c` existe dans
|
||||
`etm-powersync-plugins-modbus/v2c/` mais vit sur la branche `feature/v2c-trydan`, non fusionnée
|
||||
(le repo est sur `fix/fronius-meter-sign-and-battery-presence`).
|
||||
**✅ FAIT le 27 au soir.** `powersync-plugin-v2c 1.15.2+etm12` est construit en arm64 et posé
|
||||
par `deploy.sh`. Vérifié sur la box : la ThingClass `trydan` est chargée, interfaces
|
||||
`evcharger, power, connectable`, appairage par `address`/`port` ou découverte.
|
||||
|
||||
**À faire avant de câbler** : construire `powersync-plugin-v2c` en arm64 dans
|
||||
`build-cross-arm64`, puis le poser par `deploy.sh`. Le paquet est déjà déclaré
|
||||
(`debian/powersync-plugin-v2c.install`). Sans lui, la borne n'apparaîtra pas dans nymea, quelle
|
||||
que soit son adresse IP.
|
||||
> **Le `.deb` du canal `powersync-testing` ne convenait PAS** : il n'existe qu'en **amd64**
|
||||
> (`powersync-plugin-v2c 1.15.2+etm1 amd64`), et l'index arm64 du canal ne porte que `abbb2x` et
|
||||
> `eastron`. Un paquet amd64 ne s'installe pas sur le Pi. D'où la construction croisée.
|
||||
>
|
||||
> Le travail v2c n'était pas sur une branche `feature/v2c-trydan` — il est déjà sur
|
||||
> `fix/fronius-meter-sign-and-battery-presence`, et `v2c` figure dans le `.pro`.
|
||||
|
||||
**Statut du plugin, à connaître** : son propre brief le déclare **« Partiel — PAS dans la matrice
|
||||
beta validée. Ne pas promettre tant que non testé sur borne réelle. »** Demain EST ce test.
|
||||
@ -51,11 +56,20 @@ allouerait un budget qu'elle ne consomme pas.
|
||||
câbler en monophasé ferait tester autre chose que l'installation réelle, et le défaut est
|
||||
précisément celui que 3g-2 vient de fermer : silencieux, la borne démarre au mauvais courant.
|
||||
|
||||
**Mise en œuvre, côté plugin V2C** : la borne ne pouvant pas le dire, le nombre de phases
|
||||
doit être **saisi à l'appairage** — un `paramType` ou un `settingsType` `phaseCount`
|
||||
(valeurs 1 ou 3, défaut 1), recopié dans un `stateType` `phaseCount`. C'est le geste standard
|
||||
nymea pour un appareil qui ne rapporte pas sa topologie, et c'est ce que fait déjà la voiture
|
||||
simulée (`phaseCount` en réglage, défaut 3).
|
||||
**✅ CORRIGÉ ET POSÉ** — `etm-powersync-plugins-modbus 1.15.2+etm12`, commit `371eff6`.
|
||||
|
||||
`phaseCount` est un **réglage** (`settingsType`, valeurs 1 ou 3, défaut 1), recopié dans un
|
||||
**état** que le moteur lit, et réappliqué sur `settingChanged` — une borne recâblée se corrige
|
||||
**sans recréer le Thing**. Vérifié sur la box : `phaseCount type=Uint min=1 max=3 défaut=1`.
|
||||
|
||||
> **Ce que le validateur de plugin a appris au passage** : l'interface nymea `evcharger` définit
|
||||
> `phaseCount` **avec ses bornes** (1 à 3), et refuse la classe qui l'omet. S'y conformer n'est
|
||||
> pas une formalité — c'est ce qui fait lire l'état par le moteur **à travers l'interface**,
|
||||
> plutôt que par une convention propre au plugin.
|
||||
|
||||
**Le défaut est 1, comme le repli du moteur** : une installation qui ne renseigne rien se
|
||||
comporte exactement comme avant le correctif. **Donc le réglage doit être posé à 3 à
|
||||
l'appairage** — c'est l'étape 5 du §6, et c'est le seul geste qui reste sur ce point.
|
||||
|
||||
> **Le repli « câbler en monophasé » est ÉCARTÉ** : il ferait tester une installation qui n'est
|
||||
> pas celle du client. Le correctif se fait avant le câblage.
|
||||
@ -140,15 +154,23 @@ lui-même** `batteryLevel`. Le pourcentage affiché demain sera une intégration
|
||||
|
||||
---
|
||||
|
||||
## 6. Liste de contrôle, dans l'ordre
|
||||
## 6. Liste de contrôle — ce qui reste
|
||||
|
||||
1. [ ] Construire `powersync-plugin-v2c` arm64 (branche `feature/v2c-trydan`) — **avant** le câblage.
|
||||
2. [ ] Décider de `phaseCount` (§2.1) : ajouter le réglage d'appairage, **ou** câbler en monophasé et le noter.
|
||||
3. [ ] Poser le plugin par `deploy.sh` sur `.75`.
|
||||
4. [ ] Câbler la borne, lui donner `192.168.1.127`.
|
||||
5. [ ] `ping` + `nc -z … 502` **depuis le banc**, avant d'ouvrir nymea.
|
||||
6. [ ] Appairer la Trydan, vérifier `connected: true` et un `currentPower` qui bouge.
|
||||
7. [ ] Créer la voiture `genericCar` avec les quatre réglages du §3.
|
||||
8. [ ] Associer voiture ↔ V2C, mode `ChargingModeEco`, et **poser les rangs** des deux bornes
|
||||
**Fait le 27 au soir** : ~~construire le plugin arm64~~ · ~~décider et implémenter
|
||||
`phaseCount`~~ · ~~poser le plugin~~. Le moteur tourne `1.15.2+etm24`, le plugin
|
||||
`1.15.2+etm12`, et rien n'a bougé côté arbitrage après le redémarrage (`chauffe-eau` 3 500 W,
|
||||
`pac-terrain` 3 000 W, `degradedMode: false`).
|
||||
|
||||
1. [ ] Câbler la borne, lui donner `192.168.1.127`.
|
||||
2. [ ] `ping` + `nc -z 192.168.1.127 502` **depuis le banc**, **avant** d'ouvrir nymea.
|
||||
C'est le geste qui distingue un problème réseau d'un problème logiciel — la Terra AC a
|
||||
coûté une session faute de l'avoir fait.
|
||||
3. [ ] Appairer la Trydan, vérifier `connected: true` et un `currentPower` qui bouge.
|
||||
4. [ ] **Poser `phaseCount` = 3** dans les réglages du Thing. Le défaut est 1 ; sans ce geste,
|
||||
le plancher publié sera de 1 380 W au lieu de 4 140. **C'est le seul point où l'oubli
|
||||
est silencieux** — à vérifier par le `minPowerW` publié en télémétrie, pas de mémoire.
|
||||
5. [ ] Créer la voiture `genericCar` avec les quatre réglages du §3 — dont `capacity` réelle et
|
||||
`batteryLevel` de départ, saisis à la main.
|
||||
6. [ ] Associer voiture ↔ V2C, mode `ChargingModeEco`, et **poser les rangs** des deux bornes
|
||||
(par défaut elles arrivent toutes à 1 — cf. `RELEVE_3g2.md` §3.2).
|
||||
9. [ ] Relevé : distinguer machine / test / lecture, comme `RELEVE_LOTD.md` l'exige.
|
||||
7. [ ] Relevé : distinguer machine / test / lecture, comme `RELEVE_LOTD.md` l'exige.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user