Neue Versionen und Support zum Modbus-Modul

Begonnen von StefanStrobel, 20 August 2017, 12:11:08

Vorheriges Thema - Nächstes Thema

straightshooter

Hallo Stefan

Ich habe eine AP310 Lüftungsanlage an mein FHEM über ModbusAttr angebunden.
Bis jetzt hat alles seit Jahren wunderbar funktioniert.
Außer Updates von FHEM und Raspberry wurde an dem System nichts geändert.


Gefühlt seit dem letzten FHEM ModbusAttr Update habe ich nun Probleme mit den Werten, die ich von der Anlage empfange.
Alle Werte, die ich nun von der Anlage empfange, sind jetzt nur noch sinnlos: falsche Werte, viel zu große Werte, oder dann wieder "0".
Gleichzeitig sind manche dieser Werte auch nicht mehr konstant. Bei der Temperatur wechselt der falsche Wert immer wieder sehr extrem.
Es kommt aus der Anlage kein einziger richtiger Wert mehr zustande.

Genau kann ich nicht sagen, seit wann die Werte falsch sind, da ich eine Alarmmeldung nur generiere, wenn keine Werte empfangen werten.
In dem Fall werten zwar weiterhin die Werte empfangen, leider nur nicht mehr korrekt.


Die Lüftungsanlage stromlos zu setzen und neu zu starten hat nichts gebracht.
Genauso wie der Restart vom Raspberry.
Über eine firmenspezifische APP werden die Werte korrekt ausgegeben, also kann ich ein Anlagendefekt wohl ausschließen.

Wurde im letzten Update was geändert, was nun eine Anpassung von Einstellungen erfordert?
Anbei sende ich noch meine Einstellungen und ein Bild von den Ergebnissen:


Viele Grüße

StefanStrobel

Hallo,

Probier doch einfach mal auf eine frühere Version von 98_Modbus.pm zurückzugehen. Wenn es dann wieder geht, ist es offensichtlich ein Bug in der neuen Version. 98_ModbusAttr.pm selbst wird es eher nicht sein, da die eigentliche Funktionalität im Basismodul steckt.
Für die weitere Fehlersuche wäre ein Auszug aus dem Log mit verbose 5 sehr hilfreich.

Gruß
    Stefan

straightshooter

OK ... hab gerade die beiden Dateien 98_Modbus.pm und 98_ModbusAttr durch ältere ersetzt.
Jetzt klappt alles wieder.

Danke schon mal für den Tip.
Mein Fehler war ich habe nur die 98_ModbusAttr ersetzt ... da hat es nicht funktioniert.

Hier noch die Log-Datei (Auszug aus GesamtLog nach Einspielen der fehlerhaften Dateien)

StefanStrobel

Ok, wenn es mit der alten Version wieder funktioniert, dann läuft da irgend etwas mit der aktuellen Version schief.
Das sollte sich finden und korrigieren lassen.
Könntest Du auch noch die komplette Konfiguration für das Device sowie das Log mit der alten funktionierenden Version posten?

Gruss / vielen Dank
   Stefan

straightshooter


StefanStrobel

Vielen Dank!
Ich glaube ich habe das Problem erkannt.
RevRegs scheint bei der letzten Umstrukturierung im Code kaputt gegangen zu sein.
Update kommt ...

Gruß / Thanx
    Stefan

StefanStrobel

Hallo,

ich habe den Bug behoben und eine neue Version eingecheckt.
Ab morgen wird die dann per Update verteilt.

Gruss
   Stefan

straightshooter

Danke Stefan :-)

Nach dem heutigen Update läuft wieder alles korrekt. 

der-Lolo

Hallo Stefan - und mitleser,
ich habe mir einen Invertek Optidrive E3 Frequenzumrichter gekauft - und möchte diesen mit dem Modbus/RTU Modul in FHEM einbinden.
Aus den gegebenen Daten werde ich allerdings nicht richtig schlau.

Ich benutze den USB-RS485 Adapter von IN-Circuit und bin schon unsicher was die Stellungen der DIP-Switches angeht.
Ich habe es auch noch nicht geschafft eine vernünftige Antwort des FUs zu bekommen.

Ich habe zwar vor etwa 5 Jahren schon eine Modbus/RTU definition für meinen Wärmemengenzähler erstellt, diese läuft aber so problemlos das ich da nie wieder ran musste und ich über die Jahre natürlich die vorgehensweise vergessen habe.

Als Anhang mal die Seite der BA des FUs auf der es um den Modbus geht...

Fühlt sich jemand in der lage mir zu helfen - sodass ich z.b. mal ein Beispiel Reading habe?
Das wäre toll!


StefanStrobel

Hallo,

zuerst ein IO-Device auf den USB-Adapter:

define ModbusRS485E3 /dev/ttyUSBXY@115200

dabei muss natürlich das korrekte Device verwendet werden. Ich würde nach dem Einstecken einfach mit dmesg schauen, welches Device es ist.

Dann ein ModbusAttr:

define Frequenzumrichter ModbusAttr 1 60

unter der Annahme, dass die Modbus-Id 1 ist. Die kann vermutlich irgendwo eingestellt werden.
Alle 60 Sekunden soll abgefragt werden.


# alle definierten Objekte auch abfragen:
attr Frequenzumrichter dev-h-defPoll 1

# Register 22 (könnte auch 21 sein) ist laut Doku Drehzahl
attr Frequenzumrichter obj-h22-reading Drehzahl

# Wert ist *10 gespeichert
attr Frequenzumrichter obj-h22-expr $val / 10

# vermutlich ein unsigned long
attr Frequenzumrichter obj-h22-unpack n

# alle Debug logs anzeigen
attr Frequenzumrichter verbose 5
attr ModbusRS485E3 verbose 5


und dann mal testen und das Log posten.
Ich hab das nicht getestet, es kann also sein, dass gleich eine Fehlermeldung kommt ;-)

Gruss
   Stefan

der-Lolo

Ok Stefan, tausend Dank...
So bekomme ich zumindest schonmal eine Antwort vom Gerät..
Wobei es auf dem Schreibtisch steht, ein Motor ist noch nicht angeschlossen - deswegen kommt mir die Drehzahl von 30 komisch vor ;)


