Tesla Powerwall 2 AC

Begonnen von Gigafix, 30 September 2017, 14:21:54

Vorheriges Thema - Nächstes Thema

Gigafix

Hallo CoolTux

Das ist ja toll, das Du da gleich ein Modul draus machst. Super Sache.
Eigentlich habe ich auch alles so gemacht wie Du geschrieben hast - nur bekomme ich für die ersten beiden get - Befehle nur Hash werte. Hier mal ein List:
Internals:
   DEF        192.168.1.1
   HOST       192.168.1.1
   INTERVAL   300
   NAME       TeslaPowerWall2AC
   NR         1234
   PORT       80
   STATE      36.8
   TYPE       TeslaPowerwall2AC
   VERSION    0.0.8
   .userReadings:
     HASH(0x83cd430)
   READINGS:
     2017-10-13 20:58:07   /api/meters/aggregates-battery HASH(0x8f122e8)
     2017-10-13 20:58:07   /api/meters/aggregates-busway HASH(0x8c12a08)
     2017-10-13 20:58:07   /api/meters/aggregates-frequency HASH(0x872e140)
     2017-10-13 20:58:07   /api/meters/aggregates-load HASH(0x87d4cc8)
     2017-10-13 20:58:07   /api/meters/aggregates-site HASH(0x96925c0)
     2017-10-13 20:58:07   /api/meters/aggregates-solar HASH(0x8f69ef0)
     2017-10-13 20:58:22   /api/powerwalls-powerwalls ARRAY(0x8c0ab60)
     2017-10-13 17:12:49   /api/site_info-country Germany
     2017-10-13 17:12:49   /api/site_info-grid_code 50Hz_230V_1_VDE4105:2011_Germany
     2017-10-13 17:12:49   /api/site_info-grid_freq_setting 50
     2017-10-13 17:12:49   /api/site_info-grid_phase_setting Single
     2017-10-13 17:12:49   /api/site_info-grid_voltage_setting 230
     2017-10-13 17:12:49   /api/site_info-max_site_meter_power_kW 1000000000
     2017-10-13 17:12:49   /api/site_info-measured_frequency 49.950122833252
     2017-10-13 17:12:49   /api/site_info-min_site_meter_power_kW -1000000000
     2017-10-13 17:12:49   /api/site_info-nominal_system_energy_kWh 13.5
     2017-10-13 17:12:49   /api/site_info-site_name Fam. Mustermann
     2017-10-13 17:12:49   /api/site_info-timezone Europe/Berlin
     2017-10-13 19:24:59   /api/system_status/soe-percentage 36.8088130774698
     2017-10-13 20:58:22   Ladung          36.8
     2017-10-13 20:58:22   state           ready
Attributes:
   DbLogExclude .*
   group      Solaranlage
   room       Energie
   stateFormat Ladung
   userReadings Ladung {sprintf("%.1f",ReadingsVal("TeslaPowerWall2AC","/api/system_status/soe-percentage",0))}


Ein Neustart habe ich auch schon gemacht - hat nicht geholfen.
Ist jetzt aber auch nicht superwichtig - aber wenn Du eine Idee hast sag Bescheid.

Viele Grüße sendet
Gigafix
VM Synology DS918 | CubieTruck |2x HMLAN | HMUSB | 3x HMWLAN | CCU2 | MAX-Cube | nanoCUL | ZWDongle |

CoolTux

#16
Zitat von: Black7king am 10 Oktober 2017, 14:42:42
Hey CoolTux,

Denke eigentlich sind aktuelle nur die zwei Intresannt

http://<ip-powerwall>/api/system_status/soe
{"percentage":95.36075138750533}

&

http<ip-Powerwall>/api/meters/aggregates

