[velux] New OpenHAB2 binding - feedback welcome!

Search for clear cache here on the forum.
In short - Go into your OH setup using SSH (Putty etc).
Login
Use this command:
sudo openhab-cli clean-cache (enter)
Press Y on the promt.

Restart your OH afterwards.

That would be, “clear cache and tmp” :wink:

1 Like

Thanks for clarifying, wasn’t sure if you meant OHs’ or JVMs’ cache - will try that and keep you updated. Thanks for your time!

EDIT: nothing changed - same behavior.

1 Like

it should be:

VELUX_Office -> velux:klf200:home:VELUX_Office:position

@csi_oh

So, your item should be:

Rollershutter VELUX_Office "Büro Velux [%d]" { channel="velux:klf200:home:VELUX_Office:position" }

.
.
{ channel=“velux:klf200:home:VELUX_Office:position” }

Sorry that I didn’t recognize it earlier! :man_with_probing_cane:

2 Likes

Nice spottet. I didnt noticed that either :frowning: Hopefully it will fix it for him.

2 Likes

Hi @Celaeno1 & @Kim_Andersen!

That did the trick, but the trick was weirder than you think.

The final item definition is not:

velux:klf200:home:VELUX_Office:position

but:

velux:rollershutter:home:VELUX_Office:position

Many, many thanks :smiley: :smiley: :smiley:!

2 Likes

@Kim_Andersen and more.
I have installed Velux blinds mounted inside. If the “Silent” option in KLF 200 settings is ON, they move much slower and is therefore less noisy. So at least for some new products it is actually working.
I have not tried it with the binding. When not referrred it seems to use the KLF 200 setting.

Hmm… Silent mode OFF? That sounds odd :smiley:
I will look at it later. I have a feeling its on in my KLF.

Sorry, it is of course ON. I have now fixed my post.

1 Like

@funcat

Hello Fabien,

sorry, I hadn’t time for testing “MY/favorite”.

To shorten my research time. How should that be set up correctly (officially)? (KLF 200, Things, Items, Rules?)
And what workaround do you have?

Thanks a lot!

Hi Alex,
For somfy devices there is (almost) always an additionnal button 'MY’on physical remote which store a custom position. Simply long press on it, and the roller shutter will remember the position; later, press it and it will go to that position. Perfect to have a ‘sunny’ or ‘raining’ position for rollershutter for example.
This is for somfy device.
For KLF200, it handles it correctly (you can set manys scenes with all ‘my’ positions), but with a special workaround : when the device is at position ‘my’, the KLF200 indicate ‘108%’ (instead of 0%-100%)
This is for KLF200 device.
The problem is now with the KLF API part : when returning position, it returns (obviously) ‘108%’ but the API doesn’t like it (not in 0-100 range) and indicates a special code ‘not in range’ in the field ‘position’ in API message (instead of the real position).

Workaround :
#1 : do not use ‘my’ position on device, as the KLF/API does not update this position correctly -> not a good idea because this is very usefull (my wife use it all the time, and my wife is always right…)
#2 : put a filter on KLF binding logs to ignore all error/warnings -> bad idea because some logs are usefull, and anyway the FLK still does not update good position
#3 : hack in the code (but i have no access), just add a simply hack that tell the API to use filed ‘target’ (which seems to be correct) instead of field ‘position’ for somfy devices.

If you want to test it :

  1. set ‘my’ position on somfy device
  2. get the device on that position
  3. wait for binding refresh with full of warning logs (every minute)
  4. the position inside OH will never be updated while the device stays in this position

I can give more details if needed.

Thanks =)

Ok. Thanks for your detailed explanation. :slight_smile: I’ll try out and will give feedback.

@funcat

Hello Fabien,

I don’t have any scenes programed in KLF200. But I have programed a “MY” position by pressing 5 seconds on “MY” button. As long as you do not have scenes, there are no errors in log after pressing the “MY” button on remote control.

I get the correct position (24 %) in log.

20:44:23.457 [INFO ] [smarthome.event.ItemStateChangedEvent] - RolloEsszimmer changed from 100 to 24

If I will need such scenes like sunny or rainy I would programe this by rules in Openhab.

Most of the time I tell Alexa the needed percentage.

Very strange, i’d retry now with 2 rollershutters : 1 in any position, 1 other on ‘my’.
Still getting spam with error and no updates from ‘my’ and work nice with other.

2020-02-05 21:10:13.670 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:11:13.691 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:12:17.775 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:13:13.726 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:14:14.249 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:15:14.773 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:16:18.364 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.
2020-02-05 21:17:13.809 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:actuator:home:klf200_bureau:position,REFRESH): updating of item velux:actuator:home:klf200_bureau:position (type velux:actuator/position) failed.

What version of binding/OH/KLF200 do you use? Over TCP/SLIP ?

Thanks

Im on Windows 10, 64 bit, snapshot 2.5.2 build #36, Velux binding 2.5.1.202001051139 and SLIP protocol. No THINGS file. No scenes in KLF20O, Firmware: 0.2.0.0.71.0
No channels/items linked for Velux bridge.

