Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


  • 0

Zwave.me WallCS


robd

Question

I have an "old" version of the zwave.me wallcs. the one with the 4 buttons. with sime LUA code I programmed the module to switch and dim some dimmers.

Please login or register to see this code.

see a portion of the code above. this works fine.

Now I bought new wallcs modules and the same code is not working. so why not?

Well because the trigger property is gone in the new version.

the old version has a  property "sceneActivation" the new one has not. see two screenshots.

who is responsible for this problem? Has Fibaro fogotten to implement this property in its code of is zwave.me forgotten to put it in the firmware of the module, or should I use another property?

the only difference in properties between the 2 versions is the SceneActivation

 

 

 

Please login or register to see this attachment.

Please login or register to see this attachment.

Link to comment
Share on other sites

16 answers to this question

Recommended Posts

  • 0

I have a similar problem, I want to use the ZME_WALLC-2 for steerig my Fibaro roller shutter, but first of all there is no template. After setting the parameters manually and sending Fibaro the missing template file, I have tried all described solutions I can found, but none of these work. The buttons send no sceneActivation. I can find a function named "setActivationSet()" diffent to "robd", but this fuctions expects a value, which was not required before.

 

I have tried to find a solution with this descriptions:

Please login or register to see this link.

Please login or register to see this link.

Please login or register to see this link.

Please login or register to see this link.

Please login or register to see this link.

Please login or register to see this link.

 

None of these descriptions deliver a solution why the new WALLC-2 will delivery no value of teh pushed button back to the HC2. I use the HC2 firmware verison 4.100. May there is an issue back, which was fixed in 4.042-48? I am please to get any advise or to test things to sovle the issue.

 

Please login or register to see this attachment.

Link to comment
Share on other sites

  • 0

I have opened support requests on ZME and PoPP. PoPP answered and explainded that their device works different to the ZME. I have an old ZME WALLC working, a new WALLC-2 not working and a PoPP WALL-C now working based on the feedback of the support to use Events and read the actions with json.

 

The 4 buttons deliver their actions and you can read the attributes. Currently only with push and release works, no double or tripple clicks nor HeldDown:

 

--[[
%% properties
%% events
89 CentralSceneEvent
%% globals
--]]


local startSource = fibaro:getSourceTrigger();
action = json.encode(startSource)
fibaro:debug(action)

-- Key top left
local Key1 = action:match('"keyId":1')
-- Key top right
local Key2 = action:match('"keyId":2')
-- Key bottom left
local Key3 = action:match('"keyId":3')
-- Key bottom right
local Key4 = action:match('"keyId":4')

if (Key1 ~= nil) then
  fibaro:debug('Key1 pressed');
elseif (Key2 ~= nil) then
  fibaro:debug('Key2 pressed');
elseif (Key3 ~= nil) then
  fibaro:debug('Key3 pressed');
elseif (Key4 ~= nil) then
  fibaro:debug('Key4 pressed');
end

 

I haven't tried out till now, if a similar approach will also work for the ZME WALLC-2.

