Lightning controller and knx input

224 views
Skip to first unread message

Viktor Granbom

unread,
Dec 1, 2019, 3:08:03 AM12/1/19
to Loxone English
I think i have found a good way to control dimming input of lightning controller channels and knx buttons.

You could actually just send the dimming value (0-100%) to a virtual output of your miniserver corresponding to a (hidden) virtual input of your miniserver. In my case i can send data to: http://miniserver-ip:port/dev/sps/io/10738f35-0053-820b-ffff8bb53a8e1951/ai1/dimmingvalue and change the status of a dimmer channel in the lightning controller. AI1 corresponding to the input number of the lightning controller and the lighning controller is: 10738f35-0053-820b-ffff8bb53a8e1951. This value i found under control when looking in node-red under information and read more.

So now i can see and change the dimming value on my Glass Push Buttons II Smart.

I think i have to add a loopback delay but it is work in progress!

Rob_in

unread,
Dec 2, 2019, 2:36:46 AM12/2/19
to Loxone English
Hi,

This sounds pretty interesting but without any context is a little difficult to know if I have grasped the concept.

How did you discover the last  .../a1/dimmingvalue part of the URL? Is that documented somewhere for the lighting controller?

We have a problem where there are 6 switches in an open plan room (each switch is a 4 gang type so that's actually 6 x 4 = 24 possible inputs) which I would like to control a single lighting controller. However, because lighting controllers have limited number of inputs it's not possible. For this reason we have a 'master' lighting controller and 5 'slave' ones for each zone in the room. One side of each switch is connected to the nearest 'slave' and the other side is connected to the 'master'. The problem with this is that there is no feedback from the 'slaves' so one can turn a zone off (or change it's mood) with the 'slave' switches and the 'master' doesn't know anything has changed.

If one could find a way to directly connect a physical input (via a virtual one if need by) to the equivalent of the mode '+' buttons in the lighting controller UI I think that could solve our problem, but don't know if that's possible with what you are suggesting. Did you experiment with that?

Cheers,

Robin

Duncan

unread,
Dec 2, 2019, 5:06:02 AM12/2/19
to Loxone English
Why do you need 24 separate inputs? Won’t a number of your locations have a button connected to the + input for instance? I’ve got a similar setup with 4 switch locations, each has a button connected to the +, -, and 2 more to specific scene input so 16 buttons but only 4 inputs

Viktor Granbom

unread,
Dec 2, 2019, 12:06:34 PM12/2/19
to Loxone English
I found out that part from looking at how node red changes a value of an input channel in a lightning controller. Looking at it a bit further i can see that you can actually see and change all data that you can see in the app the same way. So it's like you're doing a webcall to your own miniserver from the config. For your case you can just use changeTo/MoodNumber but i think you can simplify it as Duncan said too:)

Duncan

unread,
Dec 2, 2019, 4:09:03 PM12/2/19
to loxone-...@googlegroups.com
if you are using v2 of the lighting controller you can adjust the master dimmer (dim the whole mood) using the same trick (the controls are exposed in the app but not available on inputs)

see this post (use google chrome to translate as required) for a fuller explanation

Rob_in

unread,
Dec 3, 2019, 1:20:37 AM12/3/19
to Loxone English
I didn't say I needed 24 inputs, but that's what there is in that room, the actual requirement is...

- This is an open plan living area so there are the following 'zones': kitchen, hob, dining, lounge, entry, hall.
- Of the 4 buttons on each switch I want the left up/down to a) cycle through the brightness of the zone they are closest to (like changing the mood just for that zone) and b) turn off the zone they are closest to.
- Of the 4 buttons on each switch I want the right up/down to cycle through the moods of the entire room.
- When pressing both sides of a switch (both top or both bottom) I'd like 'all on' or 'all off'.

