Image Version 0.0.9

Solaranzeige und Docker
Alles was mit der Docker Version zu tun hat.

Moderatoren: Ulrich, DeBaschdi

jottt
Beiträge: 97
Registriert: Mo 1. Mär 2021, 00:18
Hat sich bedankt: 10 Mal
Danksagung erhalten: 10 Mal

Re: Image Version 0.0.9

Beitrag von jottt »

aktuell kannst du den hm2 nur als eigenes gerät einrichten, sprich:
multi_regler Anleitung folgen und dann Config anlegen mit:
Regler# 54
IP deines HM2
Port ist immer 9522
WR_Addresse ist egal

Ich habe ihn mit Unicast am Laufen (also: HM2 schickt seine Daten zur Solaranzeige), Multicast hat vermutlich noch niemand getestet.
Für Unicast muss man den HM2 konfigurieren, default macht er nur Multicast, dafür muss der Pi allerdings im gleichen Netz sein (und mit Docker kannste das knicken).

Für Unicast: Im Sunnyportal mit vollen Rechten anmelden, auf Config -> Geräte -> HM2 Eigenschaften, ganz unten auf "Bearbeiten und dann am Ende der Liste bei Zählerconfig die IP der Solaranzeige eintragen.

EDIT: Ganz wichtig: Config auf "Erweitert" stellen.

DeBaschdi
Beiträge: 157
Registriert: Mo 10. Aug 2020, 08:13
Hat sich bedankt: 7 Mal
Danksagung erhalten: 22 Mal

Re: Image Version 0.0.9

Beitrag von DeBaschdi »

Multicast sollte im Network Mode Host funktionieren (ports durchreichen wird damit auch überflüssig)
Alternativ lässt sich sogar auf dem Host eine Bride anlegen, in der Bridge muss das eth Device rein, der Container kann sich zusätzlich in der Bridge breit machen, bekommt dann sogar vom dhcp Server eine eigene IP.

Aber mal unter uns, Multicast ist hässlich und gehört verboten.

jottt
Beiträge: 97
Registriert: Mo 1. Mär 2021, 00:18
Hat sich bedankt: 10 Mal
Danksagung erhalten: 10 Mal

Re: Image Version 0.0.9

Beitrag von jottt »

ok den Hostmode kenne ich, der bringt allerdings ganz eigene unerwartete Sicherheitsrisiken mit sich. Tiefer war ich noch nicht eingestiegen, da es ja zum Glück seit Neuestem jetzt auch den vernünftigeren Unicast beim HM2 gibt. Vielleicht kann er dann in 5 Jahren auch ModbusTCP.

Ich weiß nicht, was die Softwareabteilung bei SMA so konsumiert um auf ihre genialen Ideen zu kommen. Multicast ist nicht nur hässlich, es wird höllisch, sobald ein bisschen Netzabsicherung ins Spiel kommt.

Helmut1011
Beiträge: 10
Registriert: Fr 27. Nov 2020, 09:40
Hat sich bedankt: 2 Mal

Re: Image Version 0.0.9

Beitrag von Helmut1011 »

Erst einmal herzlichen Dank für das Docker image. Einrichten in nested Proxmox LXC > Docker hat problemlos funktioniert.

Was mich wundert: InfluxDB/Solaranzeige bekommt die Daten vom huawei SmartLogger 3000

Code: Alles auswählen

Solaranzeige    | 26.03. 15:03:01 *  -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
Solaranzeige    | 26.03. 15:03:57    -Schleife 1 Ausgang...
Solaranzeige    | 26.03. 15:03:57    -OK. Datenübertragung erfolgreich.
Solaranzeige    | 26.03. 15:03:57 |----------------   Stop   huawei_SL.php    --------------------------
Solaranzeige    | 26.03. 15:04:01 |----------------   Start  huawei_SL.php    --------------------------
Solaranzeige    | 26.03. 15:04:02 *- -Array
Solaranzeige    | (
Solaranzeige    |     [zentralerTimestamp] => 1616767451
Solaranzeige    |     [DC_Strom] => 92
Solaranzeige    |     [PV_Leistung] => 6054
Solaranzeige    |     [CO2_Ersparnis] => 6745.68
Solaranzeige    |     [WattstundenGesamt] => 6765900
Solaranzeige    |     [WattstundenGesamtHeute] => 88600
Solaranzeige    |     [Sonnenstunden] => 9.2
...
.. aber ich sehe in Grafana kein Dashboard für den SmartLogger 3000.

Liegt das entweder oder:
a) Weil die Docker Version noch nicht die neueste Solaranzeige Regler enthält (SmartLogger = 49)
b) Weil für einige Regler noch kein Dashboard vorhanden ist?

Wenn b), gibt es eine Anleitung wie ich mir anhand von vorhandenen Templates ein Dashboard für den SM3000 baue?

.. und gleich noch Frage c:

Gibt es eine Anleitung, wie ich Daten vom vzlogger (Stromzähler) in mein Dashboard bekomme?

Leider habe ich es nicht geschafft, statt der lokalen InfluxDB meine externe InfluxDB zu nehmen, die die Daten des vzlogger empfängt.
curl liefert mir dort immer error 35 (ssl) - vielleicht sind meine Let's Encrypt Certificate zu neu.. jedenfalls könnte ich die Daten vom vzlogger auch über den MQTT Broker in die solaranzeige-influx-db spielen.. für Links dafür schon einmal danke!