{
"site":{
"last_communication_time":"2017-10-04T21:40:58.189824673Z","instant_power":405.5284080505371,"instant_reactive_power":-489.71363067626953,"instant_apparent_power":635.8244488898933,"frequency":49.99971389770508,"energy_exported":86827,"energy_imported":74551,"instant_average_voltage":695.5163269042969,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0},

"battery":{
"last_communication_time":"2017-10-04T21:40:58.19075366Z",
"instant_power":-10,
"instant_reactive_power":310,
"instant_apparent_power":310.16124838541646,
"frequency":50.011,
"energy_exported":43300,
"energy_imported":49580,
"instant_average_voltage":229.60000000000002,
"instant_total_current":-0.30000000000000004,
"i_a_current":0,
"i_b_current":0,
"i_c_current":0},

"load":{
"last_communication_time":"2017-10-04T21:40:58.189824673Z","instant_power":410.06476697984374,"instant_reactive_power":95.1168869834601,"instant_apparent_power":420.95170187048524,"frequency":49.99971389770508,"energy_exported":0,"energy_imported":86641,"instant_average_voltage":695.5163269042969,"instant_total_current":0.58958323639219,"i_a_current":0,"i_b_current":0,"i_c_current":0},

"solar":{
"last_communication_time":"2017-10-04T21:40:58.190334999Z","instant_power":15.60922384262085,"instant_reactive_power":271.87248373031616,"instant_apparent_power":272.32020725363014,"frequency":50.049781799316406,"energy_exported":126771,"energy_imported":21574,"instant_average_voltage":695.6544494628906,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0},

"busway":{
"last_communication_time":"0001-01-01T00:00:00Z","instant_power":0,"instant_reactive_power":0,"instant_apparent_power":0,"frequency":0,"energy_exported":0,"energy_imported":0,"instant_average_voltage":0,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0},

"frequency":{
"last_communication_time":"0001-01-01T00:00:00Z","instant_power":0,"instant_reactive_power":0,"instant_apparent_power":0,"frequency":0,"energy_exported":0,"energy_imported":0,"instant_average_voltage":0,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0}
}


Wenn du mehr Infos Brauchst wird dir Gigafix weiter helfen müssen da ich meine Powerwalls leider immer noch nicht habe...

MfG

Ich habe mich an diese Ausgabe als JSON String gehalten. Ansonsten benötige ich bitte einmal den ganz genauen String.

Das er da die URL Teile reinschreibt ist auch nicht richtig.
Muss Mal schauen, hatte da noch ne Änderung gemacht gehabt die wohl nicht ganz richtig war.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Wenn Du magst kannst du in mein Git schauen und Dir da schon die aktuellste Version holen. Aber Vorsicht da ist schon eine Methode drin welche per Interval alle get Befehle bedient. Konnte noch nicht testen ob das so geht wie ich es mir überlegt habe. Ich arbeite da mit einer Queue.
Wenn es Dir zu heikel ist müsstest noch bis morgen warten.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Gigafix

#18
Hallo CoolTux

Na das war nicht die Originalausgabe - es war schon etwas aufbereitet, um es lesbarer zu machen. Hier mal die Ausgabe von /api/meters/aggregates wie es ausgelesen wird.
{"site":{"last_communication_time":"2017-10-13T19:16:23.896444247Z","instant_power":5.5513916015625,"instant_reactive_power":-197.36620712280273,"instant_apparent_power":197.44426469957278,"frequency":49.90053176879883,"energy_exported":159784,"energy_imported":183063,"instant_average_voltage":687.8249053955078,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0},"battery":{"last_communication_time":"2017-10-13T19:16:23.896606244Z","instant_power":2580,"instant_reactive_power":-50,"instant_apparent_power":2580.484450641003,"frequency":49.947,"energy_exported":90560,"energy_imported":109840,"instant_average_voltage":230.3,"instant_total_current":-64.9,"i_a_current":0,"i_b_current":0,"i_c_current":0},"load":{"last_communication_time":"2017-10-13T19:16:23.896444247Z","instant_power":2570.394101897115,"instant_reactive_power":-235.77139580030692,"instant_apparent_power":2581.184609853604,"frequency":49.90053176879883,"energy_exported":0,"energy_imported":200428,"instant_average_voltage":687.8249053955078,"instant_total_current":3.736988994923216,"i_a_current":0,"i_b_current":0,"i_c_current":0},"solar":{"last_communication_time":"2017-10-13T19:16:23.90554212Z","instant_power":-5.912493243813515,"instant_reactive_power":-6.48702609539032,"instant_apparent_power":8.777191117915539,"frequency":49.95012283325195,"energy_exported":235557,"energy_imported":39128,"instant_average_voltage":688.2974548339844,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0},"busway":{"last_communication_time":"0001-01-01T00:00:00Z","instant_power":0,"instant_reactive_power":0,"instant_apparent_power":0,"frequency":0,"energy_exported":0,"energy_imported":0,"instant_average_voltage":0,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0},"frequency":{"last_communication_time":"0001-01-01T00:00:00Z","instant_power":0,"instant_reactive_power":0,"instant_apparent_power":0,"frequency":0,"energy_exported":0,"energy_imported":0,"instant_average_voltage":0,"instant_total_current":0,"i_a_current":0,"i_b_current":0,"i_c_current":0}}

