IKEA On/OFF connected through Deconz to work as a dimmer?

I use Conbee with a whole bunch of different products but I avoid doing anything more than pairing them in Deconz because I can’t do everything I want there. When I did some things in Deconz and other things in Node-RED I messed it up a bit so now I have everything in Node-RED.

Unfortunately, I have not been able to get Ikea’s ON/OFF to work as a dimmer with Node-RED.

As most other Deconz-conected devices, they send the following switch-code.

x00x where the first x stands for which button, and the second how to press.

x001 = hold
x002 = short release
x003 = long release

However, Philips and Ikea send these signals in completely different ways.

If I hold a Philips dimmer button it periodically sends x001 until released. This I managed to alter so it worked for me, using a Node-RED flow I found in this forum.
The flow.

[{"id":"9facf14f.949cd","type":"link in","z":"25f83860.c3ecb8","name":"Matbord","links":["366c4da0.2c0f92"],"x":101.25000143051147,"y":259.00000381469727,"wires":[["cd93bf66.c4be"]]},{"id":"40f69bf6.032934","type":"function","z":"25f83860.c3ecb8","name":"Read Bri","func":"var x = flow.get('bright');\n\nif(x <= 255){\n    msg.payload = x;\n    return[msg,null];\n}\nif(x > 255){\n    msg.payload = x;\n    return[null,msg];\n}","outputs":2,"noerr":0,"x":797.5000152587891,"y":252.75000381469727,"wires":[["8f897ca2.1769c"],[]]},{"id":"8f897ca2.1769c","type":"function","z":"25f83860.c3ecb8","name":"Brightness up","func":"var brightness =  msg.payload;\n\nif(brightness >= 0){\n    brightness = brightness + 20;    \n\t}\n\t\nif(brightness >= 255){\n    brightness = 254;\n    flow.set('bright',brightness);\n    flow.set('press', false);\n    }\n\nmsg.payload = {\n        \"bright\": brightness,\n    };\n\tmsg.feedback = brightness;\n\tflow.set('bright',brightness);\nreturn msg;","outputs":1,"noerr":0,"x":983.7500228881836,"y":265.25000381469727,"wires":[["e43ee241.76045","86f14c4e.96ba4"]]},{"id":"5e77eb22.b25fe4","type":"api-current-state","z":"25f83860.c3ecb8","name":"Get state","server":"7b1bd4ef.8503ec","version":1,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"light.matsal","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":610.0000152587891,"y":187.75001335144043,"wires":[["9ae44a96.9a87a8"]]},{"id":"9ae44a96.9a87a8","type":"function","z":"25f83860.c3ecb8","name":"Flow Set Brightness","func":"var bright = msg.data.attributes.brightness;\nflow.set('bright',bright);\nmsg.payload = bright;\nreturn msg;","outputs":1,"noerr":0,"x":881.2500152587891,"y":191.50000190734863,"wires":[[]]},{"id":"e43ee241.76045","type":"api-call-service","z":"25f83860.c3ecb8","name":"Light","server":"7b1bd4ef.8503ec","version":1,"service_domain":"light","service":"turn_on","entityId":"light.matsal","data":"{\"brightness\":\"{{payload.bright}}\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1186.250015258789,"y":277.75000762939453,"wires":[[]]},{"id":"cd93bf66.c4be","type":"switch","z":"25f83860.c3ecb8","name":"Matsal","property":"payload.event.event","propertyType":"msg","rules":[{"t":"eq","v":"1001","vt":"str"},{"t":"eq","v":"1002","vt":"str"},{"t":"eq","v":"2001","vt":"str"},{"t":"eq","v":"2002","vt":"str"},{"t":"eq","v":"3001","vt":"str"},{"t":"eq","v":"3002","vt":"str"},{"t":"eq","v":"4001","vt":"str"},{"t":"eq","v":"4002","vt":"str"}],"checkall":"true","repair":false,"outputs":8,"x":198.75,"y":258.5,"wires":[[],["52d1d33e.04258c"],["5e77eb22.b25fe4","b28d47a5.dbd288"],[],["5e77eb22.b25fe4","2cbbcb5a.2dd334"],[],[],["51c672b3.6cccbc"]]},{"id":"c00cc7d3.830f58","type":"function","z":"25f83860.c3ecb8","name":"Read Bri","func":"var x = flow.get('bright');\n\nif(x <= 1){\n    msg.payload = x;\n    return[msg,null];\n}\nif(x > 0){\n    msg.payload = x;\n    return[null,msg];\n}","outputs":2,"noerr":0,"x":798.7500152587891,"y":301.50000381469727,"wires":[[],["624fd2e0.3f094c"]]},{"id":"624fd2e0.3f094c","type":"function","z":"25f83860.c3ecb8","name":"Brightness down","func":"var brightness =  msg.payload;\n\nif(brightness <= 255){\n    brightness = brightness - 20;    \n\t}\n\t\nif(brightness <= 0){\n    brightness = 1;\n    flow.set('bright',brightness);\n    flow.set('press', false);\n    }\n\nmsg.payload = {\n        \"bright\": brightness,\n    };\n\tmsg.feedback = brightness;\n\tflow.set('bright',brightness);\nreturn msg;","outputs":1,"noerr":0,"x":982.5000228881836,"y":305.2500047683716,"wires":[["e43ee241.76045","8df8a227.9f369"]]},{"id":"6d66519e.dcc5","type":"delay","z":"25f83860.c3ecb8","name":"","pauseType":"delay","timeout":"50","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":808.7500152587891,"y":361.50000381469727,"wires":[["b26911ff.cf5cb"]]},{"id":"20cf8460.ab319c","type":"delay","z":"25f83860.c3ecb8","name":"","pauseType":"delay","timeout":"50","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":808.75,"y":404.5,"wires":[["2c076b7e.1767d4"]]},{"id":"b26911ff.cf5cb","type":"switch","z":"25f83860.c3ecb8","name":"Control loop","property":"press","propertyType":"flow","rules":[{"t":"true"}],"checkall":"true","repair":false,"outputs":1,"x":973.7500152587891,"y":361.50000381469727,"wires":[["8f897ca2.1769c"]]},{"id":"2c076b7e.1767d4","type":"switch","z":"25f83860.c3ecb8","name":"Control loop","property":"press","propertyType":"flow","rules":[{"t":"true"}],"checkall":"true","repair":false,"outputs":1,"x":973.7500152587891,"y":391.50000381469727,"wires":[["624fd2e0.3f094c"]]},{"id":"8df8a227.9f369","type":"change","z":"25f83860.c3ecb8","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"feedback","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":623.7500152587891,"y":391.50000381469727,"wires":[["20cf8460.ab319c"]]},{"id":"86f14c4e.96ba4","type":"change","z":"25f83860.c3ecb8","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"feedback","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":623.7500152587891,"y":361.50000381469727,"wires":[["6d66519e.dcc5"]]},{"id":"51c672b3.6cccbc","type":"api-call-service","z":"25f83860.c3ecb8","name":"Light off","server":"7b1bd4ef.8503ec","version":1,"service_domain":"light","service":"turn_off","entityId":"light.matsal","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":370.50001525878906,"y":368.2500057220459,"wires":[[]]},{"id":"52d1d33e.04258c","type":"api-call-service","z":"25f83860.c3ecb8","name":"Light on","server":"7b1bd4ef.8503ec","version":1,"service_domain":"light","service":"turn_on","entityId":"light.matsal","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":357.25000381469727,"y":156.25000190734863,"wires":[[]]},{"id":"b28d47a5.dbd288","type":"delay","z":"25f83860.c3ecb8","name":"","pauseType":"delay","timeout":"50","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":587.5,"y":247.5,"wires":[["40f69bf6.032934"]]},{"id":"2cbbcb5a.2dd334","type":"delay","z":"25f83860.c3ecb8","name":"","pauseType":"delay","timeout":"50","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":575.5,"y":295.5,"wires":[["c00cc7d3.830f58"]]},{"id":"7b1bd4ef.8503ec","type":"server","z":"","name":"hass.io","legacy":false,"hassio":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true}]

Ikea ON / OFF works a little different, it sends x001 only once, and then x003 when the button is released.

My coding skills are not good enough to modify the Node-RED flow to work with Ikea ON / OFF.

Is there anyone who can help me with this? :slight_smile:

I’m not sure if the method from this thread also works if holding the button only fires one evebt, but I’d give it a try.

It requires the button sends an event when pressed and held, and another event when released.

Actually

What you need is an event to start dimming and one to stop it.

It could be any remote. You need to trigger the dimming. And you need to trigger the stop command. It could be two buttons. It could be a remote that is not zigbee. It could be a 2nd short press from same button to stop. It is up to you. The trick used in my method is to start the dimming by sending an intensity change with a slow transition and then issue a command that stops it. You get it when you look carefully at the yaml

1 Like

That I understand, but I’m not skilled enough to do it :slight_smile:

As I wrote, I know how to do it in Deconz, and I might even get it to work with “normal” automations, but as I have far more complicated automations that I do like to use Node-RED for I want them all at the same place.

This automatin is not in deconz, it calls a deconz service. You would call this same service from your node-red automation when a button is pressed and the other service to stop the dimming when the button is released

Sure. You know Node Red. I don’t

Note the 3 parts that does the dimming in my other topic

- alias: 'Increase brightness Bedroom from dimmer'
  initial_state: 'on'
  trigger:
    platform: event
    event_type: deconz_event
    event_data:
      id: bedroom_switch
      event: 2001
  action:
    - service: deconz.configure
      data:
        entity: light.bedroom
        field: "/action"
        data: {"bri_inc":254, "transitiontime":50}

- alias: 'Decrease brightness Bedroom from dimmer'
  initial_state: 'on'
  trigger:
    platform: event
    event_type: deconz_event
    event_data:
      id: bedroom_switch
      event: 3001
  action:
    - service: deconz.configure
      data:
        entity: light.bedroom
        field: "/action"
        data: {"bri_inc":-254, "transitiontime":50}

- alias: 'Stop brightness Bedroom from dimmer'
  initial_state: 'on'
  trigger:
    - platform: event
      event_type: deconz_event
      event_data:
        id: bedroom_switch
        event: 2003
    - platform: event
      event_type: deconz_event
      event_data:
        id: bedroom_switch
        event: 3003
  action:
    - service: deconz.configure
      data:
        entity: light.bedroom
        field: "/action"
        data: {"bri_inc":0}

So let us walk through what is happening with the YAML.

Increase and Decrease are the same except the 254 vs -254.

So let us look at Increase

There is a trigger and an Action

The trigger is in this case a deconz event because I use a Philips Zigbee Dimmer with 4 buttons. But it could be a fart detector or anything. It is just the trigger to start Increasing light.

Then the Action

The special is that it runs a deconz configure command

And when you look at the automation that stops the dimming when releasing the button it has two triggers. And triggers works as “OR”. One or the other. So I use same automation for both releasing increase button or descrease button.

And in both cases the action is to send a configure command with an brightness increase value of 0.

I have no idea how to send deconz configure commands with Node Red. I do not use Node Red.

1 Like

I know it’s not in Deconz, but it would cause the same dividing of automation as doing it there.

I want to have it all at the same place.

Why would it cause dividing of automations?

I don’t know how Node-Red works, but I strongly assume you can call home assistant services from there? So in your Node-Red flow, once you detect the event of the button being held, x001 in your case, you call the service “deconz/configure” with the respective parameters, this will send a command to your light to start dimming slowly. Then when you detect the event of the button being released, you call the again the “deconz/configure” with the other parameters to stop this dimming command.

Kenneth, is it possible to rotate brightness, while holding a button? This would make it possible for me to have one button to turn it on (short click) turn it off (short click) and have it increase and decrease brightness while holding a button until released.

I do not see how to rotate by holding.
But you could define some variable (input boolean) and toggle it every 2nd time you long press and then base two automations with that as a condition. This way every 2nd long press would increase and every 2nd would decrease.

Already got it working?
I’m having the same issue…

Can filter al the buttons with the switch node but now want to dim the lights with a long press.

Hi, thanks to @KennethLavrsen I have dimming working with Ikea switches, deCONZ and Node-RED. One button toggles on/off (short press) and dim up/down (long press).

Node-RED dimming:

[{"id":"47ea7419.07b3cc","type":"subflow","name":"Toggle","info":"","category":"","in":[{"x":40,"y":100,"wires":[{"id":"5818a72d.ce4e18"}]}],"out":[{"x":580,"y":100,"wires":[{"id":"16515acb.62fc15","port":0}]},{"x":580,"y":160,"wires":[{"id":"d8daa9f4.3fcc58","port":0}]}],"env":[],"color":"#DDAA99"},{"id":"3487b1d3.3dfffe","type":"switch","z":"47ea7419.07b3cc","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"1","vt":"str"},{"t":"eq","v":"0","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":310,"y":100,"wires":[["16515acb.62fc15"],["d8daa9f4.3fcc58"]]},{"id":"16515acb.62fc15","type":"change","z":"47ea7419.07b3cc","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"1","tot":"str"},{"t":"set","p":"next","pt":"flow","to":"0","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":100,"wires":[[]]},{"id":"d8daa9f4.3fcc58","type":"change","z":"47ea7419.07b3cc","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"0","tot":"str"},{"t":"set","p":"next","pt":"flow","to":"1","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":160,"wires":[[]]},{"id":"5818a72d.ce4e18","type":"function","z":"47ea7419.07b3cc","name":"get next value","func":"msg.payload = flow.get(\"next\")||0;\nreturn msg;","outputs":1,"noerr":0,"x":160,"y":100,"wires":[["3487b1d3.3dfffe"]]},{"id":"bbabf1f.9db071","type":"server-events","z":"60f277c9.311438","name":"Deconz output","server":"2f279318.5b8bdc","event_type":"deconz_event","exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"x":150,"y":140,"wires":[["54b7c080.a9c25"]]},{"id":"54b7c080.a9c25","type":"switch","z":"60f277c9.311438","name":"Ikea switches","property":"payload.event.id","propertyType":"msg","rules":[{"t":"eq","v":"ikea_switch_01","vt":"str"},{"t":"eq","v":"ikea_switch_02","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":320,"y":140,"wires":[["3f5625f3.8548ea"],["aad582d8.53277"]]},{"id":"3f5625f3.8548ea","type":"switch","z":"60f277c9.311438","name":"Ikea switch 01","property":"payload.event.event","propertyType":"msg","rules":[{"t":"eq","v":"1001","vt":"str"},{"t":"eq","v":"1002","vt":"str"},{"t":"eq","v":"1003","vt":"str"},{"t":"eq","v":"2001","vt":"str"},{"t":"eq","v":"2002","vt":"str"},{"t":"eq","v":"2003","vt":"str"}],"checkall":"true","repair":false,"outputs":6,"x":560,"y":120,"wires":[["179f5e59.2b8d22"],["45d3447d.e0ea6c"],["dbbc20e8.1d4f4"],["b2ae3ba0.b7a2d8"],["e67b8b7e.7a7298"],["92b45782.5e14c8"]]},{"id":"dbbc20e8.1d4f4","type":"api-call-service","z":"60f277c9.311438","name":"Stop justering Ikea bulb 01","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"deconz","service":"configure","entityId":"","data":"{\"entity\":\"light.ikea_bulb_01\",\"field\":\"/state\",\"data\":{\"bri_inc\":0,\"transitiontime\":50}}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":840,"y":300,"wires":[[]]},{"id":"83ce6cce.c468c","type":"api-call-service","z":"60f277c9.311438","name":"Juster ned Ikea bulb 01","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"deconz","service":"configure","entityId":"","data":"{\"entity\":\"light.ikea_bulb_01\",\"field\":\"/state\",\"data\":{\"bri_inc\":-254,\"transitiontime\":35}}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":970,"y":120,"wires":[[]]},{"id":"95d77f9b.b467d","type":"api-call-service","z":"60f277c9.311438","name":"Juster op Ikea bulb 01","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"deconz","service":"configure","entityId":"","data":"{\"entity\":\"light.ikea_bulb_01\",\"field\":\"/state\",\"data\":{\"bri_inc\":254,\"transitiontime\":35}}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":960,"y":60,"wires":[[]]},{"id":"5761ac83.9a0844","type":"api-call-service","z":"60f277c9.311438","name":"Tænd Ikea bulb 01","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"light","service":"turn_on","entityId":"light.ikea_bulb_01","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":950,"y":180,"wires":[[]]},{"id":"6cdf795d.66b698","type":"api-call-service","z":"60f277c9.311438","name":"Sluk Ikea bulb 01","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"light","service":"turn_off","entityId":"light.ikea_bulb_01","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":950,"y":240,"wires":[[]]},{"id":"179f5e59.2b8d22","type":"subflow:47ea7419.07b3cc","z":"60f277c9.311438","name":"","env":[],"x":770,"y":100,"wires":[["95d77f9b.b467d"],["83ce6cce.c468c"]]},{"id":"45d3447d.e0ea6c","type":"subflow:47ea7419.07b3cc","z":"60f277c9.311438","name":"","x":770,"y":200,"wires":[["5761ac83.9a0844"],["6cdf795d.66b698"]]},{"id":"92b45782.5e14c8","type":"api-call-service","z":"60f277c9.311438","name":"Stop justering Lava v2","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"deconz","service":"configure","entityId":"","data":"{\"entity\":\"light.lava_v2\",\"field\":\"/state\",\"data\":{\"bri_inc\":0,\"transitiontime\":50}}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":820,"y":600,"wires":[[]]},{"id":"c5a31225.c3318","type":"api-call-service","z":"60f277c9.311438","name":"Juster ned Lava v2","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"deconz","service":"configure","entityId":"","data":"{\"entity\":\"light.lava_v2\",\"field\":\"/state\",\"data\":{\"bri_inc\":-254,\"transitiontime\":35}}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":950,"y":420,"wires":[[]]},{"id":"c03d052e.949958","type":"api-call-service","z":"60f277c9.311438","name":"Juster op Lava v2","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"deconz","service":"configure","entityId":"","data":"{\"entity\":\"light.lava_v2\",\"field\":\"/state\",\"data\":{\"bri_inc\":254,\"transitiontime\":35}}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":950,"y":360,"wires":[[]]},{"id":"897ec91a.383b08","type":"api-call-service","z":"60f277c9.311438","name":"Tænd Lava v2","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"light","service":"turn_on","entityId":"light.lava_v2","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":940,"y":480,"wires":[[]]},{"id":"ebe5eb45.6021f8","type":"api-call-service","z":"60f277c9.311438","name":"Sluk Lava v2","server":"2f279318.5b8bdc","version":1,"debugenabled":false,"service_domain":"light","service":"turn_off","entityId":"light.lava_v2","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":930,"y":540,"wires":[[]]},{"id":"b2ae3ba0.b7a2d8","type":"subflow:47ea7419.07b3cc","z":"60f277c9.311438","name":"","x":770,"y":400,"wires":[["c03d052e.949958"],["c5a31225.c3318"]]},{"id":"e67b8b7e.7a7298","type":"subflow:47ea7419.07b3cc","z":"60f277c9.311438","name":"","x":770,"y":500,"wires":[["897ec91a.383b08"],["ebe5eb45.6021f8"]]},{"id":"aad582d8.53277","type":"switch","z":"60f277c9.311438","name":"Ikea switch 02","property":"payload.event.event","propertyType":"msg","rules":[{"t":"eq","v":"1001","vt":"str"},{"t":"eq","v":"1002","vt":"str"},{"t":"eq","v":"1003","vt":"str"},{"t":"eq","v":"2001","vt":"str"},{"t":"eq","v":"2002","vt":"str"},{"t":"eq","v":"2003","vt":"str"}],"checkall":"true","repair":false,"outputs":6,"x":560,"y":240,"wires":[[],[],[],[],[],[]]},{"id":"2f279318.5b8bdc","type":"server","z":"","name":"Home Assistant"}]

Node-RED toggle:

[{"id":"3487b1d3.3dfffe","type":"switch","z":"47ea7419.07b3cc","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"1","vt":"str"},{"t":"eq","v":"0","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":310,"y":100,"wires":[["16515acb.62fc15"],["d8daa9f4.3fcc58"]]},{"id":"16515acb.62fc15","type":"change","z":"47ea7419.07b3cc","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"1","tot":"str"},{"t":"set","p":"next","pt":"flow","to":"0","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":100,"wires":[[]]},{"id":"d8daa9f4.3fcc58","type":"change","z":"47ea7419.07b3cc","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"0","tot":"str"},{"t":"set","p":"next","pt":"flow","to":"1","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":160,"wires":[[]]},{"id":"5818a72d.ce4e18","type":"function","z":"47ea7419.07b3cc","name":"get next value","func":"msg.payload = flow.get(\"next\")||0;\nreturn msg;","outputs":1,"noerr":0,"x":160,"y":100,"wires":[["3487b1d3.3dfffe"]]}]

:smiley:

6 Likes

Thanks it’s working.
I only used the first one and changed it to only set one light!

1 Like

This is great, but would it be possible to use a IHC switch, instead of an IKEA?

Thanks Jakob for the submission, the “Flow” works perfectly… :+1:

Thank you @JacobTLB. Your flow, it was really helpful.
I have several Ikea on/off buttons integrated via deconz/conbee.

I wonder if it would be possible to do something like this, with any (dimmable) light I have (for example I have several shelly dimmers integrated via MQTT) on home assistant, without going through deconz? I tried to get inspired by your flow, without good results :worried:. Could you give me some help?

Thanks!
Dante Cheda

hi, how do I use the toggle flow? do you have a screenshot to better understand?