Git Product home page Git Product logo

Comments (31)

simatec avatar simatec commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

Ach so:
der "invertertype" ist ebenfalls noch falsch. Sollte bei mir ein X3 sein. Mir aber nicht wichtig.

from iobroker.solax.

simatec avatar simatec commented on September 26, 2024

Nein aus deinem local request String im ersten Post brauche ich die Zuordnung

from iobroker.solax.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

simatec avatar simatec commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

simatec avatar simatec commented on September 26, 2024

Lösche mal die States und Objekte in der Instanz und starte den Adapter mal neu

from iobroker.solax.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

simatec avatar simatec commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

Habe ich. Die Zuordnung, die du verwendet hast, stammt von mir. Ist auch in Ordnung.

from iobroker.solax.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

Andre-0815-4711
Kannst du das so nachvollziehen?

from iobroker.solax.

simatec avatar simatec commented on September 26, 2024

@Andre-0815-4711 Kannst du das nachstellen?

from iobroker.solax.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

simatec avatar simatec commented on September 26, 2024

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.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.
image
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.

image
Auch die beiden Fehler aus dem Log kann och bestätigen.

from iobroker.solax.

simatec avatar simatec commented on September 26, 2024

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.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.
image
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.
image

from iobroker.solax.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

Das mit dem Wert für acpower3 kann ich anbringen:
image

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.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.

simatec avatar simatec commented on September 26, 2024

Ich denke ermittelt erstmal die Werte genau, bevor es im Adapter dann auch vollumfänglich unterstützt werden kann

from iobroker.solax.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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

Andre-0815-4711

from iobroker.solax.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.
image
image

Warum auch immer, scheint sich hier der InverterStateLocal einzumischen.
image

MfG
André

from iobroker.solax.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

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.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

Den Fehler mit ACpower3 habe ich auch gefunden und im Pullrequest behoben.
image

from iobroker.solax.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.

Andre-0815-4711 avatar Andre-0815-4711 commented on September 26, 2024

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.

Azrael4224 avatar Azrael4224 commented on September 26, 2024

Ja, kann ich bestätigen. Mit Andres Hilfe sind alle Fehler erledigt.
Danke!

from iobroker.solax.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.