OH2.5/3: Modbus Binding - Stiebel Eltron - Error Code = 2

Hello,

i tried to use the StiebelEltron Modbus binding, but I get the following error:

2020-12-24 23:21:14.643 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint@381f4e6e[slaveId=1,functionCode=READ_INPUT_REGISTERS,start=500,length=36,maxTries=3]). Will try again soon. Error was: net.wimpi.modbus.ModbusSlaveException Error Code = 2 [operation ID 61710e9c-66a7-4ca3-886b-37320fcaea1d]

2020-12-24 23:21:14.704 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint@381f4e6e[slaveId=1,functionCode=READ_INPUT_REGISTERS,start=500,length=36,maxTries=3]). Will try again soon. Error was: net.wimpi.modbus.ModbusSlaveException Error Code = 2 [operation ID 61710e9c-66a7-4ca3-886b-37320fcaea1d]

2020-12-24 23:21:14.765 [ERROR] [rt.modbus.internal.ModbusManagerImpl] - Last try 3 failed when executing request (ModbusReadRequestBlueprint@381f4e6e[slaveId=1,functionCode=READ_INPUT_REGISTERS,start=500,length=36,maxTries=3]). Aborting. Error was: net.wimpi.modbus.ModbusSlaveException Error Code = 2 [operation ID 61710e9c-66a7-4ca3-886b-37320fcaea1d]

Modbus TCP slave is configured and online.

Any ideas?

KR
Michael

1 Like

This means the target device has rejected this request

usually means it does not like the combination of register type and/or register addresses.

This looks like a similar setup

and this note worthy of a look

1 Like

Did you use org.openhab.binding.modbus.stiebeleltron?
If yes, can you please post, how you used the hints from @rossko57 to solve the issue?

To me it reads like the hint says that e.g. you should start reading register 500 with an increment of one at 501. The source code looks like it still reads from 500: openhab-addons/StiebelEltronHandler.java at 3.0.0 · openhab/openhab-addons · GitHub

Hello Vasu,

I solved the problem by using a own thing/item file, without the integrated Opanhab Stiebel Binding.

One example you can find in the link from roosko57 (post from shorty707).
For my ISG with the Stiebel LWZ403 I use the follwing things file:

