Comments (31)
Ich kann aufgrund fehlender Hardware nur die Sachen verarbeiten, die mir als Issue übermittelt werden.
Bitte den String auswerten und hier posten. Die json beginnt mit Wert 0
from iobroker.solax.
Meinst du den Inhalt aus dem JSON Datenpunkt?
Unplugged:
{"sn":"SQWGQxxx","inverterType":"X1-LX","uploadTime":"Tue Jan 16 2024 14:12:25 GMT+0100 (Central European Standard Time)","connectType":"local","online":true,"connection":true,"firmwareVersion":"3.004.11","totalSize":11,"chargerSN":"C31103J1644075","version":1.08,"acpower":0,"plugstatus":"Unplugged","chargemode":"Stop","acvoltage1":229.19,"acvoltage2":228.68,"acvoltage3":231.12,"accurrent1":0,"accurrent2":0,"accurrent3":0,"acpower1":0,"acpower2":0,"capacity":0,"totalcharged":580.7,"plugTemperature":0,"boardTemperature":12,"plugged":0,"chargeduration":0,"acpower3":"Wait Mode"}
Ladend mit 4 KW
{"sn":"SQWGQxxx","inverterType":"X1-LX","uploadTime":"Tue Jan 16 2024 15:36:25 GMT+0100 (Central European Standard Time)","connectType":"local","online":true,"connection":true,"firmwareVersion":"3.004.11","totalSize":11,"chargerSN":"C31103J1644075","version":1.08,"acpower":0,"plugstatus":"Charging","chargemode":"Eco","acvoltage1":227.08,"acvoltage2":225.93,"acvoltage3":226.4,"accurrent1":6.08,"accurrent2":6.09,"accurrent3":6.08,"acpower1":1379,"acpower2":1374,"capacity":0,"totalcharged":580.7,"plugTemperature":0,"boardTemperature":11,"plugged":0,"chargeduration":0,"acpower3":"Wait Mode"}
from iobroker.solax.
Ach so:
der "invertertype" ist ebenfalls noch falsch. Sollte bei mir ein X3 sein. Mir aber nicht wichtig.
from iobroker.solax.
Nein aus deinem local request String im ersten Post brauche ich die Zuordnung
from iobroker.solax.
Okay, da hast du ja meine Vorlage schon in die inverterData.js übernommen. Das sollte bis auf Kleinigkeiten (Eco und Green vertauscht in Zeile 1) soweit noch stimmen.
from iobroker.solax.
Naja die habe ich dann übernommen und dort ist es dann wohl vertauscht. Darum die Bitte das zu prüfen. Ich kann es aufgrund fehlender Hardware nicht nachstellen. Und die Werte habe ich 1 zu 1 übernommen
from iobroker.solax.
Die Habe ich gerade penibel Geprüft und einen Parser über das Log laufen lassen. Das schaut alles gut aus.
Kann denn jemand mit der Wallbox meinen Fehler bestätigen oder widerlegen? Hab ja immer noch meine IOB Instanz in verdacht.
from iobroker.solax.
Lösche mal die States und Objekte in der Instanz und starte den Adapter mal neu
from iobroker.solax.
Getan, danach wurden sie wieder mit den gleichen Werten wie vorher angelegt. Habe auch eine neue Instanz installiert, gleiches Verhalten. Downdate auf 0.9.0, alles erfolglos.
from iobroker.solax.
Und heute habe ich auf dem Reserve PI IOBroker Server installiert und die Solax instanz eingerichtet. Exakt das gleiche Verhalten im ersten Post.
from iobroker.solax.
Du musst hieraus die Werte ermitteln:
local request: {"SN":"SQWGQWHxxx","ver":"3.004.11","type":1,"Data":[2,2,23225,23196,23118,599,604,601,1390,1400,1388,4179,20,0,5243,0,47,47,65488,64940,65184,64888,63998,0,12,0,2,15,0,0,0,0,0,4992,4992,4994,2105,3852,6145,1,0,0,0,0,0,0,0,0,1,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1701,0,10256,3851,6145,0,1,1,1,0,0,120,607,100,64936,2],"Information":[11,1,"C31103J1xxxxx",1,1.08,1.01,0,0,0,1],"OCPPServer":"","OCPPChargerId":""}
Die Zuordnung unter Data beginnt mit 0
from iobroker.solax.
Habe ich. Die Zuordnung, die du verwendet hast, stammt von mir. Ist auch in Ordnung.
from iobroker.solax.
Andre-0815-4711
Kannst du das so nachvollziehen?
from iobroker.solax.
@Andre-0815-4711 Kannst du das nachstellen?
from iobroker.solax.
Moin,
der Fehler bei mir war, dass der 4. PlugStatus (ID 3 Complete) nicht vorhanden war. Das hat doch tatsächlich dazu geführt, dass einige/viele Werte nicht aktualisiert wurden.
Den hab ich mir dann schnell selber in die Main.js geschrieben und schon kamen wieder alle Daten. Ich hatte auch meine Instanz im Verdacht, als ich aber gesehen habe, das der Datensatz im Log vorhanden war bin ich über die 3 gestolpert.
MfG
André
from iobroker.solax.
An der Stelle könnte man den Wert 0 auch eigentlich anders benennen, anstatt PlugStatus wäre ChargeStatus treffender.
Ich habe auch noch 3x Stromstärke gefunden, bin mir aber noch nicht sicher was das sein soll. Am Donnerstag soll ja die Sonne scheinen, dann schau ich mir das noch mal an...
from iobroker.solax.
Die main.js habe ich mir angesehen, da sind die von dir angesprochenen Lookups drin.
Wenn ich mir das Log durchsuche finde ich folgende Einträge:
solax.1 | 2024-01-23 14:54:51.649 | info | State value to set for "solax.1.info.version" has to be type "string" but received type "number" |
---|---|---|---|
solax.1 | 2024-01-23 14:54:51.447 | info | State value to set for "solax.1.data.acpower3" has to be type "number" but received type "string" |
ACPower 3 ist der erste Wert, der sonderbar ist. Alle Werte die danach abgefragt werden, werden nicht oder sehr verzögert aktualisiert.
Position 10 ist aber eine Zahl:
[1,0,22997,22963,22960,0,0,0,0,0,0,0,0,0,5905,0,41,65494,65493,65520,132,4,371,0,18,0,1,15,0,0,0,0,0,4998,4996,4998,13862,5902,6145,2,0,0,0,0,0,0,0,0,1,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8198,5902,6145,0,1,1,1,0,0,121,900,1000,64936,2]
from iobroker.solax.
Stelle die Instanz auf Debug... Ich verstehe dein Issue leider noch immer nicht so richtig... Wenn du die selbe Wallbox hast wie @Andre-0815-4711 und bei ihm alle Werte passen, liegt eventuell ein Problem mit der Verbindung zu deiner Wallbox vor.
Grundsätzlich könnt ihr mir hier nur die Inputs liefern und die Werte dem String zuordnen. Ich kann aufgrund fehlender Hardware das absolut nicht nachstellen.
from iobroker.solax.
Hallo,
also das mit dem ACPower 3 kann ich bestätigen. Ich habe die 11kW Wallbox aber mein Auto kann nur mit 2 Phasen also 7,4kW laden, deswegen habe ich das wohl bisher ignoriert.
Hier müssten auch 0 W angezeigt werden. Hier scheint die const _inverterStateLocal quer zu schießen, 0: 'Wait Mode',
1: 'Check Mode', den Check Mode habe ich bei mir auch schon gesehen.
Auch die beiden Fehler aus dem Log kann och bestätigen.
from iobroker.solax.
Aber Wait Mode ist ja nicht korrekt ... Da stimmen deine Werte, die du mir übermittelt hast nicht. Dieser Wert muss immer eine Zahl sein.
Bitte überprüfe das noch einmal... Ich möchte die Version ins Stable bringen und kann das mit falschen Werten für die Wallbox nicht machen
from iobroker.solax.
Der Wert stimmt, zu 100% kann ich das aber nur beweisen, wenn ich ein Auto hätte das mit allen 3 Phasen also 11kW laden kann.
Ich habe mir letztens mal die Arbeit gemacht und die Werte aus dem Log in eine Excel zu übertragen um zu sehen was sich wann ändert.
Dabei ist mir gerade aufgefallen, dass der Wert "gridacpower" den ich am Sonntag identifiziert habe nicht richtig ist, das ist die Load vom Haus. Konnte ich am Sonntag nicht genau sehen da der Akku vom Haus leer war.
from iobroker.solax.
Das mit dem Wert für acpower3 kann ich anbringen:
Ich parse hier das IOB Log, speichere es in einer SQL DB und zerlege den String dann in die einzelnen Spalten.
Andre-0815-4711 Hast du die Werte ACPower, Capacity, TotalCharged und ChargeDuration? Und sind die auch gefüllt?
from iobroker.solax.
ACPower, Capacity und TotalCharged habe ich und die Werte sind auch aktualisiert.
ChargeDuration habe ich auch schon gesehen, müsste ich aber mal beim nächsten Ladevorgang noch mal kontrollieren.
Vorhin ist mir noch aufgefallen, dass der Wert 0 PlugStatus in ChargerStatus umbenannt werden müsste und die Stati dazu auch.
Aktuell habe ich das Auto nicht angesteckt und in der APP wird der Verbindungsstatus mit verfügbar angezeigt. Wenn man die APP auf Englisch umstellt steht dann auch Charger Status und available. Dann macht der Wert 26 auch mehr Sinn, nur werden da dann 0, 1 und 2 ausgegeben was dann ja auch wieder einer zu viel ist.
from iobroker.solax.
Ich denke ermittelt erstmal die Werte genau, bevor es im Adapter dann auch vollumfänglich unterstützt werden kann
from iobroker.solax.
0: { name: 'data.chargerstatus', description: 'Charger Status', type: 'number', multiplier: 1, unit: '', role: 'indicator.state' }, // '0=Unplugged 1=Waiting 2=Charging 3=Finished 4=Error': (0, ''), 1: { name: 'data.chargemode', description: 'Charge Mode', type: 'number', multiplier: 1, unit: '', role: 'indicator.state' }, // '0=Stop 1=Fast 2=Eco 3=Green': (1, ''), 2: { name: 'data.acvoltage1', description: 'Grid Voltage 1', type: 'number', multiplier: 0,01, unit: 'V', role: 'value.power' }, // '': (2, 'V'), 3: { name: 'data.acvoltage2', description: 'Grid Voltage 2', type: 'number', multiplier: 0,01, unit: 'V', role: 'value.power' }, // '': (3, 'V'), 4: { name: 'data.acvoltage3', description: 'Grid Voltage 3', type: 'number', multiplier: 0,01, unit: 'V', role: 'value.power' }, // '': (4, 'V'), 5: { name: 'data.accurrent 1', description: 'AC Current 1', type: 'number', multiplier: 0,01, unit: 'A', role: 'value.power' }, // '': (5, 'A'), 6: { name: 'data.accurrent 2', description: 'AC Current 2', type: 'number', multiplier: 0,01, unit: 'A', role: 'value.power' }, // '': (6, 'A'), 7: { name: 'data.accurrent 3', description: 'AC Current 3', type: 'number', multiplier: 0,01, unit: 'A', role: 'value.power' }, // '': (7, 'A'), 8: { name: 'data.acpower1', description: 'AC Power 1', type: 'number', multiplier: 0,01, unit: 'W', role: 'value.power' }, // '': (8, 'W'), 9: { name: 'data.acpower2', description: 'AC Power 2', type: 'number', multiplier: 1, unit: 'W', role: 'value.power' }, // '': (9, 'W'), 10: { name: 'data.acpower3', description: 'AC Power 3', type: 'number', multiplier: 1, unit: 'W', role: 'value.power' }, // '': (10, 'W'), 11: { name: 'data.acpower', description: 'AC Power', type: 'number', multiplier: 1, unit: 'W', role: 'value.power' }, // '': (11, 'W'), 12: { name: 'data.charged', description: 'Carged Capacity', type: 'number', multiplier: 0,1, unit: 'KW/h', role: 'value.power' }, // '': (12, 'KW/h'), 14: { name: 'data.totalcharged', description: 'Total Charged', type: 'number', multiplier: 0,1, unit: 'KW/h', role: 'value.power' }, // '': (14, 'KW/h'), 26: { name: 'data.plugged', description: 'Car Plugged', type: 'number', multiplier: 1, unit: '', role: 'indicator.state' }, // '0=No 1=Yes 2=Yes': (26, ''), 80: { name: 'data.chargeduration', description: 'Charge Duration', type: 'number', multiplier: 1, unit: 's', role: 'value.time' }, // '': (80, 's')
Hier mal mein Vorschlag.
Änderungen:
- Neuer Wert 4=Error für Zeile 0
- Rename Zeile 0
- Rename Zeile 12
- Remove Zeile 23
- Remove Zeile 24
- Lookup für Zeile 23
from iobroker.solax.
Moin,
ich war auch fleißig.... sind schon als Pullrequest eingestellt.
Aber erst mal zu Deinen Änderungen:
- Neuer Wert 4=Error für Zeile 0 - stimme ich zu, Error hatte ich noch nicht
- Rename Zeile 0 - stimme ich zu, steht schon im PullRequest aber Statusbeschreibung 1:1 aus der Solax APP
- Rename Zeile 12 - ja kann man machen, für mich würde die aktuelle ID passen, als Name ist ja Carged Capacity angegeben
- Remove Zeile 23 - stimme ich zu
- Remove Zeile 24 - stimme ich nicht zu, die gleiche Temperatur wird in der Solax App auch angezeigt
- Lookup für Zeile 23 oder doch die 26? - stimme ich zu, steht schon im PullRequest
Was den Fehler mit acpower und acpower3 angeht, der ist auch bei mir noch vorhanden.
Warum auch immer, scheint sich hier der InverterStateLocal einzumischen.
MfG
André
from iobroker.solax.
Super, Vielen Dank!
Da ich leider nicht in der Lage bin, die Änderungen einzupflegen, darf ich dich bitten, das zu tun?
Die Namen der Objekte sind mir egal.
Werte aus dem WR brauche ich nicht, stören aber auch nicht. Meine hiermit Zeile 19 bis 24. So wie ich das sehe, werden die nur über den Bus weiter gereicht.
from iobroker.solax.
Den Fehler mit ACpower3 habe ich auch gefunden und im Pullrequest behoben.
from iobroker.solax.
Super, Vielen Dank!
Da ich leider nicht in der Lage bin, die Änderungen einzupflegen, darf ich dich bitten, das zu tun? Die Namen der Objekte sind mir egal.
Werte aus dem WR brauche ich nicht, stören aber auch nicht. Meine hiermit Zeile 19 bis 24. So wie ich das sehe, werden die nur über den Bus weiter gereicht.
Ja die Werte 19-21 sind die Watt des SmartMeter oder CT-Klemmen, was man hat....
from iobroker.solax.
So, @Azrael4224 hat die Einstellungen aus den PullRequest mal local vorgenommen und ist jetzt alle Fehler los.
Lediglich den Status Preparing könnte man noch treffender umbenennen.
Ready to Charge kommt dem Status am nächsten.
const _wallboxStateLocal = { 0: 'Available', 1: 'Preparing', 2: 'Charging', 3: 'Complete', 4: 'Error' };
from iobroker.solax.
Ja, kann ich bestätigen. Mit Andres Hilfe sind alle Fehler erledigt.
Danke!
from iobroker.solax.
Related Issues (20)
- Update stable version in repo from 0.7.7 to 0.8.0 HOT 3
- Adapter verliert Cloud Verbindung HOT 17
- Datapoint solax.0.data.batteryChargingCycles with whitespace at the end HOT 1
- Solax Pocket Wifi 2 mit Firmware 3.x.x.x HOT 7
- additional data for Solax X3 Hybrid G3, when using a second inverter and a second meter HOT 1
- Version 0.9.0 - zusätzliche Werte HOT 1
- Wallbox integration error: "Cannot read properties of undefined (reading 'name')" HOT 1
- X3 G4 Overflow Values HOT 5
- Wallbox Werte HOT 1
- keine Wallbox Daten mehr HOT 4
- X3-EVC Wallbox Control? HOT 5
- falscher Wert bei Datenpunkt "yieldtotal" / Solax X3 Hybrid G4 HOT 8
- Fehlerprotokoll Solax-Adapter über Token-ID HOT 7
- Falsche Daten bei X1 Mini G4 HOT 2
- Update stable version in repo from 0.9.6 to 0.9.9 HOT 1
- Solax adapter version 0.9.9 - incomplete data HOT 1
- Please consider fixing issues detected by repository checker HOT 1
- Please consider fixing issues detected by repository checker HOT 3
- Please consider fixing issues detected by repository checker HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from iobroker.solax.