Bei /api/powerwalls kommt diese Ausgabe:
{"powerwalls":[{"PackagePartNumber":"1234567-89-A","PackageSerialNumber":"R12B0007890"}]}

Dann werde ich auch gleich mal in dein Git schauen.

Gruß
Gigafix

Nachtrag: Also mit der Version aus dem Git bekomme ich beim reload folgende Ausgabe:
Global symbol "$paths" requires explicit package name at ./FHEM/46_TeslaPowerwall2AC.pm line 267.
Global symbol "%readings" requires explicit package name at ./FHEM/46_TeslaPowerwall2AC.pm line 389.
VM Synology DS918 | CubieTruck |2x HMLAN | HMUSB | 3x HMWLAN | CCU2 | MAX-Cube | nanoCUL | ZWDongle |

CoolTux

Wie so oft im Leben Folgefehler. Konnte nun auch so einiges testen. Sollte jetzt klappen.
Bitte vom Git runter laden und installieren. Danach am besten reboot und Daumen drücken.

Der JSON String war im übrigen korrekt. Die Absätze hatte ich ja raus genommen.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Gigafix

Hallo CoolTux

Super Sache nun liest er alles aus. Danke.
Hast Du auch eine PowerWall bestellt und wartest noch auf die Lieferung?

Jetzt fehlt eventuell noch der API Link zum Status - wird in der App als Standby/Wird geladen/Entlädt angezeigt - kann man sich aber zwar auch irgendwie aus dem Energiefluss herleiten, aber mal sehen ob es da weitere Infos im Netz gibt. Ich schaue mal.

Viele Grüße sendet
Gigafix
VM Synology DS918 | CubieTruck |2x HMLAN | HMUSB | 3x HMWLAN | CCU2 | MAX-Cube | nanoCUL | ZWDongle |

Black7king

Zitat von: Gigafix am 13 Oktober 2017, 21:23:03

Internals:
   READINGS:

     2017-10-13 20:58:22   Ladung          36.8
     2017-10-13 20:58:22   state           ready



Hey da ich Ja leider noch nicht mit testen kann was sagt den das Reading State aus? ist das vom Modul der zustand oder Vielleicht der der Powerball bzw des Gateways?

Mit freundlichen Grüßen

CoolTux

Zitat von: Gigafix am 14 Oktober 2017, 09:31:55
Hallo CoolTux

Super Sache nun liest er alles aus. Danke.
Hast Du auch eine PowerWall bestellt und wartest noch auf die Lieferung?

Jetzt fehlt eventuell noch der API Link zum Status - wird in der App als Standby/Wird geladen/Entlädt angezeigt - kann man sich aber zwar auch irgendwie aus dem Energiefluss herleiten, aber mal sehen ob es da weitere Infos im Netz gibt. Ich schaue mal.

Viele Grüße sendet
Gigafix

Erstmal möchte ich mich bei Dir ganz herzlich bedanken. Werde nachher mit meinen Sohn ein Eis essen gehen  ;D

Ich habe keine Powerwall, finde aber das ganze Thema alternative Energien sehr spannend und bin ein großer Fan von Tesla. Es lag mir also am Herzen hier etwas zu unterstützen.
Wenn Du weitere Links findest immer her damit, ist ganz einfach das Modul zu erweitern.
Das Modul sollte auch alle 5min einen aktuellen Status von allen Daten sich ziehen. Den Interval kannst Du über das Attribut Intervall anpassen.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Zitat von: Black7king am 14 Oktober 2017, 09:48:40
Hey da ich Ja leider noch nicht mit testen kann was sagt den das Reading State aus? ist das vom Modul der zustand oder Vielleicht der der Powerball bzw des Gateways?

Mit freundlichen Grüßen

Hallo,

Der state beschreibt den Status des Modules. In diesem Fall konnte das Modul die Adresse nicht erreichen und somit keine Daten erfassen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

