[velux] New OpenHAB2 binding - feedback welcome!

Now the Velux bridge KLF200 into the io-homecontrol world is working with OpenHAB2.

For quick start please choose https://github.com/gs4711/org.openhab.binding.velux

or take a deeper look into the PR https://github.com/openhab/openhab2-addons/pull/2531

Regards, Guenther

8 Likes

Oh this is great as I have the integration of my new VELUX windows/shutters on my todo list.

THX!

@gs4711 Your Binding works very good.

Iā€™ve tried both ways to configure .cfg and PaperUI.
Both works.

Just a ā€œproblemā€ I have.
I can not define the scene name for Velux Scene Information in the Paper UI.
There is an error when saving.

image

Furthermore, I have asked Velux regarding an FW update. Unfortunately there is no new FW.
So, unfortunately, only the possibility remains to work with sence.

It would be nice for the future, if there was still the possibility to query the current status of the individual items/sence.
Background: I can change also, with other remote controls and over the switching input of the KLF-200, the positions.
This not updated in the OH.

As a hint should be added in the Readme, that the KLF-200 only can use one HTTP connection.
If the binding is active, you can not log in via web http or if web http is used, the binding could not be activated.

Dear Guenther

Try to get your binding up and running. Now 2 eveneings without sucess.
Run Openhab 2.2 on a Raspi3 with openhabian1.4

Installation of binding went fine.

The configured Thing as follow as i used statical IP adress:

Bridge velux:klf200:home [ bridgeIPAddress=ā€œ192.168.1.35ā€ ]

Afterwards i can search for things --> choose Velux binding --> nothing happens.

So i manually add and get a thing. But the status donĀ“t go to online. It shows initializing.
As LOG Fioles shows some timing issues i increased timeout to 10000 but no sucess.

The log shows following :

2018-04-19 21:14:35.417 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ā€˜velux.itemsā€™

==> /var/log/openhab2/events.log <==

2018-04-19 21:14:35.437 [.ItemChannelLinkAddedEvent] - Link ā€˜V_BRIDGE_STATUS-velux:klf200:ea912597:statusā€™ has been added.

2018-04-19 21:14:35.442 [.ItemChannelLinkAddedEvent] - Link ā€˜V_BRIDGE_FIRMWARE-velux:klf200:ea912597:firmwareā€™ has been added.

==> /var/log/openhab2/openhab.log <==

2018-04-19 21:15:58.820 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Initializing Velux bridge handler for ā€˜velux:klf200:603c06b3ā€™.

==> /var/log/openhab2/events.log <==

2018-04-19 21:15:58.831 [hingStatusInfoChangedEvent] - ā€˜velux:klf200:603c06b3ā€™ changed from UNINITIALIZED to INITIALIZING

==> /var/log/openhab2/openhab.log <==

2018-04-19 21:16:03.819 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing ā€˜velux:klf200:603c06b3ā€™ takes more than 5000ms.

2018-04-19 21:20:13.151 [INFO ] [hab.binding.velux.bridge.VeluxBridge] - io(): socket I/O failed continuously (6 times).

2018-04-19 21:20:13.154 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - bridgeCommunicate(): Exception occurred on accessing http://velux.bridge:80/api/v1/auth: java.util.concurrent.ExecutionException: java.net.UnknownHostException: velux.bridge: Name or service not known.

2018-04-19 21:20:13.156 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Velux bridge login/logout sequence failed; expecting bridge is OFFLINE.

==> /var/log/openhab2/events.log <==

2018-04-19 21:20:13.178 [hingStatusInfoChangedEvent] - ā€˜velux:klf200:603c06b3ā€™ changed from INITIALIZING to OFFLINE

==> /var/log/openhab2/openhab.log <==

2018-04-19 21:32:29.052 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model ā€˜velux.thingsā€™

2018-04-19 21:32:29.154 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Initializing Velux bridge handler for ā€˜velux:klf200:homeā€™.

==> /var/log/openhab2/events.log <==

2018-04-19 21:32:29.163 [hingStatusInfoChangedEvent] - ā€˜velux:klf200:homeā€™ changed from UNINITIALIZED to INITIALIZING

==> /var/log/openhab2/openhab.log <==

2018-04-19 21:32:34.145 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing ā€˜velux:klf200:homeā€™ takes more than 5000ms.

2018-04-19 21:32:34.500 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ā€˜velux.thingsā€™

==> /var/log/openhab2/events.log <==

2018-04-19 21:32:39.556 [me.event.ThingUpdatedEvent] - Thing ā€˜velux:klf200:homeā€™ has been updated.

