Seite 1 von 2

Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 08:57
von Homer-S
Hallo littleyoda,

ich bin auf der Suche nach einem Weg die SMA Daten abzugreifen über dein Skript gestolpert.
Mein SAM WR hat vor paar Tagen unvermittelter Weise den Dienst an der Modbusschnittstelle eingestellt. Alle Versuche von Neustart des WR oder der Schnittstelle haben nur kurz und seit 2 Tagen gar nicht mehr geholfen.
Die Logs zeigen ein Update durch SMA, SMA reagiert aber so komplett gar nicht.
Der Homemanager 2.0 liefert noch die Daten auch an OH, aber da fehlen die Erzeugungsdaten des WR.

Da im Sunnyportal die Werte aber fleißig ankommen, muss der WR ja noch Daten senden.
Deshalb nun mein Versuch, die Daten irgendwie abzufangen.
Ich nutze (leider) kein HA sondern Openhab, bin in python nicht sehr fit und das ist der Grund weshalb ich dir eigentlich schreibe.

Welcher Teil des codes fragt die Daten ab? Ich würde gerne das nutze um
1. zu sehen, ob ich die Daten überhaupt bekomme und
2. mir das Skript dann "umschriebe" um die Daten per MQTT weiter zu senden.

Das Integrieren in OH bekomme ich dann wieder hin.

Ich hoffe du liest das und kannst mir ein wenig helfen.

Danke

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 12:31
von little.yoda
Hi

Für die eigentlichen Daten ist die folgende Library zuständig:
https://github.com/littleyoda/pysma

Unter Linux kannst du die Verbindung direkt von der Kommandozeile testen:

Code: Alles auswählen

cd /tmp
git clone https://github.com/littleyoda/pysma
cd pysma/
python -m venv venv
. venv/bin/activate
ln -s pysma pysmaplus
pip install -e .
python3 example.py  discovery
python3 example.py  identify 192.168.2.80

in dem Verzeichnis scripts/pysma2mqtt gibt es ein Skript, welches die Daten per mqtt zur Verfügung stellen kann.

Gruß,
Sven

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 14:16
von Homer-S
Danke Sven,

ich musst ein paar Module nachinstallieren und irgendwie hatte mein Pyhton nicht die richtige Version und ...

Aber mit KI hab ich es zum Laufen bekommen.
Das ist der Output:

Code: Alles auswählen

python3.11 example.py discovery
Library version: 0.3.22.4
Discovery...

192.168.100.48:9522
192.168.100.41:9522
(venv) homer@vmubuntu222:/tmp/pysma$ python3.11 example.py  identify 192.168.100.48
Library version: 0.3.22.4
Energy Meters are not identified using this method.

Identification can take up to 30 seconds...

   ERROR:     pysmaplus.device_speedwire:  Login failed!
   ERROR:       pysmaplus.device_ennexos:  Error requesting https://192.168.100.48/api/v1/system/info  [Timeout]
   ERROR:       pysmaplus.device_ennexos:  Error requesting http://192.168.100.48/api/v1/system/info  [Timeout]
         Access              Remarks
   speedwireinv     maybe    only unencrypted Speedwire is supported
        ennexos    failed    https
        ennexos    failed    http
     webconnect    failed    https://192.168.100.48
     webconnect    failed    http://192.168.100.48
    speedwireem    failed    no multicast packet received.
           shm2    failed    needs Installer Grid Guard Code. Usage not recommended.
48 ist der WR, deshalb habe ich den abgefragt.

Was mach ich nun damit oder ist das das Anzeichen, dass mein Modbus(=Speedwire??) nicht mehr geht?

Danke

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 14:55
von little.yoda
Hast du ein Password für den Wechselrichter?
Kannst du mit dem Sunny-Explorer auf den WR zugreifen?
https://www.sma.de/produkte/energiemana ... y-explorer
Das Pwd ist nicht gleich dem Password welches du im Sunny-Portal nutzt.

default für den "user"-Account ist 0000
für den "installer"-Account 1111

Probiere mal:

Code: Alles auswählen

 python example.py speedwire user 0000 192.168.100.48 
1. Meine Speedwire funktioniert nicht in jeden Fall. Es gibt Fälle, wo meine Implementierung aus unbekannten Gründen schlicht nicht funktioniert.
=> https://github.com/littleyoda/ha-pysmap ... eedwire.md

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 15:09
von Homer-S
JUHU,
python3.11 example.py speedwire installer 'xxyyXXYY' 192.168.100.48

hat geklappt:

Code: Alles auswählen

  name            STP 9000TL-20
             type          Solar Inverters
     manufacturer                      SMA
       sw_version                 2.56.3.R
=====================================================================================
Device-ID: 305155929
           inverter_class           8001  Solar Inverters
            inverter_type           9102  STP 9000TL-20
                    total      56854.291 kWh
                    today          30902 Wh
           spot_dc_power1           1420 W
           spot_dc_power2           1359 W
               grid_power           2766 W
         spot_dc_voltage1         508.59 V
         spot_dc_voltage2         489.87 V
         spot_dc_current1          2.793 A
         spot_dc_current2          2.776 A
           grid_frequency           50.0 Hz
      InverterTemperature          76.53 °C
          GridRelayStatus             51  Closed
   GeneralOperatingStatus            295  MPP
          inverter_status            307  OK
              meter_yield            0.0 kWh
             Insulation_1              7 mA
             Insulation_2       1146.944 kOhm
                 Firmware       2.56.3.R
           spot_ac_power1            923 W
           spot_ac_power2            918 W
           spot_ac_power3            924 W
         spot_ac_voltage1         232.56 V
            ac_voltage_l1         232.56 V
            ac_voltage_l2         233.36 V
            ac_current_l1          3.972 A
            ac_current_l2          3.948 A
            ac_current_l3           3.96 A
---------------------------------------------------------------------------
Also versuch ich das Ergebnis jetzt noch per MQTT zu versenden ...

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 15:31
von Homer-S
Ich werde mir einen eigenen kleinen LXC Container machen, der die Daten abfragt und dann weiter sendet.
Da geh ich genau so vor, nur, dass ich das nicht im TMP Ordner speichere, oder?

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 15:34
von little.yoda
ja, genau.
/tmp nutzte ich nur gerne zum testen, damit bei dem Benutzer nichts geändert wird.

In der Regel musst du dann vor jedem Programmstart die Python-Umgebung mit activate starten. Danach kannst du dann das gewünschten Programme ausführen.

Code: Alles auswählen

. venv/bin/activate

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 15:37
von Homer-S
Brauche ich das auch, wenn ich den Container ausschließlich für die Aufgabe nutze?

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 15:52
von little.yoda
Wenn der Container nur dafür genutzt wird, kannst du es auch direkt ohne venv installieren.

Re: Frage zu ha-pysmaplus

Verfasst: 08.10.2025, 18:16
von Homer-S
Herzlichen Dank!
ich habe nun die Werte wieder in Openhab!

Das example.py musste nur minimal ergänzt werden und nun sendet es alle s5sec die Werte.

Echt Super. Danke