[Edit]

Lesen sollte man können! SmartLogger 3000 Grafana json eingelesen -> klappt.

Auch das einlesen von den vzlogger Daten klappt:
1. Neue Datenquelle in grafana hinzufügen
2. Sprache: Statt InfluxDB -> Flux (InfluxDB 2.0)
3. Dort dann Organisation/bucket einstellen + Token (read)
4. In InfluxDB die Flux Queries bauen und per copy & paste nach grafana

Durendal
Beiträge: 10
Registriert: Do 17. Sep 2020, 09:45
Hat sich bedankt: 1 Mal

Re: Image Version 0.0.9

Beitrag von Durendal »

Hallo und guten Morgen!
Ich habe heute das Update auf Image 0.1.0 gemacht.
Nachdem ich relativ lange Zeit nach einem Fehler in meiner solaredge_serie_math.php gesucht hab, läuft die Solaranzeige wieder.
Ich hatte in meiner cron Datei noch eine Umleitung auf /dev/null drin, daher habe ich das php.log nicht gesehen.
Jetzt zu meiner Frage: der Apache Webserver startet bei mir nicht.
Auszug aus dem solaranzeige.log:

Code: Alles auswählen

Starting Services...
Mosquitto is disabled...
Starting influxdb...
influxdb process was started [ OK ]
Starting Grafana Server:.
Starting Apache httpd web server: apache2 failed!
The apache2 configtest failed. ... (warning).
Starting periodic command scheduler: cron.
Den Port 80 lokal habe ich als 3080 rausgeführt.
In "docker logs Solaranzeige" habe ich gesehen, dass der Fehler irgendetwas mit einer nicht implementierten Funktion und einem Random Number Generator zu tun hat.

Code: Alles auswählen

Output of config test was:
[Mon Mar 29 08:13:31.337048 2021] [:crit] [pid 108] (38)Function not implemented: AH00141: Could not initialize rando
m number generator
Action 'configtest' failed.
The Apache error log may have more information.
Die Logs in /var/www/log/apache2 sind leer.

DeBaschdi
Beiträge: 157
Registriert: Mo 10. Aug 2020, 08:13
Hat sich bedankt: 7 Mal
Danksagung erhalten: 22 Mal

Re: Image Version 0.0.9

Beitrag von DeBaschdi »

Vermutlich ist der Hostkernel zu alt , bzw die Apache Version zu neu ?

https://askubuntu.com/questions/1323305 ... ber-genera

Ich schaus mir mal an, wenn du eine Lösung findest (Downgrade Apache ect), lass es mich wissen

Durendal
Beiträge: 10
Registriert: Do 17. Sep 2020, 09:45
Hat sich bedankt: 1 Mal

Re: Image Version 0.0.9

Beitrag von Durendal »

Ich hab das Downgrade mal versucht, kenne mich aber nicht soo gut in der Materie aus.
Leider habe ich es nicht geschafft, es werden mir keine älteren Versionen angezeigt.
Archivquellen hinzuzufügen ging auch nicht, da muss man irgendwas mit dem Keyring machen, das war mir dann zu heiß.
Prinzipiell funktioniert ja alles, was Solaranzeige angeht, also lasse ich es erstmal so.

DeBaschdi
Beiträge: 157
Registriert: Mo 10. Aug 2020, 08:13
Hat sich bedankt: 7 Mal
Danksagung erhalten: 22 Mal

Re: Image Version 0.0.9

Beitrag von DeBaschdi »

Welchen Host verwendest du denn ? Welche Kernel Version ?

Durendal
Beiträge: 10
Registriert: Do 17. Sep 2020, 09:45
Hat sich bedankt: 1 Mal

Re: Image Version 0.0.9

Beitrag von Durendal »

Achso, hätte ich auch gleich schreiben können.
Der Docker läuft auf einer Synology DS216+, der Host ist also ein Linux mit Kernel 3.10.105. Ziemlich alt, tatsächlich.

Code: Alles auswählen

Linux 3.10.105 #25426 SMP Mon Dec 14 18:45:24 CST 2020 x86_64 GNU/Linux synology_braswell_216+

Jessica
Beiträge: 7
Registriert: Di 25. Aug 2020, 20:35

Re: Image Version 0.0.9

Beitrag von Jessica »

Hallo,
jetzt muss ich doch noch einmal wegen der Solcast Skripte fragen. Ich bekomme es mit diesem Image nicht mehr zum laufen.
Ich benutze die Light Version und bekomme jetzt folgende Fehlermeldung:

Code: Alles auswählen

------------------------- Start (solcast_light_config.ini)
Traceback (most recent call last):
  File "/pvforecast/SolCastLight.py", line 23, in <module>
    mySolCast = SolCast(config)
  File "/pvforecast/PVForecast/solcast.py", line 39, in __init__
    self.storePath     = self.config['OpenWeatherMap'].get('storePath')
  File "/usr/lib/python3.9/configparser.py", line 960, in __getitem__
    raise KeyError(key)
KeyError: 'OpenWeatherMap'
Das sagt mir leider z.Z. gar nichts. Kann mir jemand einen Wink in die richtighe Richtung geben, wie ich den Fehler weiter einkreisen kann.

Vielen Dank
Jessie

Antworten