==> /var/log/openhab2/openhab.log <==

2018-04-19 21:32:39.564 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ā€˜velux.thingsā€™

==> /var/log/openhab2/events.log <==

2018-04-19 21:32:44.629 [me.event.ThingUpdatedEvent] - Thing ā€˜velux:klf200:homeā€™ has been updated.

==> /var/log/openhab2/openhab.log <==

2018-04-19 21:33:36.854 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ā€˜velux.thingsā€™

2018-04-19 21:33:36.862 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model ā€˜velux.thingsā€™ is either empty or cannot be parsed correctly!

2018-04-19 21:33:36.890 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model ā€˜velux.thingsā€™

==> /var/log/openhab2/events.log <==

2018-04-19 21:33:41.947 [me.event.ThingUpdatedEvent] - Thing ā€˜velux:klf200:homeā€™ has been updated.

Could you give me a hint what i am doing wrong ?

Thanks

Karl

Hallo Karl,

thanks for the extracts of the log files. They contain some hints about the problem:

java.util.concurrent.ExecutionException: java.net.UnknownHostException: velux.bridge: Name or service not known

There seems to be a problem with the name resolution on the PI3 with the KLF200 device name.

Could you please try to test the device with

root@pi:~ $ host [velux.bridge](http://velux.bridge/api/v1/auth:) 

ā€”> should display an ip address, or

root@pi:~ $ ping [velux.bridge](http://velux.bridge/api/v1/auth:) 

ā€”> should tell you something about the connectivity

Nevertheless - according to the log files - Iā€™m expecting a return message like

Host velux.bridge not found: 3(NXDOMAIN)

Best regards,

Guenther

Dear Guenther

Thanks for your quick response.
Connected via Putty to my Raspi but ā€¦

could not manage to get commands running ??

As iĀ“m relativ new on Linux ii sent you the screenshoot

Thanks

KArl

If i ping the IP direct i get response
If i try : ping [velux.bridge]
i get the following: ping: [velux.bridge]: Name or service not known

If i try host with the command : host [velux.bridge]
i get : Host[velux.bridge] not found: 3(NXDOMAIN)

Hope this helps

image

This is my hosts file.

Additionally i figured out that i can not remove the thing in the paper UI. Get always : Error: 409-conflict

Only if i remove or rename the textual configured thing file the thing disappears.

Just try this one:

ping velux.bridge

If this fails, just enter the IP address within the configuration. This should work as well.

Coming back to the original post: are you sure that you have not configured at any point the bridge name

velux.bridge

? It seems to occur during accessing the KLF200 but I donā€™t see a point where this name had been configured.

it brings up : Name or service not known

I have in the textual thing configuration the IP Adress in.

But in the thing which i can open with paper UI there is

http://velux.bridge:80 writte in which i canĀ“t overwrite.

Same error as i try to delete thing in Paper UI.

Error: 409 - conflict

Got working it thing is now online:

remove the textual thing file

Add manually via Paper UI a velux thing
Got thing ID and change URL to the static IP adress i have with port 80.

Now thing is online. Try now to get my predefindet scenes from the KLF200 up and running.

But prefer textual configuration (seems need more knowledge but as im a beginner ā€¦)

A last question can i store the thing ID in variable and define only the scenes in the textual way with the variable name in the channel . Means instead of home my defined variable ?

channel=ā€œvelux:klf200:home:statusā€

And the bridge statement i remove in the textual definition ?

Thanks

Karl

Hi Guenther,

Iā€™m trying to get your binding running for the last two weeks now, but without any success. Could you please help me fix it?

Some information on my environment:

Running Openhab 2.3.0-SNAPSHOT, Build #1283 in a Docker Container

bundle:list in that container shows

240 ā”‚ Active   ā”‚  80 ā”‚ 2.3.0.201802142040     ā”‚ Velux Binding
242 ā”‚ Active   ā”‚  80 ā”‚ 1.12.0.201805060109    ā”‚ openHAB Expire Binding

In openhab.log the following lines appear:

...
2018-05-30 22:38:28.864 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.items'
...
2018-05-30 22:38:36.507 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.sitemap'
...
2018-05-30 22:38:36.662 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.things'
...
2018-05-30 22:38:38.587 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 240 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.interna
l.VeluxHandlerFactory
        at org.apache.felix.scr.impl.ComponentRegistry.checkComponentName(ComponentRegistry.java:222) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:448) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:315) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:268) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:388) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [39:org.apache.felix.scr:2.0.12]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]
        at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]
        at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
        at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]
        at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
        at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]
