diff --git a/fhem/CHANGED b/fhem/CHANGED index 4f7e236b5..98ee202e2 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -1,5 +1,6 @@ # Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Do not insert empty lines here, update check depends on it. + - feature: 66_EseraMulti: added support for solar sensor Esera 11112 - feature: new module 74_UnifiProtect.pm for Unifi Protect integration (justme1968) - feature: 89_AndroidDB: added attribute presetFile diff --git a/fhem/FHEM/66_EseraMulti.pm b/fhem/FHEM/66_EseraMulti.pm index a93b6719f..ef58b12bc 100644 --- a/fhem/FHEM/66_EseraMulti.pm +++ b/fhem/FHEM/66_EseraMulti.pm @@ -36,7 +36,7 @@ sub EseraMulti_Initialize($) { my ($hash) = @_; - $hash->{Match} = "DS2438|11121|11132|11133|11134|11135"; + $hash->{Match} = "DS2438|11112|11121|11132|11133|11134|11135"; $hash->{DefFn} = "EseraMulti_Define"; $hash->{UndefFn} = "EseraMulti_Undef"; $hash->{ParseFn} = "EseraMulti_Parse"; @@ -252,13 +252,36 @@ EseraMulti_Parse($$) readingsSingleUpdate($rhash, $nameOfReading, $value / 100.0, 1); } } + elsif (($deviceType eq "11112")) + { + if ($readingId == 1) + { + $nameOfReading = "temperature"; + readingsSingleUpdate($rhash, $nameOfReading, $value / 100.0, 1); + } + elsif ($readingId == 2) + { + $nameOfReading = "voltage"; + readingsSingleUpdate($rhash, $nameOfReading, $value / 100.0, 1); + } + elsif ($readingId == 3) + { + $nameOfReading = "brightness"; + readingsSingleUpdate($rhash, $nameOfReading, $value / 100.0, 1); + } + elsif ($readingId == 4) + { + $nameOfReading = "radiation"; + readingsSingleUpdate($rhash, $nameOfReading, $value / 100.0, 1); + } + } } my @list; push(@list, $rname); return @list; } - elsif (($deviceType eq "DS2438") || ($deviceType eq "11121") || ($deviceType eq "11132") || ($deviceType eq "11133") || ($deviceType eq "11134") || ($deviceType eq "11135")) + elsif (($deviceType eq "DS2438") || ($deviceType eq "11112") || ($deviceType eq "11121") || ($deviceType eq "11132") || ($deviceType eq "11133") || ($deviceType eq "11134") || ($deviceType eq "11135")) { return "UNDEFINED EseraMulti_".$ioName."_".$oneWireId." EseraMulti ".$ioName." ".$oneWireId." ".$deviceType; } @@ -295,6 +318,7 @@ EseraMulti_Attr(@) Supported values for deviceType: With deviceType DS2438 this device generates readings with un-interpreted data
from DS2438. This can be used with any DS2438 device, independent of an Esera
- product. With deviceType 11121/11132/11133/11134/11135 this module provides interpreted
+ product. With deviceType 11112/11121/11132/11133/11134/11135 this module provides interpreted
readings like humidity or dew point.
@@ -346,6 +370,13 @@ EseraMulti_Attr(@)
  • brightness
  • voltage
  • + readings for Esera 11112:
    +
    diff --git a/fhem/FHEM/66_EseraOneWire.pm b/fhem/FHEM/66_EseraOneWire.pm index 69783e16b..6fcebd7f1 100644 --- a/fhem/FHEM/66_EseraOneWire.pm +++ b/fhem/FHEM/66_EseraOneWire.pm @@ -86,7 +86,7 @@ EseraOneWire_Initialize($) $hash->{Clients} = ":EseraDigitalInOut:EseraTemp:EseraMulti:EseraAnalogInOut:EseraIButton:EseraCount:EseraShutter:EseraDimmer:"; $hash->{MatchList} = { "1:EseraDigitalInOut" => "^DS2408|^11220|^11233|^11228|^11229|^11216|^SYS1|^SYS2", "2:EseraTemp" => "^DS1820", - "3:EseraMulti" => "^DS2438|^11121|^11132|^11133|^11134|^11135", + "3:EseraMulti" => "^DS2438|^11112|^11121|^11132|^11133|^11134|^11135", "4:EseraAnalogInOut" => "^SYS3|^DS2450|^11202|^11203|^11208|^11219", "5:EseraIButton" => "^DS2401", "6:EseraCount" => "^DS2423",