Link to comment
Share on other sites

  • 0
  • Inquirer
  • Dear madam, sir,

     

    I recently bought 4 zwave.me wall switches Zwave.me WallC-s2 (new version) because it seems to me a good module for my needs. I use already the WallC-S to my satisfaction with a HC2

    The new version however is not working. At least due to the fact that the property "sceneActivation" is missing to trigger a scene.

     

    I posted two problems on the Fibaro forum but so far no helpful response.

    Please login or register to see this link.

    Please login or register to see this link.

     

    Zwave.me states that this is due to the fact that Fibaro is not supporting ZwavePlus for this device. See

    Please login or register to see this link.

     

    As a customer who paid serious money for these modules, I don’t want to get involved in a yes/no battle between the supplier of the module and the supplier of the controller, I like to have a working system.

    So please check what is going on and repair as soon as possible this problem so that I can switch on the lights in my house.

     

    Best regards

     

    Robert

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • On 20-10-2016 at 9:22 PM, JeyDee said:

    I have opened support requests on ZME and PoPP. PoPP answered and explainded that their device works different to the ZME. I have an old ZME WALLC working, a new WALLC-2 not working and a PoPP WALL-C now working based on the feedback of the support to use Events and read the actions with json.

     

    The 4 buttons deliver their actions and you can read the attributes. Currently only with push and release works, no double or tripple clicks nor HeldDown:

     

    --[[
    %% properties
    %% events
    89 CentralSceneEvent
    %% globals
    --]]


    local startSource = fibaro:getSourceTrigger();
    action = json.encode(startSource)
    fibaro:debug(action)

    -- Key top left
    local Key1 = action:match('"keyId":1')
    -- Key top right
    local Key2 = action:match('"keyId":2')
    -- Key bottom left
    local Key3 = action:match('"keyId":3')
    -- Key bottom right
    local Key4 = action:match('"keyId":4')

    if (Key1 ~= nil) then
      fibaro:debug('Key1 pressed');
    elseif (Key2 ~= nil) then
      fibaro:debug('Key2 pressed');
    elseif (Key3 ~= nil) then
      fibaro:debug('Key3 pressed');
    elseif (Key4 ~= nil) then
      fibaro:debug('Key4 pressed');
    end

     

    I haven't tried out till now, if a similar approach will also work for the ZME WALLC-2.

    I can try this somewhere this week but heldDown is neccessary to dimUp and dimDown

    Link to comment
    Share on other sites

    • 0

    I am looking for double click, because I want to use it for the roller shutter. Up and down is good, also a LUA for the automatic ompening in the morning and closing at night. But during the day, we want to shade the south side of the house by manually close and stop the shutter on 30-60%. We can do this currently only by phone app.

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • well, the above code does not work right out of the box.

     

    The first question is how to set the parameters in the WallC

    I now use

     parameters 1 and 2 set to 0

    and parameters 11, 12, 13 and 14 set to 4

    Accoding to the PoPP manual this should lead to sending a number to the controller. The value of this number is a concatenation of the keynumber and the action.

    so far so good.

    but if I put this LUA code in a new scene and push a button on the module nothing happens.

    not even the action is printed in the debug field.

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • ok,

     

    I have some discussions with Sebastian from PoPP.

    He says that I shoud set all parameters to default.

    so I did.

    still no response from the module.

     

    unfortunately in German:

     

    Quote

    du musst die Parameter wieder auf default setzen damit dies Funktioniert.
    Ich habe den Wall-C nur angelernt und Scene geschrieben. Mit den gesetzten Parametern würde die SceneActivation aktiviert. Dies hat das Gerät aber nicht.

     

    so parameters

    1 and 2 set to "1"

    and 11 - 14 set to "8"

     

    I wrote a few lines of code to check that pressing a button activates the scene.

    --[[
    %% properties
    %% events
    141 centralSceneEvent
    %% globals
    --]]


    local id = 141
    local name = fibaro:getName(id)
    fibaro:debug("name: "..name)

     

    I expect the name of the device printed in the debug area when I press a button.

    nothing happens.

     

     

    I noticed however that for some miraculous reason the property "sceneActivation" is now present.

    but Popp stated that the module does not have scene activation.

    Edited by robd
    update
    Link to comment
    Share on other sites

    • 0

    Hello Robd,

     

    I was short on time so I have tested only with the PoPP switches, may I can test also the ZME at weekend. The PoPP switch is working differently from zme, so that you have to set the parameters as defined by the vendor. To use the PoPP switch for two roller shutter with function up, down and stop, you have to configure it as 8-buttuns. buttons 1- 4 are for single click, 5-8 are for double click. This was the first difference I have recognized to the zme. The zme have a value for double click, the PoPP is defining more buttons, instead of an additional command. I have attached the parameter configuation as screenshot for this configuration.

     

    After teh configuration and updating the device configuration. Push all 4 buttons, till it starts to blink and that push button 2, it starts blinking faster, than switch is updated, now you can create your own script, working with single und double push. This one works with two roller shutter with up down on buttons 1/3 for shutter 1 and 2/4 for shutter 2. the buttons 5/7 and 6/6 are defined for double click to stop the shutter.

     

    If yo uwant to do similar things you have to replace the IDs by your device IDs. I have tried it also to switch a wall plug, which works fine only by changing the call line to switch the wall plug on:

       (fibaro:call(plugID,"turnOn");

    and off:

       (fibaro:call(plugID,"turnOff"); 

     

    Now all PoPP switches work with LUA scripts like below. The answer of zme that Fibaro is not supporting zwave plus can't be correct, because teh PoPP switches are zwave plus devices. I will try to find a way how to configure the zme, when I have some more time. The zme will need a different configuration due to different parameters and commands. I hope this will help you:

     

    --[[
    %% properties
    %% events
    109 CentralSceneEvent
    80 value
    82 value
    %% globals
    --]]
    -- ID 109 = PoPP Switch
    -- ID 80 = Shutter 1
    -- ID 82 = Shutter 2
    local startSource = fibaro:getSourceTrigger();
    local action = json.encode(startSource);
    local roller1 = 80;
    local roller2 = 82;

    -- if you want to see everything uncomment the debug line

    --fibaro:debug(action)


    -- Key top left
    local Key1 = action:match('"keyId":1')
    -- Key top right
    local Key2 = action:match('"keyId":2')
    -- Key bottom left
    local Key3 = action:match('"keyId":3')
    -- Key bottom right
    local Key4 = action:match('"keyId":4')
    -- Key top left - double click
    local Key5 = action:match('"keyId":5')
    -- Key top right - double click
    local Key6 = action:match('"keyId":6')
    -- Key bottom left - double click
    local Key7 = action:match('"keyId":7')
    -- Key bottom right - double click
    local Key8 = action:match('"keyId":8')

     

    -- roller: open & close, stop on double click
    if (Key1 ~= nil) then
      fibaro:call(roller1, "open");
    elseif (Key2 ~= nil) then
      fibaro:call(roller2, "open");
    elseif (Key3 ~= nil) then
      fibaro:call(roller1, "close");
    elseif (Key4 ~= nil) then
      fibaro:call(roller2, "close");
    elseif (Key5 ~= nil) then
      fibaro:call(roller1, "stop");
    elseif (Key6 ~= nil) then
      fibaro:call(roller2, "stop");
    elseif (Key7 ~= nil) then
      fibaro:call(roller1, "stop");
    elseif (Key8 ~= nil) then
      fibaro:call(roller2, "stop");
    end

     

     

    Please login or register to see this attachment.

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • I finally got things running but not according to the documentation and help from Popp:

    I had to define

    - and the property SceneActivation

    - and the event CentralSceneEvent

     

    If I discard one of them the module is sending noting to my HC2.

     

    I Hacked the following code to control 2 dimmers with the 2 rockers:

     

    --[[
    %% properties
    143 sceneActivation
    %% events
    143 CentralSceneEvent
    %% globals
    --]]
    -- both lines are required. If one of the lines are discarded the scene won't work.

    --++++++++++++++++++++++++
    -- Here the action attribute of the activated key is derived
    local button_source = fibaro:getSourceTrigger()["event"]["data"]
    local mode = tostring(button_source["keyAttribute"])
    -- fibaro:debug("mode: "..mode..'\n')
    -- The derived action attribute is converted in number
    local Aktie = 0
    if (mode == "Pressed") then Aktie = 1
        elseif (mode == "HeldDown") then Aktie = 3
                elseif (mode == "Released") then Aktie = 5
    end
    -- fibaro:debug("Aktie: "..Aktie..'\n')
    --++++++++++++++++++++++++

    --++++++++++++++++++++++++
    -- here the activated key is determined
    local startSource = fibaro:getSourceTrigger();
    action = json.encode(startSource)
    -- fibaro:debug("Action: "..action..'\n')

    local Key1 = action:match('"keyId":1')
    local Key2 = action:match('"keyId":2')
    local Key3 = action:match('"keyId":3')
    local Key4 = action:match('"keyId":4')

    -- the activated key is converted into a number
    local toets = 0
    if (Key1 ~= nil) then toets = 1
    --    fibaro:debug('\n'..'Key1');
        elseif (Key2 ~= nil) then toets = 2
    --          fibaro:debug('\n'..'Key2');
            elseif (Key3 ~= nil) then toets = 3
    --              fibaro:debug('\n'..'Key3');
                elseif (Key4 ~= nil) then toets = 4
    --                  fibaro:debug('\n'..'Key4');
    end
    -- fibaro:debug('\n'.."toets: "..toets)
    --+++++++++++++++++++++++++

    --+++++++++++++++++++++++++
    -- the numbers for the activated key and the way the key is activated are concatenated into a 2 digit number
    local Doel = toets..Aktie
    -- Key1 Pressed = 11
    --  Key1 HeldDown = 13
    --  Key1 Released = 15
    -- Key2 Pressed = 21
    --  Key2 HeldDown = 23
    --  Key2 Released = 25
    -- Key3 Pressed = 31
    --  Key3 HeldDown = 33
    --  Key3 Released = 35
    -- Key4 Pressed = 41
    --  Key4 HeldDown = 43
    --  Key4 Released = 45
    -- fibaro:debug (Doel)
    --+++++++++++++++++++++++++

    --+++++++++++++++++++++++++
    -- The devices we want to control with the left and right rocker
    local LinkerWip = 88  -- device controlled by the left rocker
    local RechterWip = 91 -- device controlled by the right rocker
    --+++++++++++++++++++++++++

    --+++++++++++++++++++++++++
    --Key and Action are programmed to control a device
    if(Doel == "11")
        then
            fibaro:call(LinkerWip, "turnOn")
        elseif(Doel == "13")
            then
                  fibaro:call(LinkerWip, "startLevelIncrease")
            elseif(Doel == "15")
                then
                    fibaro:call(LinkerWip, "stopLevelChange")
    elseif(Doel == "31")
        then
            fibaro:call(LinkerWip, "turnOff")
        elseif(Doel == "33")
              then
                fibaro:call(LinkerWip, "startLevelDecrease")
            elseif(Doel == "35")
                then
                    fibaro:call(LinkerWip, "stopLevelChange")
    elseif(Doel == "21")
        then
            fibaro:call(RechterWip, "turnOn")
        elseif(Doel == "23")
            then
                  fibaro:call(RechterWip, "startLevelIncrease")
            elseif(Doel == "25")
                then
                    fibaro:call(RechterWip, "stopLevelChange")
    elseif(Doel == "41")
        then
            fibaro:call(RechterWip, "turnOff")
        elseif(Doel == "43")
              then
                fibaro:call(RechterWip, "startLevelDecrease")
            elseif(Doel == "45")
                then
                    fibaro:call(RechterWip, "stopLevelChange")

        else
            fibaro:debug("Key and Action: "..Doel..'\n')
    end

    Link to comment
    Share on other sites

    • 0

    Hi Robd,

     

    finally I made some tests with the two zme switches, result:

     

    1.) The Z-Wave.me WallC-2 is a relabeled PoPP switch working identical to the PoPP switches. You have to define the properties similar to the PoPP switches and use the same commands and attribures. Find attached the relabed device

    Please login or register to see this attachment.

    Please login or register to see this attachment.

    Link to comment
    Share on other sites

    • 0

    2.) The Z-Wave.me WallC-S has a different firmware and works differently. Finally I was able to set it up and made it working for me:

     

    --[[
    %% properties
    74 sceneActivation
    %% globals
    --]]

    local startSource
    local id = 74

    startSource = fibaro:getValue(id, "sceneActivation")
    fibaro:debug(startSource)


    -- Single clicks --
    if (startSource == '11') then
        fibaro:debug('simple click btn 1');
    end;
    if (startSource == '21') then
        fibaro:debug('simple click btn 2');
    end;
    if (startSource == '12') then
        fibaro:debug('simple click btn 3');
    end;
    if (startSource == '22') then
        fibaro:debug('simple click btn 4');
    end;

    -- Double clicks --
    if (startSource == '31') then
        fibaro:debug('double click btn 1');
    end;
    if (startSource == '41') then
        fibaro:debug('double click btn 2');
    end;
    if (startSource == '32') then
        fibaro:debug('double click btn 3');
    end;
    if (startSource == '42') then
        fibaro:debug('double click btn 4');
    end;

     

     

    Please login or register to see this attachment.

    Please login or register to see this attachment.

    Please login or register to see this attachment.

    Link to comment
    Share on other sites

    • 0
    On 4.11.2016 at 3:06 PM, robd said:

    I finally got things running but not according to the documentation and help from Popp:

    I had to define

    - and the property SceneActivation

    - and the event CentralSceneEvent

     

    If I discard one of them the module is sending noting to my HC2.

     

    I Hacked the following code to control 2 dimmers with the 2 rockers:

     

    --[[
    %% properties
    143 sceneActivation
    %% events
    143 CentralSceneEvent
    %% globals
    --]]
    -- both lines are required. If one of the lines are discarded the scene won't work.

     

     

    Thank you, robd!

     

    I have a Z-wave.me WallC-2 switch that has been waiting a while. Last time I tried it, I could not make it work. 

    After I found your suggestions here, I finally got it working!

     

    I set the parameters to default (1 & 2 = 1 and 11-14 = 8).

    As you say, the script must for some reason be triggered both by 

    'xxx sceneActivation '  and  'xxx centralSceneEvent'.

     

    Thanks to your script, I can now map my own scenes to the four buttons, incl long press, etc.  Finally.  That's great!

     

    Ole K

     

    Edited by olekenneth
    Link to comment
    Share on other sites

    • 0

    Thank you both robd & olekenneth!

     

    i struggled also with the wallc-2 but with your help it is now working!

    Any idea how to speed up the scene? it is working very slow. If you press the buttons fast there is almost no reaction!

    Great job guys!!!!

    KF

     

    Link to comment
    Share on other sites

    • 0

    Hi, Sorry to derail this post into other type push button controller but I am having similar issues with the Schneider Eletric/Mertel push button(double). Do anyone know how I can use this to trigger a scene? I have attached the user manual and the configuration from Fibaro HC2.

     

    Any help is much appriciated,

     

    - Kristoffer M

     

     

    Please login or register to see this attachment.

    Please login or register to see this attachment.

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • On 9-11-2016 at 4:37 PM, olekenneth said:

     

     

    Thank you, robd!

     

     

     

    My pleasure, I found part of the solution elsewhere so let's continue helping eachother.

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • On 25-2-2017 at 0:04 AM, KristMons said:

    Hi, Sorry to derail this post into other type push button controller but I am having similar issues with the Schneider Eletric/Mertel push button(double). Do anyone know how I can use this to trigger a scene? I have attached the user manual and the configuration from Fibaro HC2.

     

     

    Is the device included in your HC2?

    If yes, I would start with a lua scene with only these lines

    --[[
    %% properties
    xxx sceneActivation
    %% events
    xxx CentralSceneEvent
    %% globals
    --]]

     

    and

    local button_source = fibaro:getSourceTrigger()["event"]["data"]
    local mode = tostring(button_source["keyAttribute"])
    -- fibaro:debug("mode: "..mode..'\n')

     

    now if you press a button and see whats printed in the debug screen.

     

    From there on you have to hack further.

    Link to comment
    Share on other sites

    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.

    Guest
    Answer this question...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

    ×
    ×
    • Create New...