New Binding for Velux

Hi All,

I have created a new binding for controlling Velux products using the KLF200 bridge. I had previously been using an existing binding, but when I upgraded the firmware, it stopped working so I decided to create my own.

This new binding connects directly to KLF200 devices that are running FW v2.x.x.x.x and has the ability to fully control all of the nodes, including executing scenes. Full details and setup instructions can be found in the Readme.md here:

If you want to try out the binding, you will (obviously!) need to have a KLF200 unit running v2.x firmware. You can then grab the add-on here:
https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/binding/org.openhab.binding.veluxklf200/2.4.0-SNAPSHOT/org.openhab.binding.veluxklf200-2.4.0-SNAPSHOT.jar
and drop it into your local OH2 addons folder.

All feedback welcome.

Cheers,
MFK

2 Likes

Hello mfk,
thank you a lot for this great binding!!

I’ve tried your last veluxklf200 version:

  • I need the website password!! (I tried it for a long time with the Wifi Password, but i doesn’t work. I use Version 2.000.71.00)
  • I have ROLLER_SHUTTER, no Interior Blind. Therefore I replaced the enum and it worked very well (incl. discovery)!
    My proposal:
    o Change any functions “VerticalInteriorBlind” to “GeneralBlind” and accept VERTICAL_INTERIOR_BLINDS and ROLLER_SHUTTER (perhaps many more types could work, but aren’t tested).
    o At discovery both types can be requested
    o Add velux_rollershutter (with same blind_position/blind-control options)

Cheers

Hi infoelch,

Sorry for the delay in replying, but I was away for a while. With regard to the password, there are two passwords printed on the back of the KLF200. One is the WIFI password and the other is the password to access the web interface (normally velux123). The WIFI password is generally the one that works when connecting with the binding. Can you try this and let me know if it works for you?

I like your suggestion in relation to the roller_shutter. As I only have Vertical Interior Blinds, they were the only type that I could test, so would be happy to include Roller Shutter too. As you can see, its pretty straight forward to do!

Not sure if it is best (from a design or best practice point of view) to flatten multiple types into a generic thing or to have individual things. Thoughts welcome!

Thanks,
MFK

Hi,

I have change my web interface pwd with firmware 0.1.x and updated to firmware 0.2.
For your OH2 interface I have to use the web interface password! (default velux123)

Cheers

Great that you got it working. I have seen others report a possible bug with the firmware whereby the password will suddenly (after a reboot?) change to be the wifi password. So watch out if velux123 stops working, it could be the bug and you need to start using the WIFI password!

MFK

Thank you for this Addon. Just a quick question, is it available for 2.5.0-SNAPSHOT as a jar file?

Hi MFK

Was waiting for this new addons since quite a while. Thanks you very much for this great work. Thanks goes of course also to Guenther Schreiner.

Now I installed the add-on and indeed I was able to get a few products and a few scenes, but not all. I have seven Velux products, 3 windows shutter, and four rollos. For rollos and window five scene has been created.

If I start a discovery open hab finds:

  • Four rollos
  • Two window shutter scene

but no:

  • window shutter
  • and none of the rollo scene.

Pretty strange. Do you have a hint for me? I will post you my debug logs tomorrow.

Cheers Marcel

@mfk
I have installed the binding and it seems like it´s running.
When I enter PaperUI and press the PLUS to add a thing, I see the binding allright. (Velux KLF200 (for V2 firmware)). But when I press this, I get a blank screen. Nothing happens.
I have rebooted the KLF200

EDIT:

I got it up running now, (dont know why exactly).
I got the bridge online, but when it starts to scan for things/scenes, this happens:

2019-04-23 01:32:45.689 [DEBUG] [.internal.engine.KLFCommandProcessor] - Executing command GW_GET_SCENE_LIST_REQ with Session: NOT REQUIRED for Specific Node: NOT NODE SPECIFIC

2019-04-23 01:32:45.840 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Command executing, expecting data for 20 scenes.

2019-04-23 01:32:45.856 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Command recieved data for 3 scenes.

2019-04-23 01:32:45.857 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Found scene Id:0 - Alle_vinduer_luk

2019-04-23 01:32:45.859 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Found scene Id:1 - Alle_vinduer_aaben_100

2019-04-23 01:32:45.861 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Found scene Id:2 - Køkken 50%

2019-04-23 01:32:45.864 [INFO ] [nal.discovery.KLF200DiscoveryService] - Found scene '0', Called: Alle_vinduer_luk

2019-04-23 01:32:45.866 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E

2019-04-23 01:32:45.869 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,03,53,70,69,73,65,73,74,75,65,20,35,30,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,53,74,75,65,20,35,30,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,05,4b,c3,b8,6b,6b,65,6e,20,31,30,30,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0e,be}

