From 4e0dc2e6c3d822f7224da3af866381b7a11d0755 Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Sun, 8 Sep 2013 06:46:08 +0000 Subject: [PATCH] SENSOR_MULTILVEL parse from peterb git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@3875 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_ZWave.pm | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/fhem/FHEM/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm index 7b16a9f32..6b2be2148 100755 --- a/fhem/FHEM/10_ZWave.pm +++ b/fhem/FHEM/10_ZWave.pm @@ -72,7 +72,13 @@ my %zwave_class = ( get => { sbStatus => "02", }, parse => { "03300300" => "state:closed", "033003ff" => "state:open", },}, - SENSOR_MULTILEVEL => { id => '31', }, + SENSOR_MULTILEVEL => { id => '31', + get => { smStatus => "04" }, + parse => { "06310501(..)(....)" => 'sprintf("temperature:%0.1f %s",'. + 'hex($2)/(10**int(hex($1)/32)), '. + 'hex($1)&8 ? "F":"C")', + "05310505(..)(..)" => 'sprintf("humidity:%0.1f %%", '. + 'hex($2)/(10**int(hex($1)/32)))'},}, METER => { id => '32', parse => { "..3202(.*)"=> 'ZWave_ParseMeter($1)' }, }, ZIP_ADV_SERVER => { id => '33', }, @@ -130,7 +136,8 @@ my %zwave_class = ( BATTERY => { id => '80', get => { battery => "02" }, parse => { "038003(..)"=> '"battery:".hex($1)." %"' }, }, - CLOCK => { id => '81', }, + CLOCK => { id => '81', + parse => { "028105"=> "clock:get" }, }, HAIL => { id => '82', }, WAKE_UP => { id => '84', set => { wakeupInterval => "04%06x%02x" }, @@ -701,6 +708,11 @@ ZWave_Undef($$) return the status of the node, as state:open or state:closed. +

Class SENSOR_MULTILEVEL +
  • smStatus
    + request data from the node (temperature/humidity/etc) +
  • +

    Class CONFIGURATION
  • config cfgAddress
    return the value of the configuration parameter cfgAddress. The value is @@ -735,6 +747,11 @@ ZWave_Undef($$) Lib A Prot x.y App a.b
  • +

    Class THERMOSTAT_SETPOINT +
  • setpoint
    + request the setpoint +
  • +

    Class MULTI_CHANNEL
  • mcEndpoints
    return the list of endpoints available, e.g.:
    @@ -789,6 +806,11 @@ ZWave_Undef($$)
  • state:open
  • state:closed
  • +

    Class SENSOR_MULTILEVEL +
  • temperature:$temp [C|F]
  • +
  • humidity:$hum %
  • + +

    Class METER
  • power:val [kWh|kVAh|W|pulseCount]
  • gas:val [m3|feet3|pulseCount]
  • @@ -813,10 +835,16 @@ ZWave_Undef($$)

    Class VERSION
  • version:Lib A Prot x.y App a.b
  • +

    Class THERMOSTAT_SETPOINT +
  • temperature:$temp [C|F] [heating|cooling]
  • +

    Class MULTI_CHANNEL
  • endpoints:total X $dynamic $identical
  • mcCapability_X:class1 class2 ...
  • +

    Class CLOCK +
  • clock:get
  • +