76_SMAInverter.pm - Abfrage von SMA Wechselrichter

Begonnen von sct14675, 28 Juli 2016, 11:01:16

Vorheriges Thema - Nächstes Thema

300P

#1905
Hast du für die SMA-Geräte feste IP Inder Fritzbox vermerkt ?

Wenn nicht - dann ist es logisch das irgendwann einmal (bei Fritzboxwechsel / Neustart / Stromausfall etc.) die IP-Adresse(n) evtl. neu (anderslautend) vergeben werden und danach auch nicht mehr zu den in FHEM hinterlegten IP-Adressen passen.

Vorgehensweise:
1. In der Fritzbox (oder deinem evtl. zusätzlich vorhandenen DHCP-Server) die derzeitigen aktuellen Adressen als feste IP vermerken.

2. Schreib auf welche Feste-IP (Fixed-IP) in der Fritzbox welcher Seriennummer zugeordnet hast

3. Schau in die FHEM-Device deiner SMA-Geräte und trage statt der dort stehen IP in der Definition die "richtige" IP-Adresse zu dort im FHEM-Device hinterlegten passenden Seriennummer ein.

Wenn du dann alle 3 Geräte mit der richtigen IP in deinen zugehörigen FHEM-Device eingetragen hast müsste / wird es wieder klappen ;) denn die Verbindung der Wechselrichter und dem Homemanger zu SMA klappt ja sauber.
Deshalb gibt es keinen anderen Grund warum es in deinem Heimnetz nicht klappen sollte.


Zitat von: Vorhand am 19 Mai 2026, 16:16:20Home Manager 2 638 Ser: 190170xx38  Sunny Home Manager 2.0
Mit der IP....37 scheint aktuell der EM/HM erreichbar zu sein - das ist aber ein anderes FHEM-Modul für diesen Energymeter :)
Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

Vorhand

Danke, die IP-Adressen sind bereits in der FritzBox fixiert.
Es gibt aber nur 2 LAN-Verbindungen, die .37 und die .42
Das SMAInverter Programm geht nur mit der .42 und der Seriennummer des Sunny-Island.
Mit der .37 geht es nicht.
Deine Aussage "Schau in die FHEM-Device deiner SMA-Geräte"... willst du damit sagen, dass das fhem-Programm für alle Geräte definiert werden muss?
Nach meiner Fritzbox haben nur 2 Geräte eine IP - wobei nur die .42 mit dem Sunny Island geht. Der hat leider keine PV-Leistung.
Wie kann ich den Sunny Tripower erreichen?
Viele Grüße
Raspi,Homatic,ESP,Fronius,KIA-PHEV,DHW300,Mi,Shelly

300P

#1907
Zitat von: Vorhand am 19 Mai 2026, 16:16:20Die Fritzbox zeigt im Heimnetz SMA1902xxxx38 unter der IP 192.168.xx.37
Hier sagst du IP.37 für den HM20 mit der SMAXXXXX38.
Wurde denn der Wert zudem eventuell statt aus dem HM20 mit dem FHEM-SMAEM-Nodul statt von dem Wechselrichter "STP9000TL" genommen ???

Zitat von: Vorhand am 19 Mai 2026, 16:16:20Mit 192.168.xx.42 funktioniert es - allerdings steht in den Readings INV_TYPE Sunny Island 4.4M. Wo die .42 herkommt ??
Hier das die IP .42 die des SI4.4M-11 428      Ser: 126104xx28  Sunny Island 4.4M (Batterie)

Der dritte (der STP9000) ist anscheinen verloren gegangen in der Fritzbox wenn du ihn nicht siehst.
Schalte ihn einmal von Hand für ein paar Minuten spannungsfrei bzw. komplett einmal aus. Aber erst wenn die die Sonne weg ist und keine Spannung an den DC-String anliegt......
 
Prüf dann nochmals in der FB welche IP der "STP 9000TL-20 902  Ser: 305099xx02  Sunny Tripower 9000TL-20" bekommt.
Eventuell siehst du im SMA-Portal in den Geräteparametern aber auch dessen zuletzt zugeordnete Ip ?!?


Oder schau einmal ins Handtuch wie du ihn per WLAN über seinen AP direkt erreichen kannst (letzte Möglichkeit)

Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

300P

Zitat von: Vorhand am 19 Mai 2026, 16:16:20Wie komme ich an das Signal mit der PV-Leistung der Anlage??

