KNX Dimmer support

As stated in subject :slight_smile: The current KNX components work really well, so being able to dim the lights would be awesome.

If voting button worked for me, you had a vote.
If I know hass well enough this means a component/light for KNX correct?
I believe you can control dimmable KNX devices absolutely (0…100%) and relatively (for example + or - 10%) , and reporting status back can be in similar different valuetypes.
So this asks for enough config options to set this depending on the devices you have.
If i have some time I will try to do some investigation.

1 Like

Yes - you are absolutely correct.
The dimming type is called 3.007, and this document describes the structure: KNX Interworking.
Please let me know, if there is anything I can do to help.

/ole

So any chance of this happening? I’ve been playing with the xknx home assistant plugin, and there is dimmer support. I am just having difficulties getting the status to work, so an ‘official’ Home Assistant solution would be nice :slight_smile:

This is very wanted. Can an official request be made somehow?

As an addition to this. Some dimmer actuator also provide an error/alarm group address that goes high whenever a lamp is disconnected or broken or draw too much current. Would be nice with support for that too. Type 1.005

Do you need help for getting xknx+home-assistant working? Im happy to help.

Hi Julius. You actually did help me (on your gitter chat). I just do not have the necessary linux skills to get it running :slight_smile:
But if there is an somewhat easy way of getting this to work on a Mac, I would be very interested!

/ole

Oh, I remember. Do you think it is worth asking to integrate the XKNX plugin to the main home-assistant project?

I think that would be a great idea! Currently there is only switch support, so no dimmer function.

A lot of the extra data items in the KNX spec are just bit values as is DPT 1.005. Have you tried just using a binary_sensor for this? e.g.

binary_sensor:
  - platform: knx
    name: onkyo_power
    address: 0/6/5

I attempted to add minimal dimmer support but I have no device, I can only simulate it to test. It’s not even close to enough testing for a PR submission.

Is someone interested in testing it on their device?

link to dev branch

light:
  - platform: knx
    name: 'knx light'
    address: 9/1/1
    state_address: 9/1/2
    brightness_address: 9/1/3
    dimmer_address: 9/1/4

where:

  • address and state_address should (hopefully) be backwardly compatible
  • brightness_address is for reading the current device level
  • dimmer_address is for setting the target level

Note: The HA frontend and base light component uses 0 - 255 for brightness already so I didn’t put in a percentage conversion for DPT_Scaling

Hi.

I’ve installed the dev branch, and added the relevant lines to my config. I do not get any errors, but I cannot see, where I can dim the lights? It just shows as a normal lightswitch?

1 Like

Great! Thanks!

It just shows as a normal lightswitch?

That’s normal even for other lights. The extra controls only show up when you click the lightbulb icon.
If it’s working then that should bring up a more detailed widget with a slider that allows you to pick a brightness value.

I don’t get the slider. I just get the history of when the light has been on/off when I click the bulb.

kabelo and I have been looking at this together (Thanks again kabelo :slight_smile:) . Just as a summary for anyone else interested in looking at this:

  1. If you want to install directly with pip then a reference to the correct branch at the end of the line is necessary:
    pip3 install --upgrade git+git://github.com/tiktok7/home-assistant.git@support-knx-dimmer
  2. The brightness slider works but the value read back from the brightness address isn’t the same as that sent to the dimmer.
  3. Homebridge reported similar deviations in brightness values
  4. Siri refused to recognise that the brightness feature was present.
1 Like

I’d just like to add my vote for integrating dimmer support into the main branch. I’m running hass.io so pulling a specific branch is not that appetising.

Hi, I like to say I love the KNX support in HA.
Until now I only used the switch function.

But I like to use the Dim function too, but I have some trouble with it.

Here is part of the config and the Hardware I use:

Home Assistent 0.58.1 - Hassbian - Python 3.5.3

# Jung IPS 100 REG
knx:

light:
#JUNG 2316.16 REG HE switch

  • platform: knx
    name: Hal voordeur
    address: ‘0/0/1’ —>Works
    state_address: ‘4/0/1’ —> Works

#JUNG 2193 REG Dimmer

  • platform: knx
    name: Voorkamer spots
    address: ‘0/0/2’ —> Works
    brightness_address: ‘0/1/4’ —> Does not Work
    state_address: ‘4/0/2’ —> Works
    brightness_state_address: ‘4/1/4’ —> Does not work

#JUNG 3804 REGHE Dimmer

  • platform: knx
    name: Keuken Nomad
    address: ‘0/0/18’ —> Works
    brightness_address: ‘0/1/3’ —> does not work
    state_address: ‘4/0/18’ —> Works
    brightness_state_address: ‘4/1/3’ —> Works

Log output:

Blockquote
2017-11-25 12:43:38 WARNING (MainThread) [xknx.log] Could not read value of <Light name=“Hal voordeur” switch="//None/None" /> 4/0/1
2017-11-25 12:43:39 WARNING (MainThread) [xknx.log] Could not read value of <Light name=“Voorkamer spots” switch="//None/None" group_address_brightness="" group_address_brightness_state="" brightness=“0” /> 4/0/2
2017-11-25 12:43:40 WARNING (MainThread) [xknx.log] Could not read value of <Light name=“Voorkamer spots” switch="//None/None" group_address_brightness="" group_address_brightness_state="" brightness=“0” /> 4/1/4
2017-11-25 12:43:41 WARNING (MainThread) [xknx.log] Could not read value of <Light name=“Keuken Nomad” switch="//None/None" group_address_brightness="" group_address_brightness_state="" brightness=“0” /> 4/0/18
2017-11-25 12:43:42 WARNING (MainThread) [xknx.log] Could not read value of <Light name=“Keuken Nomad” switch="//None/None" group_address_brightness="" group_address_brightness_state="" brightness=“0” /> 4/1/3

Any updates on dimming KNX-lights with HA? I can’t seem to get it to work.

Should be working already?

what exactly is your error?