2019-04-23 01:32:45.870 [INFO ] [nal.discovery.KLF200DiscoveryService] - Found scene '1', Called: Alle_vinduer_aaben_100

2019-04-23 01:32:45.872 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E

2019-04-23 01:32:45.875 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,06,53,70,69,73,65,73,74,75,65,20,31,30,30,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,07,53,74,75,65,20,31,30,30,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,08,41,6c,6c,65,5f,76,69,6e,64,75,65,72,5f,c3,a5,62,6e,65,5f,35,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0b,b9}

2019-04-23 01:32:45.876 [INFO ] [nal.discovery.KLF200DiscoveryService] - Found scene '2', Called: Køkken 50%

2019-04-23 01:32:45.880 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E

2019-04-23 01:32:45.883 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,09,53,70,69,73,65,73,74,75,65,5f,76,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0a,4b,c3,b8,6b,6b,65,6e,20,37,35,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0b,4b,c3,b8,6b,6b,65,6e,5f,76,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,08,8d}

2019-04-23 01:32:45.889 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E

2019-04-23 01:32:45.891 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,0c,53,70,69,73,65,73,74,75,65,20,37,35,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0d,53,74,75,65,5f,76,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0e,53,74,75,65,20,37,35,25,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,05,d6}

2019-04-23 01:32:45.897 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E

2019-04-23 01:32:45.900 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,0f,41,6c,6c,65,5f,76,69,6e,64,75,65,72,5f,76,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,10,4b,c3,b8,6b,6b,65,6e,5f,6c,75,6b,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,11,41,6c,6c,65,5f,76,69,6e,64,75,65,72,5f,37,35,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,02,d0}

2019-04-23 01:32:45.904 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E

2019-04-23 01:32:45.906 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,87,04,0e,02,12,53,74,75,65,5f,6c,75,6b,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,13,53,70,69,73,65,73,74,75,65,5f,6c,75,6b,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,f2}

It only manage to find 3 scenes and I have 21 scenes in all.

@mfk
I tried to rename the screnes to see, if that made any differences… It didn´t.

2019-04-23 11:22:49.196 [DEBUG] [.internal.engine.KLFCommandProcessor] - Executing command GW_GET_ALL_NODES_INFORMATION_REQ with Session: NOT REQUIRED for Specific Node: NOT NODE SPECIFIC
2019-04-23 11:22:49.452 [DEBUG] [.internal.engine.KLFCommandProcessor] - Executing command GW_GET_SCENE_LIST_REQ with Session: NOT REQUIRED for Specific Node: NOT NODE SPECIFIC
2019-04-23 11:22:49.527 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Command executing, expecting data for 20 scenes.
2019-04-23 11:22:49.543 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Command recieved data for 3 scenes.
2019-04-23 11:22:49.545 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Found scene Id:0 - AlleVinduerLuk
2019-04-23 11:22:49.546 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Found scene Id:1 - AlleVinduer100
2019-04-23 11:22:49.548 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Found scene Id:2 - Koekken50
2019-04-23 11:22:49.549 [INFO ] [nal.discovery.KLF200DiscoveryService] - Found scene '0', Called: AlleVinduerLuk
2019-04-23 11:22:49.555 [INFO ] [nal.discovery.KLF200DiscoveryService] - Found scene '1', Called: AlleVinduer100
2019-04-23 11:22:49.556 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E
2019-04-23 11:22:49.559 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,03,53,70,69,73,65,73,74,75,65,35,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,53,74,75,65,35,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,05,4b,6f,65,6b,6b,65,6e,31,30,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0e,ca}
2019-04-23 11:22:49.559 [INFO ] [nal.discovery.KLF200DiscoveryService] - Found scene '2', Called: Koekken50
2019-04-23 11:22:49.566 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E
2019-04-23 11:22:49.569 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,06,53,70,69,73,65,73,74,75,65,31,30,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,07,53,74,75,65,31,30,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,08,41,6c,6c,65,56,69,6e,64,75,65,72,35,30,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0b,c9}
2019-04-23 11:22:49.572 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E
2019-04-23 11:22:49.575 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,09,53,70,69,73,65,73,74,75,65,56,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0a,4b,6f,65,6b,6b,65,6e,37,35,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0b,4b,6f,65,6b,6b,65,6e,56,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,08,88}
2019-04-23 11:22:49.578 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E
2019-04-23 11:22:49.581 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,0c,53,70,69,73,65,73,74,75,65,37,35,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0d,53,74,75,65,56,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,0e,53,74,75,65,37,35,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,05,a9}
2019-04-23 11:22:49.584 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E
2019-04-23 11:22:49.587 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,c8,04,0e,03,0f,41,6c,6c,65,56,69,6e,64,75,65,72,56,65,6e,74,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,10,4b,6f,65,6b,6b,65,6e,4c,75,6b,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,11,41,6c,6c,65,56,69,6e,64,75,65,72,37,35,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,02,fe}
2019-04-23 11:22:49.592 [ERROR] [.internal.engine.KLFCommandProcessor] - No match found for the command with the response code 0x040E
2019-04-23 11:22:49.595 [ERROR] [.internal.engine.KLFCommandProcessor] - Recieved response but unable to find a matching command to consume the response. Discarding response: {00,87,04,0e,02,12,53,74,75,65,4c,75,6b,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,13,53,70,69,73,65,73,74,75,65,4c,75,6b,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,f2}

