From 274c73557dfff35e1f862a17e0af27a61cb85aa7 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Sun, 8 Jan 2023 12:27:45 +0000 Subject: [PATCH] 10_ZWave.pm: add set thermostatMode (Forum #112955) git-svn-id: https://svn.fhem.de/fhem/trunk@27000 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_ZWave.pm | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/fhem/FHEM/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm index 8676f3d5f..7420435a6 100644 --- a/fhem/FHEM/10_ZWave.pm +++ b/fhem/FHEM/10_ZWave.pm @@ -196,7 +196,8 @@ my %zwave_class = ( METER_TBL_PUSH => { id => '3e' }, PREPAYMENT => { id => '3f' }, THERMOSTAT_MODE => { id => '40', - set => { tmOff => "0100", + set => { thermostatMode => 'ZWave_tmSet("%s")', #112955 + tmOff => "0100", tmHeating => "0101", tmCooling => "0102", tmAuto => "0103", @@ -660,6 +661,9 @@ my %zwave_cmdArgs = ( rgb => "colorpicker,RGB", configRGBLedColorForTesting => "colorpicker,RGB", # Aeon SmartSwitch 6 "desired-temp" => "slider,7,1,28,1", + thermostatMode => "Off,Heating,Cooling,Auto,Auxiliary,Resume,Fan,Furnace,". + "DryAir,MoistAir,AutoChange,EnergySaveHeating,". + "EnergySaveCooling,Away,FullPower,Manual" }, get => { }, @@ -6250,6 +6254,32 @@ ZWave_entryControlParse($$) return "entry_control:sequence $seq dataType $dt eventType $et data $data" } + +sub +ZWave_tmSet($) +{ + my ($p) = @_; + my %par = ( + Off => "0100", + Heating => "0101", + Cooling => "0102", + Auto => "0103", + Auxiliary => "0104", + Resume => "0105", + Fan => "0106", + Furnace => "0107", + DryAir => "0108", + MoistAir => "0109", + AutoChange=> "010a", + EnergySaveHeating => "010b", + EnergySaveCooling => "010c", + Away => "010d", + FullPower => "010f", + Manual => "011f" + ); + return ("", $par{$p}) if($par{$p}); + return "Unknown parameter $p"; +} 1; =pod @@ -6817,6 +6847,10 @@ ZWave_entryControlParse($$)
  • tmFullPower
  • tmManual
    set the thermostat mode.
  • +
  • thermostatMode {Off|Heating|Cooling|...}
    + just like the above, but in combination with the setReadingOnAck ZWDongle + attribute it produces an easier way to check the current state. +


  • Class THERMOSTAT_SETPOINT
  • setpointHeating value