2021.03.21 13:56:01 1: Including fhem.cfg
2021.03.21 13:56:01 3: WEB: port 8083 opened
2021.03.21 13:56:02 2: eventTypes: loaded 17 lines from ./log/eventTypes.txt
2021.03.21 13:56:02 3: modbusRTU: defined as /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KFFLW-if00-port0@115200
2021.03.21 13:56:02 3: Optidrive: defined master with id 1, protocol RTU and interval 5
2021.03.21 13:56:02 1: Including ./log/fhem.save
2021.03.21 13:56:02 4: Optidrive: GetIOHash (called from NotifyFn) did not find valid IODev hash key, calling SetIODev now
2021.03.21 13:56:02 5: Optidrive: SetIODev called from GetIOHash
2021.03.21 13:56:02 3: Optidrive: RegisterAtIODev called from SetIODev registers Optidrive at modbusRTU with id 1, MODE master, PROTOCOL RTU
2021.03.21 13:56:02 5: Optidrive: SetState called from SetIODev with opened sets state and STATE to opened
2021.03.21 13:56:02 3: Optidrive: Notify / Init: using modbusRTU for communication
2021.03.21 13:56:02 4: Optidrive: UpdateTimer called from NotifyFn with cmd start sets timer to call update function in 0.0 sec at 13:56:02.976, interval 5
2021.03.21 13:56:02 4: modbusRTU: Notify / Init: opening connection
2021.03.21 13:56:02 5: modbusRTU: open called from NotifyFn, busyOpenDev 0
2021.03.21 13:56:02 4: modbusRTU: open trying to open connection to /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KFFLW-if00-port0@115200
2021.03.21 13:56:02 3: Opening modbusRTU device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KFFLW-if00-port0
2021.03.21 13:56:03 3: Setting modbusRTU serial parameters to 115200,8,N,1
2021.03.21 13:56:03 3: modbusRTU device opened
2021.03.21 13:56:03 0: Featurelevel: 6
2021.03.21 13:56:03 0: Server started with 11 defined entities (fhem.pl:23904/2021-03-07 perl:5.028001 os:linux user:fhem pid:4049)
2021.03.21 13:56:04 4: Optidrive: GetUpdate (V4.4.01 - 18.3.2021) called from Fhem internal timer
2021.03.21 13:56:04 4: Optidrive: UpdateTimer called from GetUpdate with cmd next sets timer to call update function in 5.0 sec at 13:56:09.097, interval 5
2021.03.21 13:56:04 5: Optidrive: CreateUpdateList full object list: h22
2021.03.21 13:56:04 5: Optidrive: CreateUpdateList will request h22 len 1 Drehzahl
2021.03.21 13:56:04 4: Optidrive: CombineUpdateHash objHash keys before combine: h22
2021.03.21 13:56:04 5: Optidrive: CombineUpdateHash tries to combine read commands
2021.03.21 13:56:04 5: Optidrive: CombineUpdateHash keys are now h22
2021.03.21 13:56:04 4: Optidrive: GetUpdate will now create requests for h22 len 1 (Drehzahl)
2021.03.21 13:56:04 4: Optidrive: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 1, read fc 3 h22, len 1, master device Optidrive, reading Drehzahl (getUpdate for Drehzahl len 1)
2021.03.21 13:56:04 5: modbusRTU: QueueRequest called from DoRequest with h22, qlen 0 from master Optidrive through io device modbusRTU
2021.03.21 13:56:04 5: modbusRTU: StartQueueTimer called from QueueRequest sets internal timer to process queue in 0.000 seconds
2021.03.21 13:56:04 5: modbusRTU: ProcessRequestQueue called from Fhem internal timer as queue:modbusRTU, qlen 1, request: request: id 1, read fc 3 h22, len 1, master device Optidrive, reading Drehzahl (getUpdate for Drehzahl len 1), queued 0.00 secs ago
2021.03.21 13:56:04 5: modbusRTU: checkDelays sendDelay, last send to same device was never, required delay is 0.1
2021.03.21 13:56:04 5: modbusRTU: checkDelays commDelay, last communication with same device was never, required delay is 0.1
2021.03.21 13:56:04 5: modbusRTU: checkDelays busDelayRead, last activity on bus was never, required delay is 0
2021.03.21 13:56:04 5: modbusRTU: checkDelays clientSwitchDelay is not relevant
2021.03.21 13:56:04 4: modbusRTU: ProcessRequestQueue (V4.4.01 - 18.3.2021) qlen 1, sending 01030016000165ce via /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KFFLW-if00-port0@115200, read buffer empty,
request: id 1, read fc 3 h22, len 1, master device Optidrive, reading Drehzahl (getUpdate for Drehzahl len 1), queued 0.01 secs ago
2021.03.21 13:56:04 5: modbusRTU: Send called from ProcessRequestQueue
2021.03.21 13:56:04 5: SW: 01030016000165ce
2021.03.21 13:56:04 5: modbusRTU: readFn buffer: 010302013579c3
2021.03.21 13:56:04 5: modbusRTU: ParseFrameStart called from ReadFn protocol RTU expecting id 1
2021.03.21 13:56:04 4: modbusRTU: ParseFrameStart (RTU, master) extracted id 1, fCode 3 and potential data 020135
2021.03.21 13:56:04 5: modbusRTU: HandleResponse called from ReadFn
2021.03.21 13:56:04 5: modbusRTU: ParseResponse called from HandleResponse
2021.03.21 13:56:04 5: modbusRTU: CheckChecksum (called from ParseResponse): 79c3 is valid
2021.03.21 13:56:04 5: modbusRTU: now parsing response data objects, master is Optidrive relay is undefined
2021.03.21 13:56:04 5: Optidrive: ParseDataString called from HandleResponse with data hex 0135, type h, adr 22, op read
2021.03.21 13:56:04 5: Optidrive: SplitDataString called from ParseDataString with data hex 0135, type h, adr 22, valuesLen 1, op read
2021.03.21 13:56:04 5: Optidrive: CreateDataObjects called from ParseDataString with objList h22
2021.03.21 13:56:04 5: Optidrive: CreateDataObjects sortedList h22
2021.03.21 13:56:04 5: Optidrive: CreateDataObjects unpacked 0135 with n to 309
2021.03.21 13:56:04 5: Optidrive: perl expression eval evaluated package main; my @val = @{$oRef->{'%val'}};$val / 10 to 30.9
2021.03.21 13:56:04 4: Optidrive: CreateDataObjects assigns value 30.9 to Drehzahl
2021.03.21 13:56:04 5: Optidrive: ParseDataString created 1 readings
2021.03.21 13:56:04 4: modbusRTU: HandleResponse done, current frame / read buffer: 010302013579c3, id 1, fCode 3,
request: id 1, read fc 3 h22, len 1, master device Optidrive, reading Drehzahl (getUpdate for Drehzahl len 1), queued 0.03 secs ago, sent 0.02 secs ago,
response: id 1, fc 3, h22, len 1, values 0135
2021.03.21 13:56:04 5: modbusRTU: ResetExpect for HandleResponse from response to idle
2021.03.21 13:56:04 5: modbusRTU: DropFrame called from ReadFn - drop 010302013579c3

