Everything the register map carries, sorted the way it gets asked about
The Modbus snapshot reported about half of what one poll already brings back. The rest was read into the block and thrown away: line-to-line voltages, reactive and apparent power per phase, the PWM flag, the control-pilot voltage, and the identity block's product number, rated power and current range. All of it now decodes — no extra requests, the registers were in hand already. Added alongside it: the control block, read back over FC03. It answers a question the live registers cannot, which is what the charger is *set* to as opposed to what it is doing — a boost that was asked for reads there while the live block still reports none running. Best effort, so a charger that refuses it still reports its state. Two registers the spec leaves blank are decoded on the hardware's evidence. The control-pilot voltage reads 11873 while the CP signal register reports state A, which that enum names as 12 V, so the register is millivolts. The identity block's current range is in amps, whatever its unit column says about watts and kVA. The charging card lays this out in sections rather than a wall of forty numbers: per-phase measurements as the matrix they are, then live state, then settings, then the device itself, with alarms surfacing only when a word is non-zero. Strings in en/da/pl. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
aaa89dfe10
commit
62cb691f98
6 files changed
+615
-19
No files matched your search
@@ -92,6 +92,62 @@
|
||||
"boost": "Boost this session",
|
||||
"modbusHint": "Enter the charger's address on this network and save it. The charger must be powered on and on the same network as DriverVault."
|
||||
},
|
||||
"modbus": {
|
||||
"phases": "Per phase",
|
||||
"live": "Live data",
|
||||
"settings": "Settings",
|
||||
"device": "Device",
|
||||
"alarms": "Alarms",
|
||||
"phase": "Phase",
|
||||
"voltage": "Voltage",
|
||||
"current": "Current",
|
||||
"activePower": "Active",
|
||||
"reactivePower": "Reactive",
|
||||
"apparentPower": "Apparent",
|
||||
"lineToLine": "Line to line",
|
||||
"power": "Total power",
|
||||
"sessionDuration": "Session length",
|
||||
"cpSignal": "Control pilot",
|
||||
"cpVoltage": "Pilot voltage",
|
||||
"phaseMode": "Running on",
|
||||
"relayTemps": "Relay temperatures",
|
||||
"pwm": "PWM active",
|
||||
"maxCurrentSet": "Current limit",
|
||||
"timeout": "Control timeout",
|
||||
"phaseSetting": "Phase setting",
|
||||
"boostSet": "Boost requested",
|
||||
"lastCommand": "Last command",
|
||||
"chargingMode": "Charging mode",
|
||||
"loadBalancing": "Load balancing",
|
||||
"solarBalancing": "Solar balancing",
|
||||
"ledBrightness": "LED brightness",
|
||||
"model": "Model",
|
||||
"serial": "Serial",
|
||||
"firmware": "Firmware",
|
||||
"hardware": "Hardware",
|
||||
"productNumber": "Product number",
|
||||
"ratedPower": "Rated power",
|
||||
"currentRange": "Current range",
|
||||
"ocppLink": "OCPP",
|
||||
"mqttLink": "MQTT",
|
||||
"alarmWord": "Word {n}",
|
||||
"alarmsHint": "The charger reports an alarm. Anker does not publish what the individual bits mean, so the words are shown as they arrive.",
|
||||
"phaseMode1": "Single-phase",
|
||||
"phaseMode3": "Three-phase",
|
||||
"phaseSet0": "Automatic",
|
||||
"phaseSet1": "Fixed single-phase",
|
||||
"phaseSet2": "Fixed three-phase",
|
||||
"chargingMode0": "Solar + grid",
|
||||
"chargingMode1": "Solar only",
|
||||
"command0": "None",
|
||||
"command1": "Start",
|
||||
"command2": "Stop",
|
||||
"ocpp0": "Not connected",
|
||||
"ocpp1": "Connecting",
|
||||
"ocpp2": "Connected",
|
||||
"mqtt0": "Not connected",
|
||||
"mqtt1": "Connected"
|
||||
},
|
||||
"info": {
|
||||
"title": "Charger information",
|
||||
"empty": "Nothing imported yet — a charger you import shows everything it reports here.",
|
||||
|
||||
Reference in new issue
Block a user