Aucun registre de phases n'existe dans la carte Modbus V2C : la borne ne sait pas dire si elle est câblée en mono ou en tri. La ThingClass ne le déclarait pas non plus, et le repli du moteur pour un état absent est SILENCIEUX — EvCharger::phaseCount() rend 1. Sur une Trydan triphasée, cela publie un plancher de 1 380 W au lieu de 4 140 (6 A × 230 V × 1 au lieu de × 3) et convertit l'enveloppe allouée en un courant trois fois trop élevé. La borne démarre, au mauvais courant, sans qu'aucun journal ne le dise. C'est la famille de défaut que le moteur vient de fermer en 3g-2 — un plancher annoncé qui n'est pas celui qui gouverne le démarrage — rouverte côté plugin. Trouvée la veille de la pose, en lisant la déclaration de classe plutôt qu'en l'exécutant. La valeur vient donc d'un RÉGLAGE (1 ou 3, défaut 1), recopié dans l'état que le moteur lit, et réappliqué sur settingChanged pour qu'une borne recâblée se corrige sans recréer le Thing. Le défaut 1 est celui du repli du moteur : une installation qui ne renseigne rien se comporte exactement comme avant. L'état porte minValue 1 / maxValue 3 — l'interface nymea evcharger définit phaseCount avec ces bornes, et le validateur refuse la classe sans elles. S'y conformer, c'est être lu par le moteur À TRAVERS l'interface, pas par une convention propre au plugin. Compile amd64 0 erreur / 0 warning. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017TVywtayEeoRJ2yWUW4iZj
251 lines
11 KiB
JSON
251 lines
11 KiB
JSON
{
|
|
"name": "V2C",
|
|
"displayName": "V2C Trydan",
|
|
"id": "f0692725-650a-47c3-a673-172f077768f1",
|
|
"paramTypes": [],
|
|
"vendors": [
|
|
{
|
|
"id": "56c3e7bb-2db8-4002-b799-9e21530e6fb9",
|
|
"name": "v2c",
|
|
"displayName": "V2C",
|
|
"thingClasses": [
|
|
{
|
|
"id": "b2a12873-4d11-444e-a4ad-914907491eb4",
|
|
"name": "trydan",
|
|
"displayName": "Trydan",
|
|
"interfaces": [
|
|
"evcharger",
|
|
"connectable"
|
|
],
|
|
"createMethods": [
|
|
"discovery",
|
|
"user"
|
|
],
|
|
"discoveryType": "weak",
|
|
"paramTypes": [
|
|
{
|
|
"id": "2fe17a54-b24b-4868-ae99-36a4627e6827",
|
|
"name": "macAddress",
|
|
"displayName": "MAC address",
|
|
"type": "QString",
|
|
"inputType": "MacAddress",
|
|
"defaultValue": "",
|
|
"readOnly": true
|
|
},
|
|
{
|
|
"id": "c0cdfa64-7054-4486-809e-3b7f257a3aab",
|
|
"name": "address",
|
|
"displayName": "Host address",
|
|
"type": "QString",
|
|
"inputType": "IPv4Address",
|
|
"defaultValue": ""
|
|
},
|
|
{
|
|
"id": "bd9987a4-4c45-49c8-ab67-8c80705ec109",
|
|
"name": "hostName",
|
|
"displayName": "Host name",
|
|
"type": "QString",
|
|
"inputType": "TextLine",
|
|
"defaultValue": ""
|
|
},
|
|
{
|
|
"id": "d096bfe1-5861-456f-915c-f1f2c65b03b3",
|
|
"name": "port",
|
|
"displayName": "Modbus TCP port",
|
|
"type": "uint",
|
|
"defaultValue": 502
|
|
}
|
|
],
|
|
"settingsTypes": [
|
|
{
|
|
"id": "a47f20bd-dfdc-4827-ab7d-05d7819f316e",
|
|
"name": "suspendInternalOptimizer",
|
|
"displayName": "Suspend internal V2C optimizer when HEMS takes control",
|
|
"type": "bool",
|
|
"defaultValue": true
|
|
},
|
|
{
|
|
"id": "ff07260e-1583-51a3-a536-483ce513a218",
|
|
"name": "phaseCount",
|
|
"displayName": "Number of connected phases (1 or 3)",
|
|
"type": "uint",
|
|
"defaultValue": 1,
|
|
"allowedValues": [
|
|
1,
|
|
3
|
|
]
|
|
}
|
|
],
|
|
"stateTypes": [
|
|
{
|
|
"id": "47054399-82fb-4e12-9bb6-9ae3e4fd4f78",
|
|
"name": "connected",
|
|
"displayName": "Connected",
|
|
"type": "bool",
|
|
"defaultValue": false,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "f38c313c-47cc-4791-8a8f-64c1af852af6",
|
|
"name": "pluggedIn",
|
|
"displayName": "Plugged in",
|
|
"type": "bool",
|
|
"defaultValue": false,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "6d003e09-d30d-4a1c-9e2d-9e838b61dc5d",
|
|
"name": "charging",
|
|
"displayName": "Charging",
|
|
"type": "bool",
|
|
"defaultValue": false,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "eb3253a2-7518-4e76-9c06-1bb133d5037d",
|
|
"name": "power",
|
|
"displayName": "Charging enabled",
|
|
"displayNameAction": "Set charging enabled",
|
|
"type": "bool",
|
|
"defaultValue": true,
|
|
"writable": true
|
|
},
|
|
{
|
|
"id": "deb8826d-4f91-42b8-89cf-16feb6425e0e",
|
|
"name": "maxChargingCurrent",
|
|
"displayName": "Maximum charging current",
|
|
"displayNameAction": "Set maximum charging current",
|
|
"type": "double",
|
|
"unit": "Ampere",
|
|
"minValue": 6,
|
|
"maxValue": 32,
|
|
"stepSize": 1,
|
|
"defaultValue": 16,
|
|
"writable": true
|
|
},
|
|
{
|
|
"id": "1435a5cd-7054-5ef3-8511-51b09df6a148",
|
|
"name": "phaseCount",
|
|
"displayName": "Connected phases",
|
|
"type": "uint",
|
|
"defaultValue": 1,
|
|
"minValue": 1,
|
|
"maxValue": 3,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "2570c0d7-f9a5-4e24-9242-6d79253004ec",
|
|
"name": "currentPower",
|
|
"displayName": "Charging power",
|
|
"type": "double",
|
|
"unit": "Watt",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "d11a392f-387d-4f10-9050-e25198d2c584",
|
|
"name": "housePower",
|
|
"displayName": "House power (CT clamp)",
|
|
"type": "double",
|
|
"unit": "Watt",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "37e706fb-fa3c-484a-b776-b50aa5de5c61",
|
|
"name": "solarPower",
|
|
"displayName": "Solar power (PV seen by charger)",
|
|
"type": "double",
|
|
"unit": "Watt",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "9a9e6afb-a641-409f-9705-c16776db3a29",
|
|
"name": "slaveError",
|
|
"displayName": "Charger error code",
|
|
"type": "uint",
|
|
"defaultValue": 0
|
|
},
|
|
{
|
|
"id": "fe616e45-39cb-4be3-8426-9d27c7a64f06",
|
|
"name": "chargeEnergy",
|
|
"displayName": "Session energy (diagnostic)",
|
|
"type": "double",
|
|
"unit": "KiloWattHour",
|
|
"defaultValue": 0
|
|
},
|
|
{
|
|
"id": "71773194-ebd3-4ded-893c-14bfef9b1854",
|
|
"name": "intensity",
|
|
"displayName": "Current charging current",
|
|
"type": "double",
|
|
"unit": "Ampere",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "3c86495b-74da-440e-98a5-825678e35c1a",
|
|
"name": "conflictDetected",
|
|
"displayName": "Internal V2C optimizer active",
|
|
"type": "bool",
|
|
"defaultValue": false
|
|
},
|
|
{
|
|
"id": "006dd018-9c6a-4a4e-a7b2-eb965d27ca92",
|
|
"name": "optimizerSuspended",
|
|
"displayName": "Internal optimizer suspended by HEMS",
|
|
"type": "bool",
|
|
"defaultValue": false
|
|
},
|
|
{
|
|
"id": "c2d4e6f8-1a3b-4c7d-be0f-2a4b6c8d0e1f",
|
|
"name": "statusMessage",
|
|
"displayName": "Connection status",
|
|
"type": "QString",
|
|
"defaultValue": "",
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890",
|
|
"name": "powerL1",
|
|
"displayName": "Phase L1 power",
|
|
"type": "double",
|
|
"unit": "Watt",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901",
|
|
"name": "powerL2",
|
|
"displayName": "Phase L2 power",
|
|
"type": "double",
|
|
"unit": "Watt",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012",
|
|
"name": "powerL3",
|
|
"displayName": "Phase L3 power",
|
|
"type": "double",
|
|
"unit": "Watt",
|
|
"defaultValue": 0,
|
|
"cached": false
|
|
},
|
|
{
|
|
"id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123",
|
|
"name": "slaveErrorMessage",
|
|
"displayName": "Charger error message",
|
|
"type": "QString",
|
|
"defaultValue": "",
|
|
"cached": false
|
|
}
|
|
],
|
|
"actionTypes": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|