Alles geklärt ?
Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

cwagner

Mir fällt auf, dass ich jeden Tag kurz nach 3 Uhr vielfach diese Perlmeldungen im Systemlog vorfinde:
2026.08.27 03:05:53 1: PERL WARNING: Argument "-" isn't numeric in division (/) at ./FHEM/76_SMAInverter.pm line 1391.
2026.08.27 03:05:53 1: PERL WARNING: Argument "-" isn't numeric in division (/) at ./FHEM/76_SMAInverter.pm line 1392.

In den entsprechenden Zeilen wird die Ladeinformation der Batterie aufgefrischt. Vermutlich macht (neuerdings?) der Inverter (in meinem Fall ein Tri-Power 6 SE) Housekeeping und die Variable ist zu dem Zeitpunkt Null?

Kann ich etwas tun? Klar, ich könnte das mit verbose=0 unsichtbar machen, das widerstrebt mir aber. Andererseits bin ich nicht fit genug, einen Patch vorzuschlagen, der den Fall abfängt.

Christian
320 Devices in MariaDB: Lambda WP an Ecolink-Speicher, FBH, Solarthermie, kontroll. Lüftung mit WRG und Erdwärmetauscher
HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM ESP3), MQTT2, Shelly, SMA (eC2, PV, HM, HS)
DOIF (Perl/uiTable), PID20,Micropelt IRTV, SolarForecast auf PI5

300P

Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

300P

#1911
Zitat von: cwagner am 27 August 2026, 11:18:23Kann ich etwas tun? Klar, ich könnte das mit verbose=0 unsichtbar machen, das widerstrebt mir aber. Andererseits bin ich nicht fit genug, einen Patch vorzuschlagen, der den Fall abfängt.

Welche Version nutzt du ???

In der "meinen" Version V2.30.3 vom 14.05.2026 steht da :
1391             }
1392        
Das kann nicht sein ;)


In der letzten (ganz oben auf der Seite) vom 7.12.25 von MAX:
1391                 push(@row_array, ($sc?"bat_loadtoday ".($inv_BAT_LOADTODAY/1000):"BAT_LOADTODAY ".$inv_BAT_LOADTODAY)."\n") if ($inv_BAT_LOADTODAY ne "-");
1392             }


und in der aus den FHEM-SVN:
1391                                 push(@row_array, ($sc?"bat_p_charge ".($inv_BAT_P_Charge/1000):"BAT_P_CHARGE ".($inv_BAT_P_Charge))."\n"); #TTT
1392                                 push(@row_array, ($sc?"bat_p_discharge ".($inv_BAT_P_Discharge/1000):"BAT_P_DISCHARGE ".($inv_BAT_P_Discharge))."\n"); #TTT

Ich gehe mal von Version der aus dem SVN aus:
#################################################################################################################
# $Id: 76_SMAInverter.pm 30019 2025-06-02 17:58:30Z MadMax $
#################################################################################################################
Da fehlt noch die Prüfung auf "-" ;)

Sag bitte Bescheid - Danke !



EDIT:
Angepasst / geändert
->>>MadMax ist seit Januar "verschollen"

Version aus dem SVN -> angepasst (Anlage)
Version 2.30.4 angepasst (Anlage)

Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

cwagner

#1912
Vielen Dank, ja, ich hatte die Version aus dem SVN. Ich werde jetzt noch schnell die angepasste Version einspielen und dann berichten.

Christian

Edit: Heute Nacht waren damit die Log-Einträge verschwunden. Ich habe dann gleich Deine neueste Version heruntergeladen, also die 76_SMAInverter V2.30.4.pm
320 Devices in MariaDB: Lambda WP an Ecolink-Speicher, FBH, Solarthermie, kontroll. Lüftung mit WRG und Erdwärmetauscher
HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM ESP3), MQTT2, Shelly, SMA (eC2, PV, HM, HS)
DOIF (Perl/uiTable), PID20,Micropelt IRTV, SolarForecast auf PI5

300P

PS:
Daran denken das ihr die Zugriffsrechte nach dem download / kopieren für FHEM richtig setzt und ab dann jetzt mi dem hinzufügen (vorher schauen was da schon steht / stand) :

attr global exclude_from_update 76_SMAInverter.pm

das "Überbraten" der Version mit der alten Version bei den "normalen" FHEM-Update vehindern müsst ;)
Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.