So ihr beiden. Dann werde ich die Tage noch das Modul etwas schick machen, besonders noch etwas Fehlerbehandlung einbauen und die Commandref dazu schreiben.

Es wird also noch die ein oder andere Version zum testen geben.


Grüße
Leon
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Gigafix

#25
Hallo Zusammen

Den "state" hatte ich glatt übersehen - gibt aber wohl nur den Modulstatus wieder - ich habe hier jetzt den Status "ready" und ganz kurz "fetch data" beobachtet. Jetzt wird auch gerade wieder die Powerwall geladen, und der "state" steht immer noch auf "ready" wie vorher im Standby.

@ CoolTux
Die Werte für Sitemaster scheint er sich ja automatisch zu holen - zumindest die "uptime" wird aktualisiert. aber wenn ich auf "get sitemaster" klicke bekomme ich folgende Ausgabe:
Unknown argument sitemaster, choose one of statusSOE:noArg aggregates:noArg siteinfo:noArg sitemaster:noArg powerwalls:noArg

Grüße

Nachtrag: Na so wie es aussieht bin ich hier der einzige der im Moment testen kann. Mach ich aber gerne.  :)
VM Synology DS918 | CubieTruck |2x HMLAN | HMUSB | 3x HMWLAN | CCU2 | MAX-Cube | nanoCUL | ZWDongle |

Gigafix

Hallo CoolTux

Wenn ich einen Wunsch äußern darf - ich hätte gerne das Reading Ladung oder Ladezustand im Modul. Derzeit mache ich das über das userReadings Ladung {sprintf("%.1f",ReadingsVal("Tesla_Powerwall","statussoe-percentage",0))}
um ein besser lesbaren Wert zu bekommen.

Grüße
VM Synology DS918 | CubieTruck |2x HMLAN | HMUSB | 3x HMWLAN | CCU2 | MAX-Cube | nanoCUL | ZWDongle |

CoolTux

Zitat von: Gigafix am 14 Oktober 2017, 10:22:21
Hallo Zusammen

Den "state" hatte ich glatt übersehen - gibt aber wohl nur den Modulstatus wieder - ich habe hier jetzt den Status "ready" und ganz kurz "fetch data" beobachtet. Jetzt wird auch gerade wieder die Powerwall geladen, und der "state" steht immer noch auf "ready" wie vorher im Standby.

@ CoolTux
Die Werte für Sitemaster scheint er sich ja automatisch zu holen - zumindest die "uptime" wird aktualisiert. aber wenn ich auf "get sitemaster" klicke bekomme ich folgende Ausgabe:
Unknown argument sitemaster, choose one of statusSOE:noArg aggregates:noArg siteinfo:noArg sitemaster:noArg powerwalls:noArg

Grüße

Nachtrag: Na so wie es aussieht bin ich hier der einzige der im Moment testen kann. Mach ich aber gerne.  :)

Wie gesagt er sollte sich alle Daten alle 5 min holen. Das sieht man gut am ReadingsTimestamp. Bitte einmal kontrollieren.

Das Problem mit sitemaster schaue ich mir an.
Zum Thema state, gerne könnt Ihr mir sagen was ihr Euch da vorstellen könnt, persönlich finde ich ja die Zustände gut ob das Teil gerade läd entlädt oder auf Standby ist. Also quasi das wo uns noch der Link fehlt.

Wegen Deinem userReading, das hatte ich in der Tat als nächstes vor. Ich würde aber gerne eine englische Begrifflichkeiten nehmen da ja alles auf Englisch ist.
Und selbstverständlich dürft Ihr wünsche äußern, es ist Euer Modul!



Grüße
Leon
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Black7king

Zitat von: Gigafix am 14 Oktober 2017, 10:22:21

Nachtrag: Na so wie es aussieht bin ich hier der einzige der im Moment testen kann. Mach ich aber gerne.  :)

Ja mein Versand Termin der ersten PW (von irgendwann mal Drei) ist für den 23. bzw. den 30. geplant...

aber bis dahin versuche ich zu Helfen wo es geht und indes zusammen zu tragen

Gigafix

#29
Hallo CoolTux