Not easy to compare with your setup : i’m on linux, OH 2.4 stable, with thing file and bridge, and items file …
But i dont know why a file setup of binding would generate this bug.
I think perhaps my somfy oxymo devices are pretty old ? (7 years …)

I’m sorry for you. Mine are from autumn 2019.

Good evening,

first of all great thanks for the work and improvements on this binding.
I bought my Velux windows (8 of them, 4 with rollershutter and motor window) in 2007 and struggeled with KLF050, KLF100, KLR200 and finally the Netatmo for Velux which was the worste of all. Now with the KLF 200 connected to my KNX actor I could finally steer 5 functions out of the 8 I have but with some grouping it works.
When I switched my visu to OpenHAB I saw the Velux binding and now I am very happy with that, beside one point, my log is also filled with this INFO log items and after reading through the whole blog I have no Idea how to get rid of that.
Everything works fine (rules for opening windows, shutters etc.) but this lines appear every second in the log.

Just figured out how to formate it more nicely and that I also get a warning.

2020-02-14 20:50:49.509 [WARN ] [ternal.bridge.slip.SCgetDeviceStatus] - Gateway response GW_GET_NODE_INFORMATION_NTF (528) cannot be handled at this point of interaction.

2020-02-14 20:50:49.511 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:klf200:home:status,REFRESH): updating of item velux:klf200:home:status (type velux:klf200/status) failed.

2020-02-14 20:50:50.017 [WARN ] [ux.internal.bridge.slip.SCgetProduct] - Gateway response with NodeID 5 unexpected as query asked for NodeID 2.

2020-02-14 20:50:50.018 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:rollershutter:home:Fenster_Fitness:position,REFRESH): updating of item velux:rollershutter:home:Fenster_Fitness:position (type velux:rollershutter/position) failed.

2020-02-14 20:50:50.547 [WARN ] [ux.internal.bridge.slip.SCgetProduct] - Gateway response with NodeID 3 unexpected as query asked for NodeID 2.

2020-02-14 20:50:50.548 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:window:home:Rollladen_G_ste:position,REFRESH): updating of item velux:window:home:Rollladen_G_ste:position (type velux:window/position) failed.

2020-02-14 20:50:51.053 [WARN ] [ux.internal.bridge.slip.SCgetProduct] - Gateway response with NodeID 0 unexpected as query asked for NodeID 6.

2020-02-14 20:50:51.056 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:window:home:Rollladen_Fitness:position,REFRESH): updating of item velux:window:home:Rollladen_Fitness:position (type velux:window/position) failed.

2020-02-14 20:50:51.585 [WARN ] [ux.internal.bridge.slip.SCgetProduct] - Gateway response with NodeID 7 unexpected as query asked for NodeID 6.

2020-02-14 20:50:51.587 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:rollershutter:home:Fenster_Lisa:position,REFRESH): updating of item velux:rollershutter:home:Fenster_Lisa:position (type velux:rollershutter/position) failed.

2020-02-14 20:50:52.095 [WARN ] [ux.internal.bridge.slip.SCgetProduct] - Gateway response with NodeID 1 unexpected as query asked for NodeID 5.

2020-02-14 20:50:52.097 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:window:home:Rollo_Schlafzimmer:position,REFRESH): updating of item velux:window:home:Rollo_Schlafzimmer:position (type velux:window/position) failed.

2020-02-14 20:50:52.615 [WARN ] [ux.internal.bridge.slip.SCgetProduct] - Gateway response with NodeID 2 unexpected as query asked for NodeID 5.

2020-02-14 20:50:52.624 [INFO ] [.internal.handler.VeluxBridgeHandler] - handleCommandScheduled(velux:window:home:Rollladen_Lisa:position,REFRESH): updating of item velux:window:home:Rollladen_Lisa:position (type velux:window/position) failed.


Hello Leopold @lobermeier,

thanks for the feedback. Do the messages appear continously or is it limited to a specific timeframe?

Easily you can get rid of those messages by preventing the parallel execution of the commands as they mentioning that some gateway responses are returned in an unexpected sequence. This behaviour can be controlled by the property settings of the KLF200 (within the binding).

Of course, as you’ll loose some functionality with the mentioned approach, I’d suggest to activate the protocol tracing 1st of all - which can be done by the property settings of the KLF200 as well. Perhaps this will lead to the cause of thos irregular message interactions.

Regards, Guenther

Good Morning,

they appear frequently some 5 - 10 min. after the bridge has been started.

but…

I switched the timeout from default 500 to 2000 and since then there is silence in the log.
At the time it looks like that this has solved the problem, will observe and come back if situation changes.

One more thing, could it be that windows are default Positionsinvertierung true in PaperUI and switching to false does not work? Whenerver I change that value and save next time i enter it is true again.

br and many thanks for your support

Leo

ok. This is new to me. Will have to check it.