2018-05-30 22:38:38.627 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Initializing Velux veluxBridge handler for 'velux:klf200:home'.
...
2018-05-30 22:38:43.631 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing 'velux:klf200:home' takes more than 5000ms.

ā€¦ and in Eventlog

..
2018-05-30 22:38:36.841 [.ItemChannelLinkAddedEvent] - Link 'swWindow000-velux:scene:home:Window000:action' has been added.
...
2018-05-30 22:38:36.873 [.ItemChannelLinkAddedEvent] - Link 'V_BRIDGE_STATUS-velux:klf200:home:status' has been added.
...
2018-05-30 22:38:36.882 [.ItemChannelLinkAddedEvent] - Link 'VeluxKLF200_IdentifizierteSzenen-velux:klf200:d63e074a:scenes' has been added.
2018-05-30 22:38:36.882 [.ItemChannelLinkAddedEvent] - Link 'VeluxKLF200_IdentifizierteProdukte-velux:klf200:d63e074a:products' has been added.
2018-05-30 22:38:36.883 [.ItemChannelLinkAddedEvent] - Link 'VeluxKLF200_Status-velux:klf200:d63e074a:status' has been added.
2018-05-30 22:38:36.884 [.ItemChannelLinkAddedEvent] - Link 'VeluxKLF200_Firmware-velux:klf200:d63e074a:firmware' has been added.
2018-05-30 22:38:36.884 [.ItemChannelLinkAddedEvent] - Link 'VeluxKLF200_IPAdresse-velux:klf200:d63e074a:ipAddress' has been added.
...
2018-05-30 22:38:38.626 [hingStatusInfoChangedEvent] - 'velux:klf200:home' changed from UNINITIALIZED to INITIALIZING
...
2018-05-30 22:38:43.635 [hingStatusInfoChangedEvent] - 'velux:scene:home:Window000' changed from UNINITIALIZED to UNINITIALIZED (BRIDGE_UNINITIALIZED)
2018-05-30 22:38:43.636 [hingStatusInfoChangedEvent] - 'velux:scene:home:Window100' changed from UNINITIALIZED to UNINITIALIZED (BRIDGE_UNINITIALIZED)
...

Why seems the velux binding to be registered, if Bundle:list only shows one binding (240) as registered?

In Paper-UI Brigde and Szene stay uninitialized.

What can I do to get your binding running?

Thanks
Bert

Hello Bert,

thank you for providing detailed log extracts. Is there any other log entry

for some of the velux activities before this error event?

Hi Guenther,

no, there isnā€™t.

To get a clear basis, I just shut down the container, cleared cache- and tmp-directories, deleted all logs and started again.

And the results of a ā€¦

# more openhab.log | grep velux

2018-05-31 12:36:16.962 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.items'
2018-05-31 12:36:26.936 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.sitemap'
2018-05-31 12:36:27.094 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.things'
2018-05-31 12:36:28.352 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 195 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.internal.VeluxHandlerFactory
2018-05-31 12:36:28.403 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Initializing Velux veluxBridge handler for 'velux:klf200:home'.
2018-05-31 12:36:33.409 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing 'velux:klf200:home' takes more than 5000ms.

and a ā€¦

# more openhab.log | grep ERROR

2018-05-31 12:36:28.352 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component

The error details stay the same (with the difference, that bundle ID changed to 195, whatā€™s because I flushed the caches)

2018-05-31 12:36:28.352 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 195 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.internal.VeluxHandlerFactory
        at org.apache.felix.scr.impl.ComponentRegistry.checkComponentName(ComponentRegistry.java:222) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:448) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:315) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:268) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:388) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [39:org.apache.felix.scr:2.0.12]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]
        at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]
        at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
        at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]
        at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
        at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

If you could tell me how to raise log level I could perhaps try to send more information on that.

Hi there,

I found the solution for my problem. The binding is working now as expected. As I told before, my openHAB is running in a docker container. Giving this container a dedicated IP in my local network made the Velux gateway reachable for the binding now.

Before the container was running in a bridged network and canā€™t reach the KLN200-box, although I could ping the box out of the container.

BUT: The error message stays the same.

2018-05-31 14:57:06.414 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.items'
2018-05-31 14:57:17.253 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.sitemap'
2018-05-31 14:57:17.398 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'velux.things'
2018-05-31 14:57:18.890 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 195 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.internal.VeluxHandlerFactory
        at org.apache.felix.scr.impl.ComponentRegistry.checkComponentName(ComponentRegistry.java:222) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:448) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:315) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:268) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:388) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [39:org.apache.felix.scr:2.0.12]
        at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [39:org.apache.felix.scr:2.0.12]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]
        at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]
        at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
        at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
        at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]
        at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
        at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) [?:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]