But I think it somehow sees my 8 roof windows as nodes, but as vertical interior blinds:

2019-04-23 11:21:45.876 [DEBUG] [internal.engine.KLFEventNotification] - Node 0 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:45.879 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 0
2019-04-23 11:21:46.963 [DEBUG] [internal.engine.KLFEventNotification] - Node 1 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:46.967 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 1
2019-04-23 11:21:48.026 [DEBUG] [internal.engine.KLFEventNotification] - Node 2 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:48.028 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 2
2019-04-23 11:21:49.113 [DEBUG] [internal.engine.KLFEventNotification] - Node 3 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:49.117 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 3
2019-04-23 11:21:50.171 [DEBUG] [internal.engine.KLFEventNotification] - Node 4 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:50.177 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 4
2019-04-23 11:21:51.245 [DEBUG] [internal.engine.KLFEventNotification] - Node 5 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:51.247 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 5
2019-04-23 11:21:52.299 [DEBUG] [internal.engine.KLFEventNotification] - Node 6 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:52.301 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 6
2019-04-23 11:21:53.352 [DEBUG] [internal.engine.KLFEventNotification] - Node 7 position changed, state: DONE, current position: 0% open, target position:0% open, time remaining: 0 seconds.
2019-04-23 11:21:53.356 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 7

I just dont know how to add those.

And this is what happens when I set all windows to “ventilation” on the KLR200 remote.

2019-04-23 11:31:04.047 [DEBUG] [internal.engine.KLFEventNotification] - Node 0 position changed, state: DONE, current position: 11% open, target position:11% open, time remaining: 0 seconds.
2019-04-23 11:31:04.050 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 0
2019-04-23 11:31:04.084 [DEBUG] [internal.engine.KLFEventNotification] - Node 1 position changed, state: DONE, current position: 11% open, target position:11% open, time remaining: 0 seconds.
2019-04-23 11:31:04.087 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 1
2019-04-23 11:31:04.197 [DEBUG] [internal.engine.KLFEventNotification] - Node 4 position changed, state: DONE, current position: 11% open, target position:11% open, time remaining: 0 seconds.
2019-04-23 11:31:04.200 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 4
2019-04-23 11:31:04.310 [DEBUG] [internal.engine.KLFEventNotification] - Node 5 position changed, state: DONE, current position: 11% open, target position:11% open, time remaining: 0 seconds.
2019-04-23 11:31:04.312 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 5
2019-04-23 11:31:04.480 [DEBUG] [internal.engine.KLFEventNotification] - Node 7 position changed, state: DONE, current position: 11% open, target position:11% open, time remaining: 0 seconds.
2019-04-23 11:31:04.484 [DEBUG] [internal.handler.KLF200BridgeHandler] - Notified of event for node type VERTICAL_INTERIOR_BLINDS for specific node 7

Great Binding and it works for my scenes.

Unfortunally my Velux products are currently not supported directly:

  • Roller Shutter (no 4)
  • Window Opener (no 6)

Canl these products please also be included in the next version of the plugin that i can controll them directly?