Bridge modbus:tcp:isgTCP [ host=“192.168.55.27”, port=502, id=1 ] {
Bridge poller isg_systemwerte “LWZ_Poller_Systemwerte” [ start=0, length=35, refresh=30000, type=“input” ] {
Thing data LWZ_Aussentemperatur “Außentemperatur” [ readStart=“6”, readValueType=“int16”, readTransform=“JS(divide10.js)” ]

    Thing data LWZ_Heizung_IstTemperatur "Heizkreis Isttemperatur" [ readStart="7", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizung_SollTemperatur "Heizkreis Solltemperatur" [ readStart="8", readValueType="int16", readTransform="JS(divide10.js)" ]
    
    Thing data LWZ_Heizkreis_Vorlauftemperatur "Heizkreis Vorlauftemperatur" [ readStart="11", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Ruecklauftemperatur "Heizkreis Rücklauftemperatur" [ readStart="12", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Druck "Heizkreis Druck" [ readStart="13", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Volumenstrom "Heizkreis Volumenstrom" [ readStart="14", readValueType="int16", readTransform="JS(divide10.js)" ]
    
    Thing data LWZ_WW_IstTemperatur "Warmwasser Isttemperatur" [ readStart="15", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_WW_SollTemperatur "Warmwasser Solltemperatur" [ readStart="16", readValueType="int16", readTransform="JS(divide10.js)" ]
    
    Thing data LWZ_Lueftung_Zuluft_IstFrequenz "Lüftung Zuluft Lüfterdrehzahl" [ readStart="17", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Zuluft_SollVolumenstrom "Lüftung Zuluft Sollvolumenstrom" [ readStart="18", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Abluft_IstFrequenz "Lüftung Abluft Lüfterdrehzahl" [ readStart="19", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Abluft_SollVolumenstrom "Lüftung Abluft Sollvolumenstrom" [ readStart="20", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Abluft_Feuchte "Lüftung Abluft Feuchte" [ readStart="21", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Abluft_Temperatur "Lüftung Abluft Temperatur" [ readStart="22", readValueType="int16", readTransform="JS(divide10.js)" ]
    
    Thing data LWZ_Verdichter_Druckgastemperatur "Verdichter Druckgastemperatur" [ readStart="27", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Verdichter_Hochdruck "Verdichter Hochdruck" [ readStart="28", readValueType="int16", readTransform="JS(divide100.js)" ]
    Thing data LWZ_Verdichter_Niederdruck "Verdichter Niederdruck" [ readStart="29", readValueType="int16", readTransform="JS(divide100.js)" ]
    Thing data LWZ_Verdichter_Starts "Verdichterstarts" [ readStart="30", readValueType="uint16", readTransform="default" ]
    Thing data LWZ_Verdichter_Frequenz "Verdichterdrehzahl" [ readStart="31", readValueType="int16" ]
}
Bridge poller isg_systemparameter "LWZ_Poller_Systemparameter" [ start=1000, length=25, refresh=30000, type="holding" ] {
    Thing data LWZ_Betriebsart "Betriebsart" [ readStart="1000", readValueType="uint16", readTransform="default", writeStart="1000", writeType="holding", writeValueType="uint16", writeTransform="default" ]
    
    Thing data LWZ_WW_SollTemperatur_Tag "Warmwasser Solltemperatur Tag" [ readStart="1011", readValueType="int16", readTransform="JS(divide10.js)", writeStart="1011", writeType="holding", writeValueType="int16", writeTransform="JS(multiply10.js)" ]
    Thing data LWZ_WW_SollTemperatur_Nacht "Warmwasser Solltemperatur Nacht" [ readStart="1012", readValueType="int16", readTransform="JS(divide10.js)", writeStart="1012", writeType="holding", writeValueType="int16", writeTransform="JS(multiply10.js)" ]
    
    Thing data LWZ_Lueftung_StufeTag "Lüftung Stufe Tag" [ readStart="1017", readValueType="uint16", readTransform="default", writeStart="1017", writeType="holding", writeValueType="uint16", writeTransform="default" ]
}
Bridge poller isg_systemstatus "LWZ_Poller_Systemstatus"[ start=2000, length=2, refresh=30000, type="input" ] {
    Thing data LWZ_Status_Verdichter "Status Verdichter" [ readStart="2000.1", readValueType="bit" ]
    Thing data LWZ_Status_Heizung "Status Heizen" [ readStart="2000.2", readValueType="bit" ]
    Thing data LWZ_Status_WW "Status WW" [ readStart="2000.4", readValueType="bit" ]
    Thing data LWZ_Status_Filterwechsel "Status Filterwechsel Beide" [ readStart="2000.8", readValueType="bit" ]
    Thing data LWZ_Status_Lueftung "Status Lüftung" [ readStart="2000.9", readValueType="bit" ]
    Thing data LWZ_Status_Heizkreispumpe "Status Heizkreispumpe" [ readStart="2000.10", readValueType="bit" ]
    Thing data LWZ_Status_Abtauen "Status Abtauen" [ readStart="2000.11", readValueType="bit" ]
    Thing data LWZ_Status_Filterwechsel_Abluft "Status Filterwechsel Abluft" [ readStart="2000.12", readValueType="bit" ]
    Thing data LWZ_Status_Filterwechsel_Zuluft "Status Filterwechsel Zuluft" [ readStart="2000.13", readValueType="bit" ]
}
Bridge poller isg_zaehler "LWZ_Poller_Zähler" [ start=3000, length=32, refresh=3000, type="input" ] {
   Thing data LWZ_Heizung_WM_Tag "Heizung Wärmemenge Tag" [ readStart="3000", readValueType="uint16" ]
    Thing data LWZ_Heizung_WM_Gesamt_kWh "Heizung Wärmemenge Gesamt Anteil kWh" [ readStart="3001", readValueType="uint16" ]
    Thing data LWZ_Heizung_WM_Gesamt_MWh "Heizung Wärmemenge Gesamt Anteil MWh" [ readStart="3002", readValueType="uint16" ]
    
    Thing data LWZ_WW_WM_Tag "Warmwasser Wärmemenge Tag" [ readStart="3003", readValueType="uint16" ]
    Thing data LWZ_WW_WM_Gesamt_kWh "Warmwasser Wärmemenge Gesamt Anteil kWh" [ readStart="3004", readValueType="uint16" ]
    Thing data LWZ_WW_WM_Gesamt_MWh "Warmwasser Wärmemenge Gesamt Anteil MWh" [ readStart="3005", readValueType="uint16" ]
    
    Thing data LWZ_Lueftung_WM_Tag "Lüftung WRG Wärmemenge Tag" [ readStart="3010", readValueType="uint16" ]
    Thing data LWZ_Lueftung_WM_Gesamt_kWh "Lüftung WRG Wärmemenge Gesamt Anteil kWh" [ readStart="3011", readValueType="uint16" ]
    Thing data LWZ_Lueftung_WM_Gesamt_MWh "Lüftung WRG Wärmemenge Gesamt Anteil MWh" [ readStart="3012", readValueType="uint16" ]
    
    Thing data LWZ_Heizung_PVerdichter_Tag "Heizung Pel Verdichter Tag" [ readStart="3021", readValueType="uint16" ]
    Thing data LWZ_Heizung_PVerdichter_Gesamt_kWh "Heizung Pel Verdichter Gesamt kWh" [ readStart="3022", readValueType="uint16" ]
    Thing data LWZ_Heizung_PVerdichter_Gesamt_MWh "Heizung Pel Verdichter Gesamt MWh" [ readStart="3023", readValueType="uint16" ]
    
    Thing data LWZ_WW_PVerdichter_Tag "WW Pel Verdichter Tag" [ readStart="3024", readValueType="uint16" ]
    Thing data LWZ_WW_PVerdichter_Gesamt_kWh "WW Pel Verdichter Gesamt kWh" [ readStart="3025", readValueType="uint16" ]
    Thing data LWZ_WW_PVerdichter_Gesamt_MWh "WW Pel Verdichter Gesamt Mwh" [ readStart="3026", readValueType="uint16" ]
    
    Thing data LWZ_Heizung_LaufzeitVerdichter "Heizung Laufzeit Verdichter" [ readStart="3027", readValueType="uint16" ]
    Thing data LWZ_WW_LaufzeitVerdichter "WW Laufzeit Verdichter" [ readStart="3029", readValueType="uint16" ]
}

}

And my items file:

Group Heizung “Alles mit Heizung”

// Systemwerte
Number LWZ_Aussentemperatur “Außentemperatur [%.1f °C]” (Heizung){ channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Aussentemperatur:number” }
Number LWZ_Heizung_IstTemperatur “Heizkreis Isttemperatur [%.1f °C]” (Heizung){ channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Heizung_IstTemperatur:number” }
Number LWZ_Heizung_SollTemperatur “Heizkreis Solltemperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Heizung_SollTemperatur:number” }
Number LWZ_Heizkreis_Vorlauftemperatur “Heizkreis Vorlauftemperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Heizkreis_Vorlauftemperatur:number” }
Number LWZ_Heizkreis_Ruecklauftemperatur “Heizkreis Rücklauftemperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Heizkreis_Ruecklauftemperatur:number” }
// Number LWZ_Heizkreis_Druck “Heizkreis Druck [%.1f bar]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Heizkreis_Druck:number” }
// Number LWZ_Heizkreis_Volumenstrom “Heizkreis Volumenstrom [%.1f l/min]” (Heizung){ channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Heizkreis_Volumenstrom:number” }
Number LWZ_WW_IstTemperatur “Warmwasser Isttemperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_WW_IstTemperatur:number” }
Number LWZ_WW_SollTemperatur “Warmwasser Solltemperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_WW_SollTemperatur:number” }
Number LWZ_Lueftung_Zuluft_IstFrequenz “Lüftung Zuluft Lüfterdrehzahl [%.0f Hz]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Lueftung_Zuluft_IstFrequenz:number” }
Number LWZ_Lueftung_Zuluft_SollVolumenstrom “Lüftung Zuluft Sollvolumenstrom [%.0f m³/h]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Lueftung_Zuluft_SollVolumenstrom:number” }
Number LWZ_Lueftung_Abluft_IstFrequenz “Lüftung Abluft Lüfterdrehzahl [%.0f Hz]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Lueftung_Abluft_IstFrequenz:number” }
Number LWZ_Lueftung_Abluft_SollVolumenstrom “Lüftung Abluft Sollvolumenstrom [%.0f m³/h]” (Heizung){ channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Lueftung_Abluft_SollVolumenstrom:number” }
// Number LWZ_Lueftung_Abluft_Feuchte “Lüftung Abluft Feuchte [%.0f %%]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Lueftung_Abluft_Feuchte:number” }
// Number LWZ_Lueftung_Abluft_Temperatur “Lüftung Abluft Temperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Lueftung_Abluft_Temperatur:number” }
// Number LWZ_Verdichter_Starts “Verdichterstarts [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Verdichter_Starts:number” }
// Number LWZ_Verdichter_Frequenz “Frequenz [%.0f Hz]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Verdichter_Frequenz:number” }
Number LWZ_Verdichter_Druckgastemperatur “Druckgastemperatur [%.1f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Verdichter_Druckgastemperatur:number” }
// Number LWZ_Verdichter_Niederdruck “Niederdruck [%.2f bar]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Verdichter_Niederdruck:number” }
// Number LWZ_Verdichter_Hochdruck “Hochdruck [%.2f bar]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemwerte:LWZ_Verdichter_Hochdruck:number” }

// Number LWZ_Verdichter_Verdampfungstemperatur “Verdampfungstemperatur [%.1f °C]”
// Number LWZ_Verdichter_Verfluessigungstemperatur “Verflüssigungstemperatur [%.1f °C]”

// Konfigurationsparameter
Number LWZ_Betriebsart “Betriebsart [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemparameter:LWZ_Betriebsart:number”}
Number LWZ_WW_SollTemperatur_Tag “Warmwasser Solltemperatur Tag [%.0f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemparameter:LWZ_WW_SollTemperatur_Tag:number”}
Number LWZ_WW_SollTemperatur_Nacht “Warmwasser Solltemperatur Nacht [%.0f °C]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemparameter:LWZ_WW_SollTemperatur_Nacht:number”}
Number LWZ_Lueftung_StufeTag “Lüftung Stufe Tag [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemparameter:LWZ_Lueftung_StufeTag:number”}

// Betriebsstatus
Number LWZ_Status_Verdichter “Status Verdichter [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Verdichter:number” }
Number LWZ_Status_Heizung “Status Heizen [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Heizung:number” }
Number LWZ_Status_WW “Status WW [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_WW:number” }
Number LWZ_Status_Filterwechsel “Filter Zu- und Abluft müssen gewechselt werden” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Filterwechsel:number” }
Number LWZ_Status_Lueftung “Status Lueftung [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Lueftung:number” }
Number LWZ_Status_Heizkreispumpe “Status Heizkreispumpe [%s]” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Heizkreispumpe:number” }
Number LWZ_Status_Abtauen “Abtauung in Gang” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Abtauen:number” }
Number LWZ_Status_Filterwechsel_Abluft “Filter Abluft muss gewechselt werden” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Filterwechsel_Abluft:number” }
Number LWZ_Status_Filterwechsel_Zuluft “Filter Zuluft muss gewechselt werden” (Heizung) { channel=“modbus:data:isgTCP:isg_systemstatus:LWZ_Status_Filterwechsel_Zuluft:number” }

