EGO Smart Heater 29.65335.100

Hello everyone,

I have installed an 8kWh PV system with a Huawei SUN2000 inverter and a LUNA2000 battery. The system is controlled by dtsu666-h. Yesterday, I successfully managed to connect the system to OpenHab using Modbus TCP.

As an addition to the energy storage, I have acquired a smart heating element called EGO Smart Heater 29.65335.100. It was installed and connected today. Now, I would like to integrate this heating element into OpenHab using the Modbus Binding and control it according to surplus energy.

Has anyone accomplished something similar? I would greatly appreciate any tips or advice.

System:
Raspberry PI 4B
openHAB 3.4.2 - Release Build

Thank you!

Things

Bridge modbus:tcp:EGO_Heater "EGO Modbus TCP Slave" [ host="192.168.0.98", port=502, id=247, timeBetweenTransactionsMillis=60, reconnectAfterMillis=1000, timeBetweenReconnectMillis=1000, connectTimeoutMillis=10000, afterConnectionDelayMillis=1000 ]{

//Geräte Information
    Bridge poller EGO_slave11 "EGO Modbus TCP Poller"            [ start=8192, length=6, refresh=500, type="holding" ] {  
        Thing data Data8192 "ManufacturerID"                     [ readStart="8192", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data8193 "ProductID"                          [ readStart="8193", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data8194 "ProductVersion"                     [ readStart="8194", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data8195 "FirmwareVersion"                    [ readStart="8195", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8196 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8197 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8198 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8199 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8200 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8201 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8202 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8203 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8204 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8205 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8206 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8207 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8208 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8209 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8210 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
        Thing data Data8211 "VendorName"                         [ readStart="8196", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]    
    }
    
    Bridge poller EGO_slave12 "EGO Modbus TCP Poller" [ start=8212, length=2, refresh=500, type="holding" ] {  
        Thing data Data8212 "ProductName"                        [ readStart="8212", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }

    Bridge poller EGO_slave13 "EGO Modbus TCP Poller" [ start=8228, length=2, refresh=500, type="holding" ] {  
        Thing data Data8228 "SerialNumber"                       [ readStart="8228", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }

    Bridge poller EGO_slave14 "EGO Modbus TCP Poller" [ start=8244, length=2, refresh=500, type="holding" ] {  
        Thing data Data8244 "ProductionDate"                     [ readStart="8244", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }

// Relais Data
    Bridge poller EGO_slave15 "EGO Modbus TCP Poller"            [ start=4096, length=3, refresh=500, type="holding" ] {  
        Thing data Data4096 "Relais1.ActualPower"                [ readStart="4096", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4097 "Relais1.OperatingSeconds"           [ readStart="4097", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }    
    Bridge poller EGO_slave15_1 "EGO Modbus TCP Poller"          [ start=4099, length=2, refresh=500, type="holding" ] {  
        Thing data Data4099 "Relais1.SwitchingCycles"            [ readStart="4099", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }    
    Bridge poller EGO_slave15_2 "EGO Modbus TCP Poller"          [ start=4101, length=2, refresh=500, type="holding" ] {  
        Thing data Data4101 "Relais1.MinOnTime"                  [ readStart="4101", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4102 "Relais1.MinOffTime"                 [ readStart="4102", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
    }
    
    Bridge poller EGO_slave16 "EGO Modbus TCP Poller"            [ start=4128, length=3, refresh=500, type="holding" ] {  
        Thing data Data4128 "Relais2.ActualPower"                [ readStart="4128", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4129 "Relais2.OperatingSeconds"           [ readStart="4129", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }    
    Bridge poller EGO_slave16_1 "EGO Modbus TCP Poller"          [ start=4131, length=2, refresh=500, type="holding" ] { 
        Thing data Data4131 "Relais2.SwitchingCycles"            [ readStart="4131", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }    
    Bridge poller EGO_slave16_2 "EGO Modbus TCP Poller"          [ start=4133, length=2, refresh=500, type="holding" ] { 
        Thing data Data4133 "Relais2.MinOnTime"                  [ readStart="4133", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4134 "Relais2.MinOffTime"                 [ readStart="4134", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
    }

    Bridge poller EGO_slave17 "EGO Modbus TCP Poller"            [ start=4160, length=3, refresh=500, type="holding" ] {  
        Thing data Data4160 "Relais3.ActualPower"                [ readStart="4160", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4161 "Relais3.OperatingSeconds"           [ readStart="4161", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
   }    
    Bridge poller EGO_slave17_1 "EGO Modbus TCP Poller"          [ start=4163, length=2, refresh=500, type="holding" ] { 
        Thing data Data4163 "Relais3.SwitchingCycles"            [ readStart="4163", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }    
    Bridge poller EGO_slave17_2 "EGO Modbus TCP Poller"          [ start=4165, length=2, refresh=500, type="holding" ] { 
        Thing data Data4165 "Relais3.MinOnTime"                  [ readStart="4165", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4166 "Relais3.MinOffTime"                 [ readStart="4166", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
    }

 //Temperaturdaten
    Bridge poller EGO_slave18 "EGO Modbus TCP Poller"            [ start=4610, length=5, refresh=500, type="holding" ] { 
        Thing data Data4610 "RestartCounter"                     [ readStart="4610", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4612 "RelaisCount"                        [ readStart="4612", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4613 "ActualTemperaturPCB"                [ readStart="4613", readValueType="int16", updateUnchangedValuesEveryMillis="500" ]
    }

    Bridge poller EGO_slave19 "EGO Modbus TCP Poller"            [ start=4610, length=4, refresh=500, type="holding" ] { 
        Thing data Data4617 "TemperatureMinValue"                [ readStart="4610", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4618 "TemperatureMaxValue"                [ readStart="4612", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4619 "TemperatureNominalValue"            [ readStart="4613", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
    }

    Bridge poller EGO_slave20 "EGO Modbus TCP Poller"            [ start=4864, length=3, refresh=500, type="holding" ] { 
        Thing data Data4864 "PowerNominalValue"                  [ writeStart="4864", writeValueType="int16", writeType="holding", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data4865 "HomeTotalPower"                     [ writeStart="4865", writeValueType="int32", writeType="holding", updateUnchangedValuesEveryMillis="500" ]
    }

    Bridge poller EGO_slave21 "EGO Modbus TCP Poller"            [ start=5120, length=8, refresh=500, type="holding" ] { 
        Thing data Data5120 "TotalOperatingSeconds"              [ readStart="5120", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5121 "TotalOperatingSeconds"              [ readStart="5121", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5122 "ErrorCounter"                       [ readStart="5122", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5123 "ErrorCounter"                       [ readStart="5123", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5124 "ActualTemperaturBoiler"             [ readStart="5124", readValueType="int16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5125 "ActualTemperaturExternalSensor1"    [ readStart="5125", readValueType="int16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5126 "ActualTemperaturExternalSensor2"    [ readStart="5126", readValueType="int16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5127 "UserTemperaturNominalValue"         [ readStart="5127", readValueType="int16", updateUnchangedValuesEveryMillis="500" ]
    }
    Bridge poller EGO_slave22 "EGO Modbus TCP Poller"            [ start=5128, length=4, refresh=500, type="holding" ] { 
        Thing data Data5128 "RelaisStatus"                       [ readStart="5128", readValueType="uint16", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5129 "Relais1.OperatingSeconds"           [ readStart="5129", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5130 "Relais1.OperatingSeconds"           [ readStart="5130", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }
    Bridge poller EGO_slave23 "EGO Modbus TCP Poller"            [ start=5131, length=4, refresh=500, type="holding" ] { 
        Thing data Data5131 "Relais2.OperatingSeconds"           [ readStart="5131", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5132 "Relais2.OperatingSeconds"           [ readStart="5132", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5133 "Relais3.OperatingSeconds"           [ readStart="5133", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
        Thing data Data5134 "Relais3.OperatingSeconds"           [ readStart="5134", readValueType="uint32", updateUnchangedValuesEveryMillis="500" ]
    }
}

/*

https://www.openhab.org/addons/bindings/modbus/#channels


https://www.photovoltaikforum.com/thread/164353-ego-smart-heater-ethernet-steuern-evtl-bereits-über-ein-kostal-smart-energy-mete/?pageNo=2
https://www.photovoltaikforum.com/thread/106123-ego-smart-heater/?pageNo=3

Items

Group   gSolar "Solar data"
Group:Number:SUM   gSolalarmMinor  "Minor alarm [%d] "<error>
Group:Number:SUM   gSolalarmWarning "Warning [%d] "   <error>
Group:Number:SUM   gSolalarmMajor "Major alarm [%d] " <error>
Group:Number:SUM   gSolateleIndica  "Standelone tele indication [%d] " <settings>
Group Fehlermeldungen

Number  Rated_power                                                                                                         { channel="modbus:data:SUN2000:slave101holding:Rated_power:number" } 
Number  Maximum_active_power                                                                                                { channel="modbus:data:SUN2000:slave101holding:Maximum_active_power:number" }
Number  Maximum_apparent_power                                                                                              { channel="modbus:data:SUN2000:slave101holding:Maximum_apparent_power:number" }
Number  Maximum_reactive_power_fed                                                                                          { channel="modbus:data:SUN2000:slave101holding:Maximum_reactive_power_fed:number" }
Number  Maximum_reactive_power_absorbed                                                                                     { channel="modbus:data:SUN2000:slave101holding:Maximum_reactive_power_absorbed:number" }

String  Standalone_tele_indication       "Tele indicatie  [%s]"                 
Number  Standalone_tele_indicationbit0   "Stand by"                                                       (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit0:number" }
Number  Standalone_tele_indicationbit1   "Grid connection"                                                (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit1:number" }
Number  Standalone_tele_indicationbit2   "Normal grid connection"                                         (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit2:number" }
Number  Standalone_tele_indicationbit3   "Grid connection with derating due to power rationing"           (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit3:number" }
Number  Standalone_tele_indicationbit4   "Grid connection with derating due to inverter internel causes"  (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit4:number" }
Number  Standalone_tele_indicationbit5   "Normal stop"                                                    (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit5:number" }
Number  Standalone_tele_indicationbit6   "Stop due to faults"                                             (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit6:number" }
Number  Standalone_tele_indicationbit7   "Stop due to power rationing"                                    (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit7:number" }
Number  Standalone_tele_indicationbit8   "Shutdown"                                                       (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit8:number" }
Number  Standalone_tele_indicationbit9   "Spot check"                                                     (gSolateleIndica) { channel="modbus:data:SUN2000:slave102holding:Standalone_tele_indicationbit9:number" }

Number  Unlocked              "Unlocked [MAP(0-1.map):%s]"   <settings>                                                     { channel="modbus:data:SUN2000:slave102aholding:Operating_statusbit0:number" }
Number  Pv_connection         "Pv connection [MAP(0-1.map):%s]"  <settings>                                                 { channel="modbus:data:SUN2000:slave102aholding:Operating_statusbit1:number" }
Number  Dsp_data_collection   "Dsp data collection [MAP(0-1.map):%s]"  <settings>                                           { channel="modbus:data:SUN2000:slave102aholding:Operating_statusbit2:number" }

Number  Alarm_1bit0            "High String Voltage 2001"                                                 (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit0:number" }
Number  Alarm_1bit1            "DC Arc Fault 2002"                                                        (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit1:number" }
Number  Alarm_1bit2            "String Reversed 2011"                                                     (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit2:number" }
Number  Alarm_1bit3            "PV String Backfeed 2012"                                                  (gSolalarmWarning){ channel="modbus:data:SUN2000:slave103holding:Alarm_1bit3:number" }
Number  Alarm_1bit4            "Abnormal String 2013"                                                     (gSolalarmWarning){ channel="modbus:data:SUN2000:slave103holding:Alarm_1bit4:number" }
Number  Alarm_1bit5            "AFCI Self-test Fault 2021"                                                (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit5:number" }
Number  Alarm_1bit6            "Short circuit between phase to PE 2031"                                   (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit6:number" }
Number  Alarm_1bit7            "Power Grid Failure 2032"                                                  (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit7:number" }
Number  Alarm_1bit8            "Grid Undervoltage 2033"                                                   (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit8:number" }
Number  Alarm_1bit9            "Grid Overvoltage 2034"                                                    (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit9:number" }
Number  Alarm_1bit10           "Unbalanced Grid Voltage 2035"                                             (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit10:number" }
Number  Alarm_1bit11           "Grid Overfrequency 2036"                                                  (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit11:number" }
Number  Alarm_1bit12           "Grid Underfrequency 2037"                                                 (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit12:number" }
Number  Alarm_1bit13           "Grid Frequency Instability 2038"                                          (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit13:number" }
Number  Alarm_1bit14           "Output Overcurrent 2039"                                                  (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit14:number" }
Number  Alarm_1bit15           "Large DC of Output current 2040"                                          (gSolalarmMajor)  { channel="modbus:data:SUN2000:slave103holding:Alarm_1bit15:number" }


Number  Alarm_2bit0           "Abnormal Leakage Current 2051"                                             (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit0:number" }
Number  Alarm_2bit1           "Abnormal Ground 2061"                                                      (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit1:number" }
Number  Alarm_2bit2           "Low Insulation Res 2062"                                                   (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit2:number" }
Number  Alarm_2bit3           "High Temperature 2063"                                                     (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit3:number" }
Number  Alarm_2bit4           "Abnormal Equipment 2064"                                                   (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit4:number" }
Number  Alarm_2bit5           "Upgrade Failed 2065"                                                       (gSolalarmMinor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit5:number" }
Number  Alarm_2bit6           "License Expired 2066"                                                      (gSolalarmWarning) { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit6:number" }
Number  Alarm_2bit7           "Abnormal Monitor Unit 61440"                                               (gSolalarmMinor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit7:number" }
Number  Alarm_2bit8           "Power collector fault 2067"                                                (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit8:number" }
Number  Alarm_2bit9           "Abnormal energy storage device 2068"                                       (gSolalarmMinor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit9:number" }
Number  Alarm_2bit10          "Active islanding 2070"                                                     (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit10:number" }
Number  Alarm_2bit11          "Passive islanding 2071"                                                    (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit11:number" }
Number  Alarm_2bit12          "Transient AC overvoltage 2072"                                             (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit12:number" }
Number  Alarm_2bit13          "Transient AC overvoltage 2072"                                             (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit13:number" }
Number  Alarm_2bit14          "Transient AC overvoltage 2072"                                             (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit14:number" }
Number  Alarm_2bit15          "Abnormal PV module configuration 2080"                                     (gSolalarmMajor)   { channel="modbus:data:SUN2000:slave103aholding:Alarm_2bit15:number" }


Number  Pv_1_Voltage        "Pv 1 Voltage[%. 1f V]"    <energy>                                         (gSolar)             { channel="modbus:data:SUN2000:slave104holding:Pv_1_Voltage:number" }
Number  Pv_1_Current        "Pv 1 Strom[%.2f A]"     <energy>                                         (gSolar)              { channel="modbus:data:SUN2000:slave104holding:Pv_1_Current:number" }
Number  Pv1CurrentT
Number  Pv_2_Voltage        "Pv 2 Voltage[%.1f V]"    <energy>                                         (gSolar)              { channel="modbus:data:SUN2000:slave104holding:Pv_2_Voltage:number" }
Number  Pv2VoltageT
Number  Pv_2_Current        "Pv 2 Strom[%.2f A]"     <energy>                                         (gSolar)              { channel="modbus:data:SUN2000:slave104holding:Pv_2_Current:number" }
Number  Pv2CurrentT

Number  Input_power                                                                                                          { channel="modbus:data:SUN2000:slave105holding:Input_power:number" }
Number  Uab                                                                                                                  { channel="modbus:data:SUN2000:slave105holding:Uab:number" }
Number  Ubc                                                                                                                  { channel="modbus:data:SUN2000:slave105holding:Ubc:number" }
Number  Uca                                                                                                                  { channel="modbus:data:SUN2000:slave105holding:Uca:number" }
Number  Ua                                                                                            (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Ua:number" }
Number  Ub                                                                                            (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Ub:number" }
Number  Uc                                                                                            (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Uc:number" }
Number  La                                                                                                                   { channel="modbus:data:SUN2000:slave105holding:La:number" }
Number  Lc                                                                                                                   { channel="modbus:data:SUN2000:slave105holding:Lc:number" }
Number  Active_peak_of_current_day                                                                                           { channel="modbus:data:SUN2000:slave105holding:Active_peak_of_current_day:number" }
Number  Active_power         "Active power[%.2f Kw]"      <energy>                                (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Active_power:number" }
Number  Reactive_power                                                                                                       { channel="modbus:data:SUN2000:slave105holding:Reactive_power:number" }
Number  Power_factor                                                                                                         { channel="modbus:data:SUN2000:slave105holding:Power_factor:number" }
Number  Frequency                                                                                                            { channel="modbus:data:SUN2000:slave105holding:Frequency:number" }
Number  Inverter_efficiency  "Wirkungsgradwandler [%.1f %%]" <settings>                               (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Inverter_efficiency:number" }
Number  Cabinet_temperature  "Temperaturkonverter[%.1f °C]"<temperature>                             (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Cabinet_temperature:number" }
Number  Insulation_resistance                                                                                                { channel="modbus:data:SUN2000:slave105holding:Insulation_resistance:number" }
Number  Device_status    "Gerätestatus [MAP(inverter_device_status.map):%s]" <settings>             (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Device_status:number" }
Number  Fault_code            "Fehlercode [%d]"      <error>                                           (gSolar)               { channel="modbus:data:SUN2000:slave105holding:Fault_code:number" }
Number  Start_up_time                                                                                                        { channel="modbus:data:SUN2000:slave105holding:Start_up_time:number" }
Number  Shutdown_time                                                                                                        { channel="modbus:data:SUN2000:slave105holding:Shutdown_time:number" }

Number  E_total            "Energie-Gesamtertrag [%.2f Kwh]"    <line>                                      (gSolar)               { channel="modbus:data:SUN2000:slave106holding:E_total:number" }

Number  E_day              "Energie-Tagesertrag[%.2f Kwh]" <line>                                      (gSolar)               { channel="modbus:data:SUN2000:slave107holding:E_day:number" }

Number  Reactive_power_compensation_pf                                                                                       { channel="modbus:data:SUN2000:slave108holding:Reactive_power_compensation_pf:number" }
Number  Reactive_power_compensation_qs                                                                                       { channel="modbus:data:SUN2000:slave108holding:Reactive_power_compensation_qs:number" }
Number  Active_power_derating_percent                                                                                        { channel="modbus:data:SUN2000:slave108holding:Active_power_derating_percent:number" }
Number  Active_power_derating_fixed  

Number  Charge_and_discharge_power                                                                                       { channel="modbus:data:SUN2000:slave110holding:Charge_and_discharge_power:number" }
Number  Battery_SOC                                                                                                      { channel="modbus:data:SUN2000:slave111holding:Battery_SOC:number" }


Group PV_Steuerung