Ja, das mit der Aktualisierung aller Werte die sich ändern alle 5 min funktioniert soweit bis auf "aggregates-solar-frequency" - das muss ich aber noch weiter beobachten. Eben hatte ich noch den siteinfo-measured_frequency Frequenzwert in Verdacht, aber schwups hatte er sich aktualisiert. In der Datenausgabe, wenn ich den API-Link aufrufe gibt es aber schon eine Veränderung.
Nun, je länger ich da drauf schaue scheint es doch bei allen "aggregates-<xxx>-frequency" Readings zumindest längere Pausen zwischen den Updates zu geben. Nur das Reading aggregates-battery-frequency scheint sich im Moment immer zu aktualisieren. Wobei auch nicht die aggregates-frequency-<xxx> Werte gemeint sind, diese sind ja derzeit ungenutzt genau so wie die aggregates-busway-<xxx> Werte.
Jetzt habe ich noch länger draufgeschaut und merkwürdigerweise sind alle aggregates-<xxx>-frequency" Readings gleich, und das zu unterschiedliche Aktualisierungszeiten - bei den vielen Stellen hinter dem Komma kann ich mir das aber gerade ganz schwer vorstellen, das dies der korrekte Wert ist. Wobei ich hier auch nicht die Frage diskutieren möchte wie genau den der "gemessene" Wert wirklich ist - es geht hier eher um das Prinzip. Hier mal ein Auszug aus dem List, mit allen Einträgen zu "frequency" - ich habe mal auch die ungenutzten Readings mit einbezogen, falls es da einen Zusammenhang wegen des gleichen Namens gibt.
     2017-10-14 11:41:58   aggregates-battery-frequency 50.009
     2017-10-14 08:38:20   aggregates-busway-frequency 0
     2017-10-14 08:38:20   aggregates-frequency-energy_exported 0
     2017-10-14 08:38:20   aggregates-frequency-energy_imported 0
     2017-10-14 08:38:20   aggregates-frequency-frequency 0
     2017-10-14 08:38:20   aggregates-frequency-i_a_current 0
     2017-10-14 08:38:20   aggregates-frequency-i_b_current 0
     2017-10-14 08:38:20   aggregates-frequency-i_c_current 0
     2017-10-14 08:38:20   aggregates-frequency-instant_apparent_power 0
     2017-10-14 08:38:20   aggregates-frequency-instant_average_voltage 0
     2017-10-14 08:38:20   aggregates-frequency-instant_power 0
     2017-10-14 08:38:20   aggregates-frequency-instant_reactive_power 0
     2017-10-14 08:38:20   aggregates-frequency-instant_total_current 0
     2017-10-14 08:38:20   aggregates-frequency-last_communication_time 0001-01-01T00:00:00Z
     2017-10-14 11:07:56   aggregates-load-frequency 49.9997138977051
     2017-10-14 11:07:56   aggregates-site-frequency 49.9997138977051
     2017-10-14 11:36:58   aggregates-solar-frequency 49.9997138977051
     2017-10-14 11:31:57   siteinfo-measured_frequency 49.9997138977051


eventuell kann man da irgendwelche Rückschlüsse ziehen.

Nachtrag - Hier noch komprimiert die Ausgabe api/meters/aggregates - danach sind auch bestimmte Frequenzwerte gleich, das ist aber auch zu einem konkreten Zeitpunkt - also O.K. und nachvollziehbar:
"site":"frequency":49.99971389770508,
"battery":"frequency":49.955,
"load":"frequency":49.99971389770508,
"solar":"frequency":49.99971389770508,
"busway":"frequency":0,
"frequency":"frequency":0,


Etwas später abgerufen - api/site_info
measured_frequency":49.99971389770508,"

Und auch noch einmal ein wenig später api/meters/aggregates
{"site":"frequency":49.99971389770508,
"battery":"frequency":49.987,
"load":"frequency":49.99971389770508,
"solar":"frequency":49.99971389770508,
"busway":"frequency":0,
"frequency":"frequency":0,


Damit erklären sich dann die gleichen Readings zu den Frequenzen - die ändern sich zwar auch in der API Schnittstelle - aber eben nicht so oft - also auch die Erklärung warum diese sich nicht alle 5 min im Modul ändern - also alles O.K.
VM Synology DS918 | CubieTruck |2x HMLAN | HMUSB | 3x HMWLAN | CCU2 | MAX-Cube | nanoCUL | ZWDongle |