StefanStrobel

Ich würde das laut Doku auch eher als Soll-Frequenz interpretieren. Eine echte Drehzahl kann der FU ja nicht messen.

Gruß
   Stefan

ch.eick

#747
Hallo zusammen,
ich habe da ein Phänomen, das ich nicht wirklich verstehe.

Ist-Situation:
2 Wechselrichter mit 100% identischer Konfiguration
  - gleiche Firmware
  - nur die IP-Adresse ist unterschiedlich
  - Die Netzwerkverbindung ist bis auf die letzte Netzwerkleitung identisch
  - Alle Werte werden bereits ausgelesen und als reading abgelegt, auch wenn sie noch auf 0.00 stehen

Der erste WR läuft mit dieser Konfiguration bereits seit fast 2 Jahren, der zweite ist jetzt hinzu gekommen.

Das Problem: beim neuen WR kommt es zu sehr häufigen connect/disconnect
Hier ein kurzes Beispiel, was minütlich auftritt.

2021.03.23 09:12:00.598 4: WR_2: HandleResponse done, current frame / read buffer: 00810000001347031031303333353935370000000000000000, id 71, fCode 3, tid 129,
request: id 71, read fc 3 h6, len 8, tid 129, master device WR_2, reading Inverter_article_number (getUpdate for Inverter_article_number len 8), queued 0.45 secs ago, sent 0.08 secs ago,
response: id 71, fc 3, h6, len 8, values 31303333353935370000000000000000
2021.03.23 09:12:00.598 5: WR_2: ResetExpect for HandleResponse from response to idle
2021.03.23 09:12:00.599 5: WR_2: StartQueueTimer called from HandleResponse sets internal timer to process queue in 0.000 seconds
2021.03.23 09:12:00.599 5: WR_2: DropFrame called from ReadFn - drop 00810000001347031031303333353935370000000000000000
2021.03.23 09:12:00.610 3: 192.168.178.19:1502 disconnected, waiting to reappear (WR_2)
2021.03.23 09:12:00.617 5: HttpUtils url=http://192.168.178.19:1502/
2021.03.23 09:12:00.617 4: IP: 192.168.178.19 -> 192.168.178.19
2021.03.23 09:12:00.620 5: WR_2: ProcessRequestQueue called from Fhem internal timer as queue:WR_2, qlen 42, request: request: id 71, read fc 3 h14, len 8, tid 218, master device WR_2, reading Inverter_serial_number (getUpdate for Inverter_serial_number len 8), queued 0.47 secs ago
2021.03.23 09:12:00.620 5: WR_2: open called from ProcessRequestQueue, busyOpenDev 1
2021.03.23 09:12:00.620 5: WR_2: ProcessRequestQueue will return, device is disconnected, qlen 42, try again in 1 seconds
2021.03.23 09:12:00.620 5: WR_2: StartQueueTimer called from ProcessRequestQueue sets internal timer to process queue in 1.000 seconds
2021.03.23 09:12:00.622 3: 192.168.178.19:1502 reappeared (WR_2)
2021.03.23 09:12:00.630 4: WR_2: UpdateTimer called from OpenCB with cmd start sets timer to call update function in 59.4 sec at 09:13:00.000, interval 60
2021.03.23 09:12:04.101 5: WR_2: ProcessRequestQueue called from Fhem internal timer as queue:WR_2, qlen 42, request: request: id 71, read fc 3 h14, len 8, tid 218, master device WR_2, reading Inverter_serial_number (getUpdate for Inverter_serial_number len 8), queued 3.95 secs ago
2021.03.23 09:12:04.101 5: WR_2: checkDelays clientSwitchDelay is not relevant
2021.03.23 09:12:04.102 5: WR_2: checkDelays sendDelay, last send to same device was 3.577 secs ago, required delay is 0.1
2021.03.23 09:12:04.102 5: WR_2: checkDelays busDelayRead, last activity on bus was 3.507 secs ago, required delay is 0
2021.03.23 09:12:04.102 5: WR_2: checkDelays commDelay, last communication with same device was 3.507 secs ago, required delay is 0.1


Getestet habe ich bereits folgendes:

Beide WR aktiv -> WR_2 connect/disconnect
Nur WR-2 aktiv -> WR_2 connect/disconnect
WR_1 hat keine Probleme dieser Art


Nun mein Hilfegesuch, trotz verbose 5 kann ich nicht erkennen, warum es zu diesen reconnect kommt.
Was hätte ich für weitere Diagnosemöglichkeiten?

VG
    Christian

List:

Internals:
   DEF        71 60 192.168.178.19:1502 TCP
   DeviceName 192.168.178.19:1502
   EXPECT     idle
   FUUID      60192f14-f33f-61a8-570e-95a483c2a0f83537
   FVERSION   98_ModbusAttr.pm:0.239440/2021-03-13
   IODev      WR_2
   Interval   60
   MODBUSID   71
   MODE       master
   MODULEVERSION Modbus 4.4.01 - 18.3.2021
   NAME       WR_2
   NOTIFYDEV  global
   NR         517
   NTFY_ORDER 50-WR_2
   PROTOCOL   TCP
   STATE     
<TABLE>

<TR>
  <TH ALIGN="MIDDLE" WIDTH="20">Batterie <span style='color:#FF0000'>Entladen</span></TH>
  <TH ALIGN="MIDDLE" WIDTH="20">aktuell</TH>
  <TH ALIGN="RIGHT" WIDTH="20">Hausverbrauch</TH>
  <TH ALIGN="MIDDLE" WIDTH="20">Erträge</TH>
</TR>

<TR>
  <TD ALIGN="MIDDLE" WIDTH="20">
    Leistung:  0000 W<br>
    Temp.: 0.0 °C<br>
    Ladung total:  0 %<br>
    Ladung Res.: 0000 Wh
  </TD>

  <TD ALIGN="RIGHT" WIDTH="20">
    DC total: 00000 W<br>
    <br>
    <br>
    PV reserve: 00000 W
  </TD>

  <TD ALIGN="RIGHT" WIDTH="20">
    von PV: 00000 W <br>
    von Batterie: 00000 W<br>
    vom Netz: 00000 W<br>
    ins Haus: 00000 W<br>
    Netz: 00000 W
  </TD>

  <TD ALIGN="RIGHT" WIDTH="20">
    Tag: 00000 KWh <br>
    Monat: 00000 KWh<br>
    Jahr: 00000 KWh<br>
    Total: 00000 KWh
  </TD>