[ Side note - on a long press of anything the switch in question changes mode into 'shutter control' to work the roller shutters it's closest to ]

So when one presses the top right in the kitchen zone one can select the overall mood 'relaxing' but then one could press top left to bring up brightness just in the kitchen (or cycle round to a dimmer mood) or bottom right to turn off just kitchen.

So actually I think this requires (6 x 2) + 2 + 2 inputs = 16.

The Lighting Controller has 18 light circuit outputs doesn't it? So why Loxone didn't give it at least that many inputs is a bit odd.

I can't actually think of a way to do what I want with a single lighting controller but have managed it using a 'master' and a few 'slave' zones - if anyone knows how to do it with one please let me know! :)

Cheers,

Robin

Rob_in

unread,
Dec 3, 2019, 1:24:12 AM12/3/19
to Loxone English
Sorry, another stupid question: I don't use Node Red. Sounds like you installed some Loxone specific extension or module for it where someone has figured out how this stuff can be controlled. Where did you get that?

The app has a '+' to mix in/out each defined zone and as you can have many, many moods this would allow many, many inputs. If I knew how to simulate pressing the '+' on any of the moods that would be great but looking at the API doco doesn't appear possible.

Thx,

Robin

Duncan

unread,
Dec 3, 2019, 6:26:19 AM12/3/19
to loxone-...@googlegroups.com
assuming each area has moods with multiple lights rather than a single circuit, using 'slave' lighing controller with an overall master controller is probably the easiest way -

when you say cycle through the brightness, i assume you mean cycle through the moods in brightness order rather than actually dim a mood -
you can still use the master dimming virtual input in the article to adjust the brightness of the mood for each zone as there are no physical inputs on a controller to dim moods, only individual circuits.

the master controller can be done several ways - ive used the Als input of the zones to cycle through all the zones at the same time, and used a long press of the + button for 'full' and long press of the - for off

if you use the Als input for master control, you can use an analog multiplexer and virtual inputs to allow the app/gui to configure which of the local zone moods is used for each of the master moods

on my example ive used the mdt glastaster panic/slap function to implement a quick 'favourite' for each zone, again with the end user gui able to select which mood is selected via a virtual input
Capture.JPG

Rob_in

unread,
Dec 4, 2019, 12:35:48 PM12/4/19
to Loxone English
On Tuesday, 3 December 2019 12:26:19 UTC+1, Duncan wrote:
assuming each area has moods with multiple lights rather than a single circuit, using 'slave' lighing controller with an overall master controller is probably the easiest way -

That's sad to hear. Although it works great with the physical switches I don't like how the app can get out of sync.
 
when you say cycle through the brightness, i assume you mean cycle through the moods in brightness order rather than actually dim a mood -

Yes.
 
you can still use the master dimming virtual input in the article to adjust the brightness of the mood for each zone as there are no physical inputs on a controller to dim moods, only individual circuits.

Yes and no. I don't know why they limited the master brightness value though. You can't set it to 40% for example :( 

the master controller can be done several ways - ive used the Als input of the zones to cycle through all the zones at the same time, and used a long press of the + button for 'full' and long press of the - for off

if you use the Als input for master control, you can use an analog multiplexer and virtual inputs to allow the app/gui to configure which of the local zone moods is used for each of the master moods

on my example ive used the mdt glastaster panic/slap function to implement a quick 'favourite' for each zone, again with the end user gui able to select which mood is selected via a virtual input

I tried something like this earlier (with multiplexers and then a state block) but didn't like it :(

Since seeing the idea proposed in this thread I have done a bit of debug on the websocked traffic to Loxone and think it might be possible to do what I want with a single controller and mixing multiple moods in/out (simulating the mode '+' button from the webpage). Will investigate further and post an update.

Robin

Robin

Andras

unread,
Dec 4, 2019, 12:57:53 PM12/4/19
to Loxone English


On Wednesday, December 4, 2019 at 6:35:48 PM UTC+1, Rob_in wrote:
Since seeing the idea proposed in this thread I have done a bit of debug on the websocked traffic to Loxone and think it might be possible to do what I want with a single controller and mixing multiple moods in/out (simulating the mode '+' button from the webpage). Will investigate further and post an update.

Now this would be very interesting. What would be even more interesting would be a way to control a Smart Actuator through the web UI. This way some custom light controller logic could be implemented. But I guess the "SMA" outputs are not visible through the API. 

Rob_in

unread,
Dec 6, 2019, 5:54:41 AM12/6/19
to Loxone English
On Wednesday, 4 December 2019 18:35:48 UTC+1, Rob_in wrote:
On Tuesday, 3 December 2019 12:26:19 UTC+1, Duncan wrote:
assuming each area has moods with multiple lights rather than a single circuit, using 'slave' lighing controller with an overall master controller is probably the easiest way -

That's sad to hear...

... it's also now wrong ;)

Yes, because we have success thanks to the original idea that started this thread!

I've managed to use a virtual output that's basically feeback into the Miniserver that sends addMood & removeMood messages to lighting controller block. As you might expect this allows you to mix in and out any number of moods from any control source. It's like having infinite inputs into the Lighting Controller. At last - bliss! :)

I have driven these messages via SR flip-flops but you could use whatever logic you want. There is zero noticeable lag when using a physical switch and this feedback which is great.

For reference, here's what I did to make this work:

Put this in the address of a virtual output:


Using the correct user/pass and IP address of your miniserver (I created an API user specifically for this).

Then, find the ID of the Lighting Controller you want to send messages to (easiest way is to just look at that controller in the web interface and the ID is in the URL). It's something like 0f20f047-026b-2c81-fffff62eeb38b63d - going out on a limb here to guess it's not a security issue to share mine with everyone ;)

To mix a mood in/out construct a virtual output command of the form:

Command for ON: /dev/sps/io/0f20f047-026b-2c81-fffff62eeb38b63d/addMood/2
Command for OFF: /dev/sps/io/0f20f047-026b-2c81-fffff62eeb38b63d/removeMood/2

'2' being the mood to mix in/out in this case - use any mood number you like.

You can use 'changeTo' which switches to a desired mood instead of mixing with 'addMood' & 'removeMood'. I didn't use this, but it should work if you want that kind of thing.

Hope someone else could find this useful, it's finally got the lights in our open plan room working as I want with a single light controller and only a bit of extra logic to merge moods as I want.

Cheers,

Robin

Andras

unread,
Dec 6, 2019, 6:18:25 AM12/6/19
to Loxone English
This is great!! Thanks for sharing! I always had trouble activating mood lighting based on light level outside, the logic always got too complex.

Duncan

unread,
Dec 6, 2019, 10:03:28 AM12/6/19
to Loxone English
to make lift a lot easier you can use the name of the block (not the description) - so my dining room light controller is dininglights and the web address is /dev/sps/io/dininglights/<v> for scene number
Reply all
Reply to author
Forward
0 new messages