How to use WallC-S remote controller with UI7

In this section we will try to explain how to configure the ZWave.Me WallC-S Remote Controller (ZME_WALLC-S) with the new interface UI7.

Adding the device

First lets add the device. When the device is not connected to any network initially, the include process is straight forward.

Select “Generic Device” and press next till step 3. Inclusion of the new wall controller can be done with pressing button 1 for 2 seconds. The device will be included automatically and the process will finish.

Configuration

To let the wall controller¬†communicate in scene mode with the Vera, we have to change the default settings. When we have a look at the “Device Options” section, Vera will automically configure the Wall Controller with the following parameters:

  • parameters 1 and 2, 1dec, value 0;
  • parameters 11 – 14, 1dec, value 5;
Configuration Settings
Default Configuration Settings

Before we can have the wall controller working in scene mode, we have to change the parameters 11 to 14. The value we need to set here is 4: Send Scenes.

After changing the settings it should look similar to:

WallC-S Configuration Settings
WallC-S Configuration Settings

Scene Triggering

When all went ok, you are ready to set your scenes.¬†Unfortunately this has to be done with a small trick, as the changing variable is “LastSceneID” and not the “sl_SceneActivated” (which is used by Vera to trigger scenes).

Some experiments learn that even when buttons are pressed the “sl_SceneActivated” variable will stay 0. So it is time to make some trigger for that, and execute the code to start scene’s.

First we need to make a scene for activation of the variable “sl_SceneActivated”. Add a new scene, with a trigger on the Wall Controller. Choose when a scene is actived and select 0 as scene number. In this case everytime the controller sends a scene number, this scene will be executed.

WallC-S Scene Selection
WallC-S Scene Selection
WallC-S Scene Activation
WallC-S Scene Activation

LUUP Code

Now its time for the LUUP code, which need to be applied within this scene also:

luup.call_delay('scene_controller', 1)
function scene_controller()
 local lastSceneID= luup.variable_get("urn:micasaverde-com:serviceId:SceneController1", "LastSceneID",
 135)
if (lastSceneID== "11") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene",
 { SceneNum="1" },0)
 elseif (lastSceneID== "12") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene",
 { SceneNum="2" },0)
 elseif (lastSceneID== "21") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene",
 { SceneNum="7" },0)
 elseif (lastSceneID== "22") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene",
 { SceneNum="2" },0)
 elseif (lastSceneID== "31") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene",
 { SceneNum="1" },0)
 elseif (lastSceneID== "32") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene",
 { SceneNum="2" },0)
 elseif (lastSceneID== "41") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene", { SceneNum="1" },0)
 elseif (lastSceneID== "42") then
 luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1","RunScene", { SceneNum="2" },0)
 end
end

There are a few things you need to update for this code, corresponding to your own setup.

  • Device number: change 135 to the device number (id) of the wall controller;
  • Change the LastSceneID values corresponding to your needs; this is only an example of the configuration, but more options are possible;
  • Change the SceneNum values to the id’s (can be found in the main Scenes screen) you would like to run.