</TR>

</TABLE>

   TCPConn    1
   TYPE       ModbusAttr
   TimeAlignFmt 2021-03-22 00:00:00
   devioLoglevel 3
   nextOpenDelay 60
   Helper:
     DBLOG:
       Act_state_of_charge:
         LogDB:
           TIME       1616410337.29791
           VALUE      0.00
       Battery_Total_AC_Charge_Energy_(AC-sideToBattery):
         LogDB:
           TIME       1616410347.89315
           VALUE      0.00
       Battery_Total_AC_Charge_Energy_(gridToBattery):
         LogDB:
           TIME       1616411189.62477
           VALUE      0.00
       Battery_Total_AC_Discharge_Energy_(batteryToGrid):
         LogDB:
           TIME       1616410347.89315
           VALUE      0.00
       Battery_Total_DC_Charge_Energy_(DC-sideToBattery):
         LogDB:
           TIME       1616410347.89315
           VALUE      0.00
       Battery_Total_DC_Discharge_Energy_(DC-sideFromBattery):
         LogDB:
           TIME       1616410347.89315
           VALUE      0.00
       Battery_charge_current:
         LogDB:
           TIME       1616410335.183
           VALUE      0.00
       Battery_gross_capacity:
         LogDB:
           TIME       1616411125.59911
           VALUE      0
       Battery_temperature:
         LogDB:
           TIME       1616410337.29791
           VALUE      0.00
       Home_own_consumption_from_PV:
         LogDB:
           TIME       1616410327.68621
           VALUE      0.00
       Home_own_consumption_from_grid:
         LogDB:
           TIME       1616410326.61799
           VALUE      0.00
       Power_DC1:
         LogDB:
           TIME       1616410341.55821
           VALUE      0.00
       Power_DC2:
         LogDB:
           TIME       1616411182.82781
           VALUE      0.00
       Total_DC_PV_Energy_(sumOfAllPVInputs):
         LogDB:
           TIME       1616411189.62477
           VALUE      0.00
       Total_DC_Power:
         LogDB:
           TIME       1616410325.56464
           VALUE      0.00
       Total_DC_Power_(sumOfAllPVInputs):
         LogDB:
           TIME       1616411128.8626
           VALUE      0.00
       Total_DC_Power_Max:
         LogDB:
           TIME       1616411128.8626
           VALUE      0.00
       Total_PV_Power_reserve:
         LogDB:
           TIME       1616411128.8626
           VALUE      0.000
   READ:
     BUFFER     
   READINGS:
     2021-03-23 09:32:17   Act_state_of_charge 0.00
     2021-03-23 09:32:11   Active_power_Phase_1 0.00
     2021-03-23 09:32:12   Active_power_Phase_2 0.00
     2021-03-23 09:32:13   Active_power_Phase_3 0.00
     2021-03-23 09:32:19   Active_power_phase_1_(powermeter) 0.00
     2021-03-23 09:31:20   Active_power_phase_2_(powermeter) 0.00
     2021-03-23 09:30:21   Active_power_phase_3_(powermeter) 0.00
     2021-02-02 11:53:13   Actual_battery_charge_-minus_or_discharge_-plus_Power 0
     2021-03-23 09:32:16   Actual_battery_charge_-minus_or_discharge_-plus_current 0.00
     2021-02-02 11:53:13   Actual_battery_charge_usable_Power 0
     2021-03-23 09:32:10   Actual_cos_phi  1.00
     2021-03-23 09:32:19   Apparent_power_phase_1_(powermeter) 0.00
     2021-03-23 09:31:20   Apparent_power_phase_2_(powermeter) 0.00
     2021-03-23 09:11:21   Apparent_power_phase_3_(powermeter) 0.00
     2021-03-23 09:11:25   Battery_Maincontroller_(MC) 4653057
     2021-03-23 09:31:25   Battery_Manufacturer                 
     2021-03-23 09:30:26   Battery_Model_ID 0
     2021-03-23 09:30:26   Battery_Serial_Number 0
     2021-03-23 09:31:27   Battery_Total_AC_Charge_Energy_(AC-sideToBattery) 0.00
     2021-03-23 09:30:28   Battery_Total_AC_Charge_Energy_(gridToBattery) 0.00
     2021-03-23 09:31:27   Battery_Total_AC_Discharge_Energy_(batteryToGrid) 0.00
     2021-03-23 09:31:27   Battery_Total_DC_Charge_Energy_(DC-sideToBattery) 0.00
     2021-03-23 09:31:27   Battery_Total_DC_Discharge_Energy_(DC-sideFromBattery) 0.00
     2021-03-21 11:25:37   Battery_actual_SOC 0.00
     2021-03-23 09:32:15   Battery_charge_current 0.00
     2021-03-23 09:11:25   Battery_gross_capacity 0
     2021-03-23 09:32:17   Battery_ready_flag 0.00
     2021-03-23 09:32:17   Battery_state   NaN
     2021-03-23 09:32:17   Battery_temperature 0.00
     2021-03-23 09:32:18   Battery_voltage 0.00
     2021-03-23 09:32:18   Cos_phi_(powermeter) 0.00
     2021-03-23 09:31:21   Current_DC1     0.00
     2021-03-23 09:30:22   Current_DC2     0.00
     2021-03-23 09:11:22   Current_DC3     0.00
     2021-03-23 09:32:11   Current_Phase_1 0.00
     2021-03-23 09:32:12   Current_Phase_2 0.00
     2021-03-23 09:32:12   Current_Phase_3 0.00
     2021-03-23 09:32:18   Current_phase_1_(powermeter) 0.00
     2021-03-23 09:31:20   Current_phase_2_(powermeter) 0.00
     2021-03-23 09:30:21   Current_phase_3_(powermeter) 0.00
     2021-03-23 09:30:23   Daily_yield     0.00
     2021-03-23 09:32:18   Frequency_(powermeter) 0.00
     2021-03-23 09:11:26   Generation_Energy 0.00
     2021-03-23 09:32:11   Grid_frequency  50.02
     2021-03-23 09:32:08   Home_own_consumption_from_PV 0.00
     2021-03-23 09:32:06   Home_own_consumption_from_battery 0.00
     2021-03-23 09:32:07   Home_own_consumption_from_grid 0.00
     2021-03-23 09:31:24   IP-DNS1         192.168.178.1
     2021-03-23 09:30:25   IP-DNS2         
     2021-03-23 09:31:23   IP-address      192.168.178.19
     2021-03-23 09:11:24   IP-gateway      192.168.178.1
     2021-03-23 09:30:24   IP-subnetmask   255.255.255.0
     2021-03-21 11:25:38   Inverter_Generation_Power_(actual) 0.00
     2021-03-21 11:25:38   Inverter_Max_Power 6999
     2021-03-23 09:32:00   Inverter_article_number 10335957
     2021-03-23 09:11:23   Inverter_network_name WR-2
     2021-03-23 09:32:01   Inverter_serial_number 92092TIE0001U
     2021-03-23 09:32:04   Inverter_state  0
     2021-03-23 09:32:08   Isolation_resistance 0.00
     2021-03-23 09:30:23   Monthly_yield   0.00
     2021-03-23 09:32:15   Number_of_battery_cycles 0
     2021-03-23 09:32:16   PSSB_fuse_state 0.00
     2021-03-23 09:31:21   Power_DC1       0.00
     2021-03-23 09:30:22   Power_DC2       0.00
     2021-03-23 09:11:22   Power_DC3       0.00
     2021-03-23 09:11:27   Power_class     7.0
     2021-03-23 09:32:08   Power_limit_from_EVU 100.00
     2021-03-23 09:30:27   Productname     PLENTICORE plus
     2021-03-23 09:32:19   Reactive_power_phase_1_(powermeter) 0.00
     2021-03-23 09:31:20   Reactive_power_phase_2_(powermeter) 0.00
     2021-03-23 09:30:21   Reactive_power_phase_3_(powermeter) 0.00
     2021-03-23 09:32:03   Software-Version_IO-Controller_(IOC) 01.45
     2021-03-23 09:32:02   Software-Version_Maincontroller_(MC) 01.47
     2021-03-20 10:05:39   Solar_Calculation 5313
     2021-03-20 10:05:39   Solar_Calculation_fc0_07 0
     2021-03-20 10:05:39   Solar_Calculation_fc0_08 3707
     2021-03-20 10:05:39   Solar_Calculation_fc0_09 4770
     2021-03-20 10:05:39   Solar_Calculation_fc0_10 5313
     2021-03-20 10:05:39   Solar_Calculation_fc0_11 5269
     2021-03-20 10:05:39   Solar_Calculation_fc0_12 4722
     2021-03-20 10:05:39   Solar_Calculation_fc0_13 4203
     2021-03-20 10:05:39   Solar_Calculation_fc0_14 2735
     2021-03-20 10:05:39   Solar_Calculation_fc0_15 1625
     2021-03-20 10:05:39   Solar_Calculation_fc0_16 1004
     2021-03-20 10:05:39   Solar_Calculation_fc0_17 455
     2021-03-20 10:05:39   Solar_Calculation_fc0_18 0
     2021-03-20 10:05:39   Solar_Calculation_fc0_19 0
     2021-03-20 10:05:39   Solar_Calculation_fc0_4h 19507
     2021-03-20 10:05:39   Solar_Calculation_fc0_day 33803
     2021-03-20 10:05:39   Solar_Calculation_fc0_rest 25326
     2021-03-20 10:06:51   Solar_Calculation_fc1_07 0
     2021-03-20 10:06:51   Solar_Calculation_fc1_08 1029
     2021-03-20 10:06:51   Solar_Calculation_fc1_09 1176
     2021-03-20 10:06:51   Solar_Calculation_fc1_10 1377
     2021-03-20 10:06:51   Solar_Calculation_fc1_11 1509
     2021-03-20 10:06:51   Solar_Calculation_fc1_12 1421
     2021-03-20 10:06:51   Solar_Calculation_fc1_13 1501
     2021-03-20 10:06:51   Solar_Calculation_fc1_14 1092
     2021-03-20 10:06:51   Solar_Calculation_fc1_15 677
     2021-03-20 10:06:51   Solar_Calculation_fc1_16 468
     2021-03-20 10:06:51   Solar_Calculation_fc1_17 241
     2021-03-20 10:06:51   Solar_Calculation_fc1_18 0
     2021-03-20 10:06:51   Solar_Calculation_fc1_19 0
     2021-03-20 10:06:51   Solar_Calculation_fc1_day 10491
     2021-03-20 10:05:39   Solar_Cloud     29
     2021-03-20 10:05:39   Solar_Correction_Cloud 0.869
     2021-03-20 10:05:39   Solar_Correction_Rain 0.990
     2021-03-20 10:05:39   Solar_Correction_Temp 1.047
     2021-03-20 10:05:39   Solar_Rain      5
     2021-03-20 10:05:39   Solar_SolarRadiation 511
     2021-03-20 10:05:39   Solar_South     3162
     2021-03-20 10:05:39   Solar_Temp      12.9
     2021-03-20 10:05:39   Solar_West      2151
     2021-03-20 10:05:39   Solar_middayhigh_fc0 0
     2021-03-20 10:05:39   Solar_middayhigh_fc0_start 00:00
     2021-03-20 10:05:39   Solar_middayhigh_fc0_stop 00:00
     2021-03-20 10:06:51   Solar_middayhigh_fc1 0
     2021-03-20 10:06:51   Solar_middayhigh_fc1_start 00:00
     2021-03-20 10:06:51   Solar_middayhigh_fc1_stop 00:00
     2021-03-23 09:32:06   State_of_energy_manager 0
     2021-03-23 09:11:28   Total_AC_Energy_(AC-sideToGrid) 0.00
     2021-03-23 09:32:13   Total_AC_active_power 0.00
     2021-03-23 09:32:14   Total_AC_apparent_power 282.43
     2021-03-23 09:32:13   Total_AC_reactive_power 282.52
     2021-03-23 09:30:28   Total_DC_Energy_From_PV1 0.00
     2021-03-23 09:30:28   Total_DC_Energy_From_PV2 0.00
     2021-03-23 09:11:28   Total_DC_Energy_From_PV3 0.00
     2021-03-23 09:30:28   Total_DC_PV_Energy_(sumOfAllPVInputs) 0.00
     2021-03-23 09:32:06   Total_DC_Power  0.00
     2021-03-23 09:11:28   Total_DC_Power_(sumOfAllPVInputs) 0.00
     2021-03-22 12:05:28   Total_DC_Power_Max 0.00
     2021-03-22 12:05:28   Total_PV_Power_reserve 0.000
     2021-03-23 09:11:21   Total_active_power_(powermeter) 0.00
     2021-03-23 09:31:21   Total_apparent_power_(powermeter) 0.00
     2021-03-23 09:32:08   Total_home_consumption 0.00
     2021-03-23 09:32:07   Total_home_consumption_Battery 0.00
     2021-03-23 09:32:07   Total_home_consumption_Grid 0.00
     2021-03-23 09:32:07   Total_home_consumption_PV 0.00
     2021-03-23 09:32:09   Total_home_consumption_rate 0.00
     2021-03-23 09:11:21   Total_reactive_power_(powermeter) 0.00
     2021-03-23 09:30:23   Total_yield     0.00
     2021-03-23 09:30:22   Voltage_DC1     0.45
     2021-03-23 09:11:22   Voltage_DC2     0.34
     2021-03-23 09:31:22   Voltage_DC3     0.30
     2021-03-23 09:32:11   Voltage_Phase_1 229.76
     2021-03-23 09:32:12   Voltage_Phase_2 232.12
     2021-03-23 09:32:13   Voltage_Phase_3 229.44
     2021-03-23 09:32:19   Voltage_phase_1_(powermeter) 0.00
     2021-03-23 09:30:21   Voltage_phase_2_(powermeter) 0.00
     2021-03-23 09:11:21   Voltage_phase_3_(powermeter) 0.00
     2021-03-23 09:30:26   Work_Capacity   6999.00
     2021-03-23 09:32:10   Worktime        0.00
     2021-03-23 09:30:23   Yearly_yield    0.00
     2021-03-23 09:32:19   state           disabled
   REMEMBER:
     lid        71
     lname      WR_2
     lrecv      1616488339.75513
     lsend      1616488339.74035
   defptr:
     WR_2       71
   gotReadings:
     Active_power_phase_1_(powermeter) 0.00
     Apparent_power_phase_1_(powermeter) 0.00
     Reactive_power_phase_1_(powermeter) 0.00
     Voltage_phase_1_(powermeter) 0.00
   lastRead:
     h100       1616488326.12006
     h104       1616488326.12093
     h1046      1616488287.78218
     h1048      1616488287.78434
     h1050      1616488287.78607
     h1052      1616488287.78855
     h1054      1616488228.97616
     h1056      1616488228.9786
     h1058      1616488228.98103
     h106       1616488326.12187
     h1060      1616488228.98528
     h1062      1616487088.97169
     h1064      1616487088.97279
     h1066      1616487088.97376
     h108       1616488327.1991
     h110       1616488327.20043
     h112       1616488327.20154
     h114       1616488327.20248
     h116       1616488328.24349
     h118       1616488328.24432
     h120       1616488328.24512
     h122       1616488328.24591
     h124       1616488329.27625
     h14        1616488321.77761
     h144       1616488330.3231
     h150       1616488330.32514
     h152       1616488331.37614
     h154       1616488331.37732
     h156       1616488331.37844
     h158       1616488331.37959
     h160       1616488332.44311
     h162       1616488332.44412
     h164       1616488332.44512
     h166       1616488332.4461
     h168       1616488333.48945
     h170       1616488333.49069
     h172       1616488333.4916
     h174       1616488333.49255
     h178       1616488334.52683
     h190       1616488335.58818
     h194       1616488335.58963
     h200       1616488336.62759
     h202       1616488336.62867
     h208       1616488337.66852
     h210       1616488337.66968
     h212       1616488337.67077
     h214       1616488337.6719
     h216       1616488338.71376
     h218       1616488338.71464
     h220       1616488338.71549
     h222       1616488338.71629
     h224       1616488339.75766
     h226       1616488339.75889
     h228       1616488339.76065
     h230       1616488339.7624
     h232       1616488280.37323
     h234       1616488280.3741
     h236       1616488280.37495
     h238       1616488280.37576
     h240       1616488221.50375
     h242       1616488221.50458
     h244       1616488221.50538
     h246       1616488221.50618
     h248       1616487081.37468
     h250       1616487081.37671
     h252       1616487081.37806
     h254       1616487081.37948
     h256       1616488281.41824
     h258       1616488281.42009
     h260       1616488281.42193
     h266       1616488222.54855
     h268       1616488222.55064
     h270       1616488222.55296
     h276       1616487082.44093
     h278       1616487082.44176
     h280       1616487082.44258
     h286       1616488282.46975
     h320       1616488223.60816
     h322       1616488223.61021
     h324       1616488223.61248
     h326       1616488223.6148
     h38        1616488322.8418
     h384       1616487083.60593
     h420       1616488283.57242
     h428       1616488224.71344
     h436       1616487084.6396
     h446       1616488284.62456
     h454       1616488225.75017
     h46        1616488323.92955
     h512       1616487085.69222
     h515       1616487085.69376
     h517       1616488285.67987
     h525       1616488226.83885
     h527       1616488226.8401
     h529       1616488226.84135
     h56        1616488324.98067
     h577       1616487086.81091
     h6         1616488320.6097
     h768       1616488227.92624
     h800       1616487087.90866