2018-05-31 14:57:18.988 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Initializing Velux veluxBridge handler for 'velux:klf200:home'.
2018-05-31 14:57:23.992 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing 'velux:klf200:home' takes more than 5000ms.
2018-05-31 15:14:00.773 [INFO ] [ding.velux.bridge.VeluxBridgeExecute] - execute() finished successfully.
20

No offense! My windows open an close now. Guenther, Iā€™m happy with your binding. Thanks for your support!

Cheers,
Bert

I am also seeing this error (and have been for months), which seems to indicate to me this is a bug.

2018-06-07 20:38:30.879 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 189 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.internal.VeluxHandlerFactory
	at org.apache.felix.scr.impl.ComponentRegistry.checkComponentName(ComponentRegistry.java:222) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:448) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:315) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:268) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:388) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [39:org.apache.felix.scr:2.0.12]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]
	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]
	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
	at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
	at org.apache.karaf.bundle.command.Start.executeOnBundle(Start.java:38) [43:org.apache.karaf.bundle.core:4.1.5]
	at org.apache.karaf.bundle.command.BundlesCommand.doExecute(BundlesCommand.java:62) [43:org.apache.karaf.bundle.core:4.1.5]
	at org.apache.karaf.bundle.command.BundlesCommand.execute(BundlesCommand.java:52) [43:org.apache.karaf.bundle.core:4.1.5]
	at org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:84) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:68) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:86) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:571) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:497) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:386) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Pipe.doCall(Pipe.java:417) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Pipe.call(Pipe.java:229) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Pipe.call(Pipe.java:59) [12:org.apache.karaf.shell.core:4.1.5]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]

Sorry guys, Iā€™m planning to implement te binding as I have 5 velux managed by a KLR-200 each.

How KLF200 works? Is there a way to merge each KLR-200 configuration in the gateway? The gateway will work as a remote, so reaching the velux via wireless and same way the IP network?

No wired infrastructure required, right?

Thanks
Andrea

Good Morning,

after some testing for:

I also try to update my Binding from 2.2.0 to 2.3.0.
My openhab is runnig on 2.3.0 stable. So why not to try the binding for 2.3.0???

The old binding (2.2.0) was running perfect, but I tried to update.

After uninstall 2.2.0 and install 2.3.0 I got the following error:

2018-06-15 08:04:29.587 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 233 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.internal.VeluxHandlerFactory
	at org.apache.felix.scr.impl.ComponentRegistry.checkComponentName(ComponentRegistry.java:222) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:448) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:315) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:268) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:388) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [39:org.apache.felix.scr:2.0.12]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]
	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]
	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
	at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [9:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [9:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [9:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [9:org.apache.felix.fileinstall:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [9:org.apache.felix.fileinstall:3.6.4]
2018-06-15 08:08:11.430 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.dispose()' on 'org.openhab.binding.velux.handler.VeluxBridgeHandler@339383': null
java.lang.NullPointerException: null
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogin(VeluxBridgeHandler.java:344) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeCommunicate(VeluxBridgeHandler.java:455) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogout(VeluxBridgeHandler.java:367) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.dispose(VeluxBridgeHandler.java:160) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2018-06-15 08:08:11.437 [ERROR] [ome.core.thing.internal.ThingManager] - Exception occurred while disposing handler of thing 'velux:klf200:home': null
java.lang.NullPointerException: null
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogin(VeluxBridgeHandler.java:344) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeCommunicate(VeluxBridgeHandler.java:455) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogout(VeluxBridgeHandler.java:367) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.dispose(VeluxBridgeHandler.java:160) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2018-06-15 08:08:11.676 [ERROR] [org.openhab.binding.velux           ] - [binding.velux] Cannot register Component
org.osgi.service.component.ComponentException: The component name 'binding.velux' has already been registered by Bundle 233 (org.openhab.binding.velux) as Component of Class org.openhab.binding.velux.internal.VeluxHandlerFactory
	at org.apache.felix.scr.impl.ComponentRegistry.checkComponentName(ComponentRegistry.java:222) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:448) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.initialize(BundleComponentActivator.java:315) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:268) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:388) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [39:org.apache.felix.scr:2.0.12]
	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [39:org.apache.felix.scr:2.0.12]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]
	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]
	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
	at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
	at org.apache.karaf.bundle.command.Restart.doExecute(Restart.java:51) [43:org.apache.karaf.bundle.core:4.1.5]
	at org.apache.karaf.bundle.command.BundlesCommand.execute(BundlesCommand.java:52) [43:org.apache.karaf.bundle.core:4.1.5]
	at org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:84) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:68) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:86) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:571) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:497) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:386) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Pipe.doCall(Pipe.java:417) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Pipe.call(Pipe.java:229) [12:org.apache.karaf.shell.core:4.1.5]
	at org.apache.felix.gogo.runtime.Pipe.call(Pipe.java:59) [12:org.apache.karaf.shell.core:4.1.5]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2018-06-15 08:10:17.707 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.dispose()' on 'org.openhab.binding.velux.handler.VeluxBridgeHandler@833984': null