// Zähler
Number LWZ_Heizung_WM_Tag “Heizung Wärmemenge Tag [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_WM_Tag:number” }
Number LWZ_Heizung_WM_Gesamt_kWh “Heizung Wärmemenge Gesamt 1 [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_WM_Gesamt_kWh:number” }
Number LWZ_Heizung_WM_Gesamt_MWh “Heizung Wärmemenge Gesamt 2 [%.0f MWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_WM_Gesamt_MWh:number” }
Number LWZ_Heizung_WM_Gesamt “Heizung Wärmemenge Gesamt [%.0f kWh]” (Heizung)
Number LWZ_WW_WM_Tag “Warmwasser Wärmemenge Tag [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_WM_Tag:number” }
Number LWZ_WW_WM_Gesamt_kWh “Warmwasser Wärmemenge Gesamt 1 [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_WM_Gesamt_kWh:number” }
Number LWZ_WW_WM_Gesamt_MWh “Warmwasser Wärmemenge Gesamt 2 [%.0f MWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_WM_Gesamt_MWh:number” }
Number LWZ_WW_WM_Gesamt “Warmwasser Wärmemenge Gesamt [%.0f kWh]” (Heizung)
Number LWZ_Lueftung_WM_Tag “Lüftung WRG Wärmemenge Tag [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Lueftung_WM_Tag:number” }
Number LWZ_Lueftung_WM_Gesamt_kWh “Lüftung WRG Wärmemenge Gesamt 1 [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Lueftung_WM_Gesamt_kWh:number” }
Number LWZ_Lueftung_WM_Gesamt_MWh “Lüftung WRG Wärmemenge Gesamt 2 [%.0f MWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Lueftung_WM_Gesamt_MWh:number” }
Number LWZ_Lueftung_WM_Gesamt “Lüftung WRG Wärmemenge Gesamt [%.0f kWh]” (Heizung)
Number LWZ_Heizung_PVerdichter_Tag “Heizung Pel Verdichter Tag [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_PVerdichter_Tag:number” }
Number LWZ_Heizung_PVerdichter_Gesamt_kWh “Heizung Pel Verdichter Gesamt 1 [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_PVerdichter_Gesamt_kWh:number” }
Number LWZ_Heizung_PVerdichter_Gesamt_MWh “Heizung Pel Verdichter Gesamt 2 [%.0f MWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_PVerdichter_Gesamt_MWh:number” }
Number LWZ_Heizung_PVerdichter_Gesamt “Heizung Pel Verdichter Gesamt [%.0f kWh]” (Heizung)
Number LWZ_WW_PVerdichter_Tag “Warmwasser Pel Verdichter Tag [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_PVerdichter_Tag:number” }
Number LWZ_WW_PVerdichter_Gesamt_kWh “Warmwasser Pel Verdichter Gesamt 1 [%.0f kWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_PVerdichter_Gesamt_kWh:number” }
Number LWZ_WW_PVerdichter_Gesamt_MWh “Warmwasser Pel Verdichter Gesamt 2 [%.0f MWh]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_PVerdichter_Gesamt_MWh:number” }
Number LWZ_WW_PVerdichter_Gesamt “Warmwasser Pel Verdichter Gesamt [%.0f kWh]” (Heizung)
// Number LWZ_Heizung_AZ_Tag_Min “Heizung Arbeitszahl Tag Min [%.1f]” (Heizung)
// Number LWZ_Heizung_AZ_Tag_Max “Heizung Arbeitszahl Tag Max [%.1f]” (Heizung)
// String LWZ_Heizung_AZ_Tag_Bereich “Heizung Arbeitszahl Tag [%s]” (Heizung)
Number LWZ_Heizung_AZ_Gesamt “Heizung Arbeitszahl Gesamt [%.1f]” (Heizung)
Number LWZ_WW_AZ_Gesamt “Warmwasser Arbeitszahl Gesamt [%.1f]” (Heizung)
Number LWZ_AZ_HeizungUndWW “Arbeitszahl Gesamt [%.1f]” (Heizung)
Number LWZ_Heizung_LaufzeitVerdichter “Heizung Laufzeit Verdichter [%.0f h]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_Heizung_LaufzeitVerdichter:number” }
Number LWZ_WW_LaufzeitVerdichter “Warmwasser Laufzeit Verdichter [%.0f h]” (Heizung) { channel=“modbus:data:isgTCP:isg_zaehler:LWZ_WW_LaufzeitVerdichter:number” }