Attributes:
   DbLogExclude .*
   DbLogInclude Act_state_of_charge,Actual_battery_charge_-minus_or_discharge_-plus_Power,Actual_battery_charge_usable_Power,Battery_Total.*,Battery_charge.*,Battery_gross.*,Battery_temperature,Home_own_consumption.*,Power_DC1,Power_DC2,Total_DC_Power.*,Total_DC_PV_Energy.*,Total_PV_Power_reserve,Solar_Calculation,Solar_Calculation_fc0_4h,Solar_Calculation_fc0_day,Solar_Calculation_fc0_rest,Solar_Correction.*,Solar_Cloud,Solar_East,Solar_East_Covered,Solar_Rain,Solar_SolarRadiation,Solar_South,Solar_Temp,Solar_West,Solar_middayhigh.*
   alias      WR_2
   comment    Version 2020.03.19 19:00
Kostal Plenticore Plus 7
   dev-h-combine 8
   dev-h-defFormat %.2f
   dev-h-defLen 2
   dev-h-defPoll 1
   dev-h-defRevRegs 1
   dev-h-defUnpack f>
   dev-type-STR-format %s
   dev-type-STR-len 8
   dev-type-STR-revRegs 0
   dev-type-STR-unpack a*
   disable    1
   event-on-change-reading Act_state_of_charge,Actual_battery_charge_.*,Battery_Total.*,Battery_charge.*,Battery_gross.*,Battery_temperature,Home_own_consumption.*,Power_DC1,Power_DC2,Total_DC_Power.*,Total_DC_PV_Energy.*,Total_PV_Power_reserve,Solar_.*
   group      PV Eigenverbrauch
   icon       sani_solar
   obj-h100-reading Total_DC_Power
   obj-h104-format %s
   obj-h104-reading State_of_energy_manager
   obj-h104-revRegs 0
   obj-h104-unpack N
   obj-h1046-reading Battery_Total_DC_Charge_Energy_(DC-sideToBattery)
   obj-h1048-reading Battery_Total_DC_Discharge_Energy_(DC-sideFromBattery)
   obj-h1050-reading Battery_Total_AC_Charge_Energy_(AC-sideToBattery)
   obj-h1052-reading Battery_Total_AC_Discharge_Energy_(batteryToGrid)
   obj-h1054-reading Battery_Total_AC_Charge_Energy_(gridToBattery)
   obj-h1056-reading Total_DC_PV_Energy_(sumOfAllPVInputs)
   obj-h1058-reading Total_DC_Energy_From_PV1
   obj-h106-reading Home_own_consumption_from_battery
   obj-h1060-reading Total_DC_Energy_From_PV2
   obj-h1062-reading Total_DC_Energy_From_PV3
   obj-h1064-reading Total_AC_Energy_(AC-sideToGrid)
   obj-h1066-reading Total_DC_Power_(sumOfAllPVInputs)
   obj-h108-reading Home_own_consumption_from_grid
   obj-h110-reading Total_home_consumption_Battery
   obj-h112-reading Total_home_consumption_Grid
   obj-h114-reading Total_home_consumption_PV
   obj-h116-reading Home_own_consumption_from_PV
   obj-h118-reading Total_home_consumption
   obj-h120-reading Isolation_resistance
   obj-h122-reading Power_limit_from_EVU
   obj-h124-reading Total_home_consumption_rate
   obj-h14-reading Inverter_serial_number
   obj-h14-type STR
   obj-h144-reading Worktime
   obj-h150-reading Actual_cos_phi
   obj-h152-reading Grid_frequency
   obj-h154-reading Current_Phase_1
   obj-h156-reading Active_power_Phase_1
   obj-h158-reading Voltage_Phase_1
   obj-h160-reading Current_Phase_2
   obj-h162-reading Active_power_Phase_2
   obj-h164-reading Voltage_Phase_2
   obj-h166-reading Current_Phase_3
   obj-h168-reading Active_power_Phase_3
   obj-h170-reading Voltage_Phase_3
   obj-h172-reading Total_AC_active_power
   obj-h174-reading Total_AC_reactive_power
   obj-h178-reading Total_AC_apparent_power
   obj-h190-reading Battery_charge_current
   obj-h194-format %.0f
   obj-h194-reading Number_of_battery_cycles
   obj-h200-reading Actual_battery_charge_-minus_or_discharge_-plus_current
   obj-h202-reading PSSB_fuse_state
   obj-h208-reading Battery_ready_flag
   obj-h210-reading Act_state_of_charge
   obj-h212-reading Battery_state
   obj-h214-reading Battery_temperature
   obj-h216-reading Battery_voltage
   obj-h218-reading Cos_phi_(powermeter)
   obj-h220-reading Frequency_(powermeter)
   obj-h222-reading Current_phase_1_(powermeter)
   obj-h224-reading Active_power_phase_1_(powermeter)
   obj-h226-reading Reactive_power_phase_1_(powermeter)
   obj-h228-reading Apparent_power_phase_1_(powermeter)
   obj-h230-reading Voltage_phase_1_(powermeter)
   obj-h232-reading Current_phase_2_(powermeter)
   obj-h234-reading Active_power_phase_2_(powermeter)
   obj-h236-reading Reactive_power_phase_2_(powermeter)
   obj-h238-reading Apparent_power_phase_2_(powermeter)
   obj-h240-reading Voltage_phase_2_(powermeter)
   obj-h242-reading Current_phase_3_(powermeter)
   obj-h244-reading Active_power_phase_3_(powermeter)
   obj-h246-reading Reactive_power_phase_3_(powermeter)
   obj-h248-reading Apparent_power_phase_3_(powermeter)
   obj-h250-reading Voltage_phase_3_(powermeter)
   obj-h252-reading Total_active_power_(powermeter)
   obj-h254-reading Total_reactive_power_(powermeter)
   obj-h256-reading Total_apparent_power_(powermeter)
   obj-h258-reading Current_DC1
   obj-h260-reading Power_DC1
   obj-h266-reading Voltage_DC1
   obj-h268-reading Current_DC2
   obj-h270-reading Power_DC2
   obj-h276-reading Voltage_DC2
   obj-h278-reading Current_DC3
   obj-h280-reading Power_DC3
   obj-h286-reading Voltage_DC3
   obj-h320-reading Total_yield
   obj-h322-reading Daily_yield
   obj-h324-reading Yearly_yield
   obj-h326-reading Monthly_yield
   obj-h38-reading Software-Version_Maincontroller_(MC)
   obj-h38-type STR
   obj-h384-len 16
   obj-h384-reading Inverter_network_name
   obj-h384-type STR
   obj-h420-reading IP-address
   obj-h420-type STR
   obj-h428-reading IP-subnetmask
   obj-h428-type STR
   obj-h436-reading IP-gateway
   obj-h436-type STR
   obj-h446-reading IP-DNS1
   obj-h446-type STR
   obj-h454-reading IP-DNS2
   obj-h454-type STR
   obj-h46-reading Software-Version_IO-Controller_(IOC)
   obj-h46-type STR
   obj-h512-format %s
   obj-h512-reading Battery_gross_capacity
   obj-h512-unpack N
   obj-h514-len 1
   obj-h514-reading Battery_actual_SOC
   obj-h515-format %s
   obj-h515-reading Battery_Maincontroller_(MC)
   obj-h515-unpack N
   obj-h517-reading Battery_Manufacturer
   obj-h517-type STR
   obj-h525-format %s
   obj-h525-reading Battery_Model_ID
   obj-h525-unpack N
   obj-h527-format %s
   obj-h527-reading Battery_Serial_Number
   obj-h527-unpack N
   obj-h529-len 4
   obj-h529-reading Work_Capacity
   obj-h529-unpack N
   obj-h531-format %.0f
   obj-h531-reading Inverter_Max_Power
   obj-h531-unpack N
   obj-h535-revRegs 0
   obj-h535-unpack n
   obj-h551-revRegs 0
   obj-h559-revRegs 0
   obj-h56-format %.0f
   obj-h56-reading Inverter_state
   obj-h56-unpack N
   obj-h575-len 1
   obj-h575-reading Inverter_Generation_Power_(actual)
   obj-h577-len 2
   obj-h577-reading Generation_Energy
   obj-h577-unpack N
   obj-h578-reading Total_energy
   obj-h582-reading Actual_battery_charge-discharge_power
   obj-h586-format %s
   obj-h586-reading Battery_Firmware
   obj-h586-unpack N
   obj-h588-format %s
   obj-h588-len 1
   obj-h588-reading Battery_Type
   obj-h588-unpack N
   obj-h6-reading Inverter_article_number
   obj-h6-type STR
   obj-h768-len 32
   obj-h768-reading Productname
   obj-h768-type STR
   obj-h800-len 32
   obj-h800-reading Power_class
   obj-h800-type STR
   room       Strom->Photovoltaik
   sortby     211
   stateFormat {sprintf("
<TABLE>

<TR>
  <TH ALIGN=\"MIDDLE\" WIDTH=\"20\">Batterie %s</TH>
  <TH ALIGN=\"MIDDLE\" WIDTH=\"20\">aktuell</TH>
  <TH ALIGN=\"RIGHT\" WIDTH=\"20\">Hausverbrauch</TH>
  <TH ALIGN=\"MIDDLE\" WIDTH=\"20\">Erträge</TH>
</TR>

<TR>
  <TD ALIGN=\"MIDDLE\" WIDTH=\"20\">
    Leistung:  %04d W<br>
    Temp.: %02.1f °C<br>
    Ladung total: %2d %%<br>
    Ladung Res.: %04d Wh
  </TD>

  <TD ALIGN=\"RIGHT\" WIDTH=\"20\">
    DC total: %05d W<br>
    <br>
    <br>
    PV reserve: %05d W
  </TD>

  <TD ALIGN=\"RIGHT\" WIDTH=\"20\">
    von PV: %05d W <br>
    von Batterie: %05d W<br>
    vom Netz: %05d W<br>
    ins Haus: %05d W<br>
    Netz: %05d W
  </TD>

  <TD ALIGN=\"RIGHT\" WIDTH=\"20\">
    Tag: %05d KWh <br>
    Monat: %05d KWh<br>
    Jahr: %05d KWh<br>
    Total: %05d KWh
  </TD>
</TR>

</TABLE>
" ,
(ReadingsVal($name,"Actual_battery_charge_-minus_or_discharge_-plus_Power",0) lt 0) ? "<span style='color:#00FF00'>Laden</span>":"<span style='color:#FF0000'>Entladen</span>" ,

ReadingsVal($name,"Actual_battery_charge_-minus_or_discharge_-plus_Power",0),
ReadingsVal($name,"Battery_temperature",0) ,
ReadingsVal($name,"Act_state_of_charge",0) ,
ReadingsVal($name,"Actual_battery_charge_usable_Power",0) ,

ReadingsVal($name,"Total_DC_Power_(sumOfAllPVInputs)",0),
ReadingsVal($name,"Total_PV_Power_reserve",0),

ReadingsVal($name,"Home_own_consumption_from_PV",0) ,
ReadingsVal($name,"Home_own_consumption_from_battery",0) ,
ReadingsVal($name,"Home_own_consumption_from_grid",0),
ReadingsVal($name,"Home_own_consumption_from_PV",0) +ReadingsVal($name,"Home_own_consumption_from_battery",0)+ReadingsVal($name,"Home_own_consumption_from_grid",0),
ReadingsVal($name,"Total_active_power_(powermeter)",0),

round(ReadingsVal($name,"Daily_yield",0)/1000 ,0),
round(ReadingsVal($name,"Monthly_yield",0)/1000 ,0) ,
round(ReadingsVal($name,"Yearly_yield",0)/1000 ,0) ,
round(ReadingsVal($name,"Total_yield",0)/1000 ,0)
)}
   userReadings Total_PV_Power_reserve:Total_DC_Power.* {my $reserve = ReadingsVal($NAME,"Total_DC_Power_(sumOfAllPVInputs)","0") * 0.90 - ReadingsVal($NAME,"Home_own_consumption_from_PV","0");; ($reserve lt 0)?0:round($reserve,3)  },