java.lang.NullPointerException: null
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogin(VeluxBridgeHandler.java:344) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeCommunicate(VeluxBridgeHandler.java:455) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogout(VeluxBridgeHandler.java:367) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.dispose(VeluxBridgeHandler.java:160) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2018-06-15 08:10:17.711 [ERROR] [ome.core.thing.internal.ThingManager] - Exception occurred while disposing handler of thing 'velux:klf200:home': null
java.lang.NullPointerException: null
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogin(VeluxBridgeHandler.java:344) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeCommunicate(VeluxBridgeHandler.java:455) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.bridgeLogout(VeluxBridgeHandler.java:367) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at org.openhab.binding.velux.handler.VeluxBridgeHandler.dispose(VeluxBridgeHandler.java:160) [233:org.openhab.binding.velux:2.3.0.201802142040]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.oh230]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]

I switched back to 2.2.0 and now it is running again:

2018-06-15 08:12:20.295 [INFO ] [ing.velux.handler.VeluxBridgeHandler] - Initializing Velux bridge handler for 'velux:klf200:home'.
2018-06-15 08:12:25.315 [WARN ] [ome.core.thing.internal.ThingManager] - Initializing handler for thing 'velux:klf200:home' takes more than 5000ms.
2018-06-15 08:12:20.282 [hingStatusInfoChangedEvent] - 'velux:klf200:home' changed from UNINITIALIZED (HANDLER_MISSING_ERROR) to INITIALIZING
2018-06-15 08:12:24.372 [hingStatusInfoChangedEvent] - 'velux:klf200:home' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.413 [hingStatusInfoChangedEvent] - 'velux:scene:home:links_0' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.428 [hingStatusInfoChangedEvent] - 'velux:scene:home:links_0' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.464 [hingStatusInfoChangedEvent] - 'velux:scene:home:ALLE_50' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.470 [hingStatusInfoChangedEvent] - 'velux:scene:home:rechts_50' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.476 [hingStatusInfoChangedEvent] - 'velux:scene:home:rechts_50' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.480 [hingStatusInfoChangedEvent] - 'velux:scene:home:ALLE_50' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.484 [hingStatusInfoChangedEvent] - 'velux:scene:home:ALLE_auf' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.486 [hingStatusInfoChangedEvent] - 'velux:scene:home:links_50' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.492 [hingStatusInfoChangedEvent] - 'velux:scene:home:ALLE_auf' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.495 [hingStatusInfoChangedEvent] - 'velux:scene:home:rechts_0' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.501 [hingStatusInfoChangedEvent] - 'velux:scene:home:links_100' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.506 [hingStatusInfoChangedEvent] - 'velux:scene:home:rechts_100' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.509 [hingStatusInfoChangedEvent] - 'velux:scene:home:ALLE_zu' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2018-06-15 08:12:24.512 [hingStatusInfoChangedEvent] - 'velux:scene:home:links_50' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.515 [hingStatusInfoChangedEvent] - 'velux:scene:home:rechts_0' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.517 [hingStatusInfoChangedEvent] - 'velux:scene:home:ALLE_zu' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.520 [hingStatusInfoChangedEvent] - 'velux:scene:home:rechts_100' changed from INITIALIZING to ONLINE
2018-06-15 08:12:24.523 [hingStatusInfoChangedEvent] - 'velux:scene:home:links_100' changed from INITIALIZING to ONLINE

I donĀ“t know why the 2.3.0 binding is not running!?

Additional Info:

https://github.com/gs4711/org.openhab.binding.velux#famous-last-words

please pass the appropriate log line back to the maintainer to incorporate the new Velux device type.

here is my log line:

2018-06-15 08:12:28.810 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.815 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.819 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.823 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.827 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.830 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.834 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.838 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.842 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.845 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.849 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.
2018-06-15 08:12:28.853 [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(13) has found an unregistered ProductTypeId.

Did you clear your cache- and tmp directiories after uninstall of 2.2.0?