Number LWZ_Pumpzyklus_Tag “Pumpzyklen Tag [%s]”
Number LWZ_Verdichter_Starts_Tag “Verdichterstarts Tag [%s]”

In the meantime I tried another script in the iobroker (software like opanhab) - it works there really well, perhaps it can be a template for the Openhab Binding?

KR
Michael

1 Like

Thank you very much Michael.
I got it working now, also with individual poller bridges, using some of your definitions. For the items, I am trying out the new semantic modeling options in OH3.

I first had to to a firmware upgrade of the ISG.
And then, looking at the official documentation at Tecalor (https://www.tecalor.de/content/dam/tec/cdbassets/current/bedienungs-_u_installationsanleitungen/ISG_Modbus__572a7141-bf98-4b31-8a6d-1fefc1579935.pdf), there were multiple “adjustments” for the THZ304 I needed to consider:
a) sometimes there is an offset of one. sometimes not.
b) the modbus addresses documented to be starting at 501, in your (and my) setup start at 0.

It seems like there is quite some heterogenity across the various Stiebel Heatpumps and thus requires multiple templates depending on the model.

BR Vasu

P.S. here are my things:

Bridge modbus:tcp:stiebel "ISG Modbus TCP Tecalor" [ host="10.10.10.10", port=502, id=1 ] {

  Bridge poller isg_systemwerte                     "ISG_Poller_Systemwerte"                 [ start=0, length=35, refresh=30000, type="input" ] {
    Thing data LWZ_IstTemperatur                    "THZ304 IstTemperatur"                   [ readStart="3",  readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_SollTemperatur                   "THZ304 SollTemperatur"                  [ readStart="4",  readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Raumfeuchte                      "THZ304 Raumfeuchte"                     [ readStart="5",  readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Aussentemperatur                 "THZ304 Außentemperatur"                 [ readStart="6",  readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizung_IstTemperatur            "THZ304 Heizkreis Isttemperatur"         [ readStart="7",  readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizung_SollTemperatur           "THZ304 Heizkreis Solltemperatur"        [ readStart="8",  readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Vorlauftemperatur      "THZ304 Heizkreis Vorlauftemperatur"     [ readStart="11", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Ruecklauftemperatur    "THZ304 Heizkreis Rücklauftemperatur"    [ readStart="12", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Druck                  "THZ304 Heizkreis Druck"                 [ readStart="13", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Heizkreis_Volumenstrom           "THZ304 Heizkreis Volumenstrom"          [ readStart="14", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_WW_IstTemperatur                 "THZ304 Warmwasser Isttemperatur"        [ readStart="15", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_WW_SollTemperatur                "THZ304 Warmwasser Solltemperatur"       [ readStart="16", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Lueftung_Zuluft_IstFrequenz      "THZ304 Lüftung Zuluft Lüfterdrehzahl"   [ readStart="17", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Zuluft_SollVolumenstrom "THZ304 Lüftung Zuluft Sollvolumenstrom" [ readStart="18", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Abluft_IstFrequenz      "THZ304 Lüftung Abluft Lüfterdrehzahl"   [ readStart="19", readValueType="uint16" ]
    Thing data LWZ_Lueftung_Abluft_SollVolumenstrom "THZ304 Lüftung Abluft Sollvolumenstrom" [ readStart="20", readValueType="uint16" ]
//  Thing data LWZ_Lueftung_Abluft_Feuchte          "THZ304 Lüftung Abluft Feuchte"          [ readStart="21", readValueType="uint16" ]
//  Thing data LWZ_Lueftung_Abluft_Temperatur       "THZ304 Lüftung Abluft Temperatur"       [ readStart="22", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Verdichter_Druckgastemperatur    "THZ304 Verdichter Druckgastemperatur"   [ readStart="27", readValueType="int16", readTransform="JS(divide10.js)" ]
    Thing data LWZ_Verdichter_Hochdruck             "THZ304 Verdichter Hochdruck"            [ readStart="28", readValueType="int16", readTransform="JS(divide100.js)" ]
    Thing data LWZ_Verdichter_Niederdruck           "THZ304 Verdichter Niederdruck"          [ readStart="29", readValueType="int16", readTransform="JS(divide100.js)" ]
//  Thing data LWZ_Verdichter_Starts                "THZ304 Verdichterstarts"                [ readStart="30", readValueType="uint16", readTransform="default" ]
//  Thing data LWZ_Verdichter_Frequenz              "THZ304 Verdichterdrehzahl"              [ readStart="31", readValueType="int16" ]
  }

  Bridge poller isg_systemstatus                   "ISG_Poller_Systemstatus"                 [ start=2000, length=2, refresh=30000, type="input" ] {
    Thing data LWZ_Status_Verdichter               "THZ304 Status Verdichter"                [ readStart="2000.1", readValueType="bit" ]
    Thing data LWZ_Status_Heizung                  "THZ304 Status Heizen"                    [ readStart="2000.2", readValueType="bit" ]
    Thing data LWZ_Status_WW                       "THZ304 Status WW"                        [ readStart="2000.4", readValueType="bit" ]
    Thing data LWZ_Status_Filterwechsel            "THZ304 Status Filterwechsel Beide"       [ readStart="2000.8", readValueType="bit" ]
    Thing data LWZ_Status_Lueftung                 "THZ304 Status Lüftung"                   [ readStart="2000.9", readValueType="bit" ]
    Thing data LWZ_Status_Heizkreispumpe           "THZ304 Status Heizkreispumpe"            [ readStart="2000.10", readValueType="bit" ]
    Thing data LWZ_Status_Abtauen                  "THZ304 Status Abtauen"                   [ readStart="2000.11", readValueType="bit" ]
    Thing data LWZ_Status_Filterwechsel_Abluft     "THZ304 Status Filterwechsel Abluft"      [ readStart="2000.12", readValueType="bit" ]
    Thing data LWZ_Status_Filterwechsel_Zuluft     "THZ304 Status Filterwechsel Zuluft"      [ readStart="2000.13", readValueType="bit" ]
  }

  Bridge poller isg_zaehler                        "ISG_Poller_Zähler"                               [ start=3000, length=32, refresh=15000, type="input" ] {
    Thing data LWZ_Heizung_WM_Tag                  "THZ304 Heizung Wärmemenge Tag"                   [ readStart="3000", readValueType="uint16" ]
    Thing data LWZ_Heizung_WM_Gesamt_kWh           "THZ304 Heizung Wärmemenge Gesamt Anteil kWh"     [ readStart="3001", readValueType="uint16" ]
    Thing data LWZ_Heizung_WM_Gesamt_MWh           "THZ304 Heizung Wärmemenge Gesamt Anteil MWh"     [ readStart="3002", readValueType="uint16" ]
    Thing data LWZ_WW_WM_Tag                       "THZ304 Warmwasser Wärmemenge Tag"                [ readStart="3003", readValueType="uint16" ]
    Thing data LWZ_WW_WM_Gesamt_kWh                "THZ304 Warmwasser Wärmemenge Gesamt Anteil kWh"  [ readStart="3004", readValueType="uint16" ]
    Thing data LWZ_WW_WM_Gesamt_MWh                "THZ304 Warmwasser Wärmemenge Gesamt Anteil MWh"  [ readStart="3005", readValueType="uint16" ]
    Thing data LWZ_Lueftung_WM_Tag                 "THZ304 Lüftung WRG Wärmemenge Tag"               [ readStart="3010", readValueType="uint16" ]
    Thing data LWZ_Lueftung_WM_Gesamt_kWh          "THZ304 Lüftung WRG Wärmemenge Gesamt Anteil kWh" [ readStart="3011", readValueType="uint16" ]
    Thing data LWZ_Lueftung_WM_Gesamt_MWh          "THZ304 Lüftung WRG Wärmemenge Gesamt Anteil MWh" [ readStart="3012", readValueType="uint16" ]
    Thing data LWZ_Heizung_PVerdichter_Tag         "THZ304 Heizung Pel Verdichter Tag"               [ readStart="3021", readValueType="uint16" ]
    Thing data LWZ_Heizung_PVerdichter_Gesamt_kWh  "THZ304 Heizung Pel Verdichter Gesamt kWh"        [ readStart="3022", readValueType="uint16" ]
    Thing data LWZ_Heizung_PVerdichter_Gesamt_MWh  "THZ304 Heizung Pel Verdichter Gesamt MWh"        [ readStart="3023", readValueType="uint16" ]
    Thing data LWZ_WW_PVerdichter_Tag              "THZ304 WW Pel Verdichter Tag"                    [ readStart="3024", readValueType="uint16" ]
    Thing data LWZ_WW_PVerdichter_Gesamt_kWh       "THZ304 WW Pel Verdichter Gesamt kWh"             [ readStart="3025", readValueType="uint16" ]
    Thing data LWZ_WW_PVerdichter_Gesamt_MWh       "THZ304 WW Pel Verdichter Gesamt Mwh"             [ readStart="3026", readValueType="uint16" ]
    Thing data LWZ_Heizung_LaufzeitVerdichter      "THZ304 Heizung Laufzeit Verdichter"              [ readStart="3027", readValueType="uint16" ]
    Thing data LWZ_WW_LaufzeitVerdichter           "THZ304 WW Laufzeit Verdichter"                   [ readStart="3029", readValueType="uint16" ]
  }

  Bridge poller isg_energiemanagement              "ISG_Poller_Energiemanagement"         [ start=4000, length=3, refresh=15000, type="holding" ] {
    Thing data LWZ_SGREADYSWITCH                   "THZ304 SG Ready Switch"               [ readStart="4000", readValueType="int16", writeStart="4000", writeValueType="int16", writeType="holding"  ]
    Thing data LWZ_SGREADYEINGANG1                 "THZ304 SG Ready Eingang 1"            [ readStart="4001", readValueType="int16", writeStart="4001", writeValueType="int16", writeType="holding"  ]
    Thing data LWZ_SGREADYEINGANG2                 "THZ304 SG Ready Eingang 2"            [ readStart="4002", readValueType="int16", writeStart="4002", writeValueType="int16", writeType="holding"  ]
  }
  
  Bridge poller isg_energiesystem                  "ISG_Poller_Energie_Systemwerte"       [ start=5000, length=2, refresh=15000, type="input" ] {    
    Thing data LWZ_SGREADYZUSTAND                  "THZ304 SG Ready Zustand"              [ readStart="5000", readValueType="int16" ]
    Thing data LWZ_REGLERKENNUNG                   "THZ304 Regelerkennung"                [ readStart="5001", readValueType="int16"  ]
  }

}
2 Likes