Total_DC_Power_Max:Total_DC_Power.* { ReadingsVal($NAME,"Total_DC_Power_(sumOfAllPVInputs)","0") }

   verbose    5
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

ch.eick

Und nochmal hallo.

In einem ModBus Device habe ich readings mit "()" im Namen, so wie sie beim Geräte hersteller verwendet werde.

Nun wollte ich das in einem userReadings auch so verwenden, jedoch werden wohl die Klammern nicht akzeptiert.
Ein Escapen mit "\(" hat auch nicht funktioniert.

klappt nicht:
SW_1_Total_DC_Power_(sumOfAllPVInputs):Total_DC_Power.* {ReadingsVal($NAME,"Total_DC_Power_(sumOfAllPVInputs)",0)+ReadingsVal("WR_2","Total_DC_Power_(sumOfAllPVInputs)",0)}

geht auch nicht:
SW_1_Total_DC_Power_\(sumOfAllPVInputs\):Total_DC_Power.* {ReadingsVal($NAME,"Total_DC_Power_(sumOfAllPVInputs)",0)+ReadingsVal("WR_2","Total_DC_Power_(sumOfAllPVInputs)",0)}

Funktioniert:
SW_1_Total_DC_Power_sumOfAllPVInputs:Total_DC_Power.* {ReadingsVal($NAME,"Total_DC_Power_(sumOfAllPVInputs)",0)+ReadingsVal("WR_2","Total_DC_Power_(sumOfAllPVInputs)",0)}


VG
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

StefanStrobel

Hallo Christian,

das mit den Klammern ist klar: die sind nicht erlaubt.
Im Modbus-Modul habe ich es vor langer Zeit versäumt, die erlaubten Zeichen zu prüfen und wenn ich das jetzt nachträglich mache, dann gibt es viele Beschwerden.
Aber die Konsequenz ist eben dass man per Attribut auch unerlaubte Readng-Namen definieren kann.
(siehe https://wiki.fhem.de/wiki/DevelopmentModuleAPI#goodReadingName)

Auf die Disconnects hat das aber meiner Meinung nach keinen Einfluss.
Probier doch mal mit einem anderen Tool per ModbusTCP etwas von dem Device zu lesen und ob dort auch die Verbindung getrennt wird.
Es kann schon sein, dass die Firmware oder Konfiguration doch nicht ganz identisch ist und das Device daher nach einer Minute die TCP-Verbindung schließt. Das ist eigentlich auch gar nicht schlimm. Fhem baut sie dann ja wieder auf. Um die störenden Meldungen wegzubekommen kann man das Attribut silentReconnect setzen.

Gruss
   Stefan