One question regaring the “old” Velux binding: also it is described in the openhab documentation (https://www.openhab.org/addons/bindings/velux1/) I could not find it in the PaperUI (openhab 2.4) to install it. Any hints on this?

Only one shade was found, none of the Velux roller shutters. Any ideas?

Hi All,

TBH, I pretty much abandoned this binding as I had understood that Guenther Schreiner was progressing with his one and didn’t want to create any friction. I dont know what the OH policy is in relation to two people having a binding that does the same thing etc…

If people want me to and it doesnt create any friction with other community members, am happy to take a more active role in developing the binding further to support you all.

Let me know your thoughts.
Thanks

Hello,

I allready add this Binding to my OH2.4 Version but it is not working.
In PaperUI I can add a KLF200 Bridge but it will still shown me as “Offline - Configuration_Error”.
The IP and the password is right. I can ping to the bridge and get a response. When I am connected to the Wifi of the KLF 200, I can access to the WebUI of the Bridge. Here I can see that already 3 shutter are implemented and the Firmware of the KLF200 is: 0.2.0.0.71.0

Does anybody know what I am doing wrong?

Additional some entries of my Logfile, maybe it helps you:

2019-07-02 18:40:34.580 [INFO ] [.internal.engine.KLFCommandProcessor] - Successfully established an SSL connection to KLF200 host 192.168.1.130 on port 51200.
2019-07-02 18:40:34.603 [ERROR] [.internal.engine.KLFCommandProcessor] - Unable to login to the KLF200 unit with password supplied.
2019-07-02 18:40:57.671 [ERROR] [.internal.engine.KLFCommandProcessor] - Attempt to perform an operation before the command processor was initialised.
2019-07-02 18:40:57.676 [ERROR] [.internal.engine.KLFCommandProcessor] - Rejected command as command required login, but login has not been performed.
2019-07-02 18:40:57.684 [ERROR] [.internal.engine.KLFCommandProcessor] - Attempt to perform an operation before the command processor was initialised.
2019-07-02 18:40:57.687 [ERROR] [.internal.engine.KLFCommandProcessor] - Rejected command as command required login, but login has not been performed.
2019-07-02 18:45:04.692 [INFO ] [smarthome.model.script.BatterieCheck] - Digital Batterie OK
2019-07-02 18:45:05.509 [INFO ] [ome.model.script.ActualSystemMessage] - Message inactive
2019-07-02 18:55:34.605 [WARN ] [.internal.engine.KLFCommandProcessor] - Invalid message recieved, shutting down response processing.
2019-07-02 19:15:42.672 [ERROR] [.internal.engine.KLFCommandProcessor] - Attempt to perform an operation before the command processor was initialised.
2019-07-02 19:15:42.677 [ERROR] [.internal.engine.KLFCommandProcessor] - Rejected command as command required login, but login has not been performed.
2019-07-02 19:15:42.681 [ERROR] [.internal.engine.KLFCommandProcessor] - Attempt to perform an operation before the command processor was initialised.
2019-07-02 19:16:42.685 [WARN ] [.internal.engine.KLFCommandProcessor] - The command did not complete within the 60 second time allocated.
2019-07-02 19:26:18.600 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'Garage.rules'
2019-07-02 19:27:41.813 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'Presence.rules'
2019-07-02 20:19:34.977 [ERROR] [.internal.engine.KLFCommandProcessor] - Attempt to perform an operation before the command processor was initialised.
2019-07-02 20:20:34.984 [WARN ] [.internal.engine.KLFCommandProcessor] - The command did not complete within the 60 second time allocated.
2019-07-02 20:20:34.989 [ERROR] [.internal.engine.KLFCommandProcessor] - Attempt to perform an operation before the command processor was initialised.
2019-07-02 20:21:34.993 [WARN ] [.internal.engine.KLFCommandProcessor] - The command did not complete within the 60 second time allocated.

thanks

OK, I was wrong. very Stupid.
I took the “Web logon” password. now, I tried the Wifi Password and got a connection.

But I still get not my rollershutter.
After scan there will be shown no one of them.

2019-07-02 20:49:40.340 [WARN ] [core.thing.internal.ThingManagerImpl] - Initializing handler for thing 'veluxklf200:klf200-bridge:f3aba334' takes more than 5000ms.
2019-07-02 20:49:40.507 [INFO ] [.internal.engine.KLFCommandProcessor] - Successfully established an SSL connection to KLF200 host 192.168.1.130 on port 51200.
2019-07-02 20:49:41.998 [INFO ] [internal.handler.KLF200BridgeHandler] - Time on the KLF200 updated to reflect current time on this system.
2019-07-02 20:49:44.688 [INFO ] [internal.handler.KLF200BridgeHandler] - Home status monitoring enabled.
2019-07-02 20:50:16.860 [INFO ] [internal.commands.KlfCmdGetAllScenes] - Command executing, expecting data for 0 scenes.

Maybe at this topic anybody has an idea?!

thanks for any response!

Hello, I am currently controlling my Velux windows and rollershutters with a bunch of Remote controls attached to a Raspberry Pi. This works quite well but is somewhat limited regarding the amount of individual items to be controlled and obviously cannot read the current item status. Is that something I could realize with the KLF200? Is there a limit on controllable items? Finally, since there is a new Velux gateway on the market, would it make sense to wait for a binding for that or is there really no gain in functionality?
Many thanks,
Jonas

hello, I would be interested if the binding could be extended by my products. In the KLR200 the products are marked as awning (German Markise). Of course I would like to test the extension, if desired.

Thanks,

Stephan

Hello Stephan,

as long as the awning can be registered on the KLF200 it can be handled by openHAB.

Regards, Guenther