Io-homecontrol / velux - something's in the bush


(Georges Toth) #143

Hi,

There is a new firmware version out at https://updates2.velux.com/, verison 0.2.0.0.71.0

I was wondering if somebody has already tried that one ?

I just upgrded mine, looked like it went fine but actually now only WiFi works.
I see that it gets an IP from DHCP on the LAN interface, I can ping it, but it never listens on port 80.

Hence I am a bit lost here. Trying to reflash the latest firmware fails with the message “outdated firmware”.

Any help or idea is much appreciated.


(Guenther Schreiner) #144

Hi,

this sounds really bad.

On my side after two unsuccessful tries via LAN I tried the upgrade via WLAN:

it immediately succeeded with a final reboot after 14 minutes. Every part of

the recent configuration was maintained, the identification of products works fine.

BUT: the web server does not respond on the LAN interface. Only listening on

the WLAN (within the first minutes).

Best regards,

Guenther


(Georges Toth) #145

Hi,

That’s exactly the same as I got.
I tried to contact their support via their web-form last week, no reply yet.

In case you get somewhere, please do let me know!
Mine is unusable right now :frowning:


(KLF200 Developer) #146

Hello guys,

As you already have noticed VELUX has released a software update for KLF200. Unfortunately, we are still in the progress of setting up our systems to provide a pleasant experience for this, so we have some work to do. Currently we are not able to provide the changelogs for the updates in a way that we would like to do, but I am providing it here for you.

But, the main change is that we have seen your interest in your use of the KLF200 and would like to provide you with a much better way of interfacing to the KLF200. The API you are currently using, was never intended for this purpose and due to security issues, we had during the last development cycle, we had to close the HTTP configuration interface on the ethernet interface. To make sure you are still able to use KLF200 to integrate to your systems, we are in the process of releasing an official API description, that can be used and is intended to interface to the KLF200. This API will make it possible for you to make a much better integration to the VELUX system. As mentioned our internal systems is not quite ready, but I have the opportunity to forward it here. I am also including a number of examples in Python that you might find helpful. When we are ready with it, I will send a link to the official VELUX download page, where you can find the same information.

Edited October 7, 2018
Here is a link to our official page with changelog and API dokumentation.


Velux or Fakro?
(Kim Andersen) #148

I assume this will require a new openhab binding?


(Guenther Schreiner) #149

Yes.

The negative point is, that the protocol has been changed from AJAX to SLIP (RFC 1055). Therefore this will
lead to a changed binding.
The positive point is, that there are a lot of different methods which will extend the functions of the binding.


(Kim Andersen) #150

We´re counting on you, Guenther :slight_smile:


(Kenth Jensen) #151

Looking forward to this new API


(Stuart Hanlon) #152

Hi

I’ve just dropped your V2.3 snapshot Binding into the Addons folder (alongside another binding), but nothing appears in PaperUI.

Do I need to do something more than just add the jar file?

Your GitHub page mentions a config file with parameters, but there isn’t an example file for me to start from.

Cheers,

Stuart

Update

I’ve just reread the whole thread and now have a better understanding of the changes.

I’m happy to wait as long as needed :smile:

Good luck


(Kim Andersen) #153

This is probably the best thread to use:

As for you question. I have no idea… I just searched for my cfg file, but I cant find it… I wonder how the heck I manaed to get it to work. It´s still working though.


(Stuart Hanlon) #154

Thanks Kim

If you suddenly figure out what you did, please do let us know :smile:

Cheers,
Stuart


(Kim Andersen) #155

Ahh… I think you can add the KLF200 manually… If you got the binding installed, go to Things (In paperUI), and add it manually, by pressing the + and choose Velux… Add your KLF200 in there.


(Stuart Hanlon) #156

Hi

That’s the part that’s causing the issue.

I see all other bindings, but not the Velux one.

I’ve tried both V2.3 & V2.4

As well as a OpenHab2 restart


(Kim Andersen) #157

Hmm so you havn´t got the binding installed!

I remember having the same issue first time. I had to download it again (using another way of downloading), cause the jar file was somehow corrupt. After that, the binding installed just fine and have been working ever since. (I think I wrote a message about it in the other Velux binding thread).

I recall reading someone runing openhab ina docker having problems as well. I´m using an RPi running the apt-get openhabian (hasslefree). 2.3.0 stable.


(Stuart Hanlon) #158

Arrrr okay :slight_smile:

That’s easy to try :smile:

FYI

Previously, I simply used the wget method direct to the GitHub file

Update

This seems to be the problem.

If I issue

wget https://github.com/gs4711/org.openhab.binding.velux/blob/master/org.openhab.binding.velux-2.3.0-SNAPSHOT.jar

I get a 34KB file.

If I follow that link in a browser, it downloads a jar file of 94KB.

So…

I issued

wget https://github.com/gs4711/org.openhab.binding.velux/blob/master/org.openhab.binding.velux-2.3.0-SNAPSHOT.jar?raw=true

But I get a 94KB file, with this filename
org.openhab.binding.velux-2.3.0-SNAPSHOT.jar?raw=true

I’ll rename it and see what happens…

That’s fixed it :smile:

Thanks for your help :smile:

Lesson learnt… Check the file size of downloaded files


(Kim Andersen) #159

Yeah I´d struggle with that as well… Dont know why it happened.
At least you got it working.


(David Lagae) #160

Hi Stuart,

I share you my configuration

I followed the quick start https://github.com/gs4711/org.openhab.binding.velux, and the velux binding is working great.

My configuration:
KLF200 Firmware: 0.1.1.0.41.0
Raspberry pi 2
openHAB 2.3.0-1
Copyed de binding with windows explorer: \openHAB-share\openhab2-addons\org.openhab.binding.velux-2.4.0-SNAPSHOT.jar

*.things file
Default velux password velux123.
Use IP address instead of URL (give your KLF200 a static IP Adress)

//Velux
Bridge velux:klf200:home   [ bridgeIPAddress="192.168.1.100", bridgeTCPPort=80,bridgePassword=" velux123",timeoutMsecs=5000, retries=9 ]
    {
    //Ramen
    Thing   scene   grWindowClosed    [ sceneName="Gr_raam_000" ]
    Thing   scene   grWindowUnlocked  [ sceneName="Gr_raam_005" ]
    Thing   scene   grWindow050       [ sceneName="Gr_raam_050" ]
    Thing   scene   grWindowOpened    [ sceneName="Gr_raam_100" ]
 
    Thing   scene   klWindowClosed    [ sceneName="Kl_raam_000" ]
    Thing   scene   klWindowUnlocked  [ sceneName="Kl_raam_005" ]
    Thing   scene   klWindow050       [ sceneName="Kl_raam_050" ]
    Thing   scene   klWindowOpened    [ sceneName="Kl_raam_100" ]

    Thing   scene   allWindowClosed   [ sceneName="Alle_ramen_000" ]
    Thing   scene   allWindowUnlocked [ sceneName="Alle_ramen_005" ]
    Thing   scene   allWindow050      [ sceneName="Alle_ramen_050" ]
    Thing   scene   allWindowOpened   [ sceneName="Alle_ramen_100" ]

    //Blindings
    Thing   scene   allBlindingClosed [ sceneName="All_Blinding_000" ]
    Thing   scene   allBlindingOpened [ sceneName="All_Blinding_100" ]
    
    Thing   scene   grBlindingClosed  [ sceneName="Gr_Blinding_000" ]
    Thing   scene   grBlindingOpened  [ sceneName="Gr_Blinding_100" ]
 
    Thing   scene   klBlindingClosed  [ sceneName="Kl_Blinding_000" ]
    Thing   scene   klBlindingOpened  [ sceneName="Kl_Blinding_100" ]

}

*.items file

/*Velux*/
    //Scenes ramen
    Switch  All_raam_OPEN      "Alle ramen open"         (gV)       { channel="velux:scene:home:allWindowOpened:action" }
    Switch  All_raam_UNLOCKED  "Alle ramen ventilatie"   (gV)       { channel="velux:scene:home:allWindowUnlocked:action" }
    Switch  All_raam_050       "Alle ramen 50%"          (gV)       { channel="velux:scene:home:allWindow050:action" }
    Switch  All_raam_CLOSED    "Alle ramen dicht"        (gV)       { channel="velux:scene:home:allWindowClosed:action" }

    Switch  Gr_raam_OPEN      "Gr raam open"             (gV)       { channel="velux:scene:home:grWindowOpened:action" }
    Switch  Gr_raam_UNLOCKED  "Gr raam ventilatie"       (gV)       { channel="velux:scene:home:grWindowUnlocked:action" }
    Switch  Gr_raam_050       "Gr raam 50%"              (gV)       { channel="velux:scene:home:grWindow050:action" }
    Switch  Gr_raam_CLOSED    "Gr raam dicht"            (gV)       { channel="velux:scene:home:grWindowClosed:action" }

    Switch  Kl_raam_OPEN      "Kl raam open"             (gV)       { channel="velux:scene:home:klWindowOpened:action" }
    Switch  Kl_raam_UNLOCKED  "Kl raam ventilatie"       (gV)       { channel="velux:scene:home:klWindowUnlocked:action" }
    Switch  Kl_raam_050       "Kl raam 50%"              (gV)       { channel="velux:scene:home:klWindow050:action" }
    Switch  Kl_raam_CLOSED    "Kl raam dicht"            (gV)       { channel="velux:scene:home:klWindowClosed:action" }

    //Scenes bindings
    Switch  All_blinding_OPEN    "Alle bindings open"    (gV)       { channel="velux:scene:home:allBlindingOpened:action" }
    Switch  All_blinding_CLOSED  "Alle bindings dicht"   (gV)       { channel="velux:scene:home:allBlindingClosed:action" }

    Switch  Gr_blinding_OPEN    "Gr binding open"        (gV)       { channel="velux:scene:home:grBlindingOpened:action" }
    Switch  Gr_blinding_CLOSED  "Gr binding dicht"       (gV)       { channel="velux:scene:home:grBlindingClosed:action" }

    Switch  Kl_blinding_OPEN    "Kl binding open"        (gV)       { channel="velux:scene:home:klBlindingOpened:action" }
    Switch  Kl_blinding_CLOSED  "Kl binding dicht"       (gV)       { channel="velux:scene:home:klBlindingClosed:action" }

    //Satus KLF200 
    String  V_BRIDGE_STATUS     "Status"        { channel="velux:klf200:home:status" }
    String  V_BRIDGE_FIRMWARE   "Firmware"      { channel="velux:klf200:home:firmware" }
    String  V_BRIDGE_IPADDRESS  "IP"            { channel="velux:klf200:home:ipAddress" }
    String  V_BRIDGE_SUBNETMASK "Subnet"        { channel="velux:klf200:home:subnetMask" }
    String  V_BRIDGE_DEFAULTGW  "Gateway"       { channel="velux:klf200:home:defaultGW" }
    String  V_BRIDGE_WLANSSID   "SSID"          { channel="velux:klf200:home:WLANSSID" }
    String  V_BRIDGE_WLANPASSWD "WLAN Pas"      { channel="velux:klf200:home:WLANPassword" }
    String  V_BRIDGE_SCENES     "Scenes "       { channel="velux:klf200:home:scenes" }

    Group:Switch:OR(ON, OFF)           gV             "PushButtonVelux"                    (Home)

*.sitemap file

 Frame label="Velux ramen" 
            {                
                Switch  item=All_raam_OPEN       icon=window
                Switch  item=All_raam_UNLOCKED   icon=window
                Switch  item=All_raam_050        icon=window
                Switch  item=All_raam_CLOSED     icon=window

                Switch  item=Gr_raam_OPEN        icon=window
                Switch  item=Gr_raam_UNLOCKED    icon=window
                Switch  item=Gr_raam_050         icon=window
                Switch  item=Gr_raam_CLOSED      icon=window
                
                Switch  item=Kl_raam_OPEN        icon=window
                Switch  item=Kl_raam_UNLOCKED    icon=window
                Switch  item=Kl_raam_050         icon=window
                Switch  item=Kl_raam_CLOSED      icon=window
            }  
            
            Frame label="Velux blindings" icon="blinding"
            {
                Switch  item=All_blinding_OPEN    icon=blinds
                Switch  item=All_blinding_CLOSED  icon=blinds

                Switch  item=Gr_blinding_OPEN     icon=blinds
                Switch  item=Gr_blinding_CLOSED   icon=blinds

                Switch  item=Kl_blinding_OPEN     icon=blinds
                Switch  item=Kl_blinding_CLOSED   icon=blinds              
            }
           
            Frame label="Velux KLF200 status" 
            {
                Text    item=V_BRIDGE_STATUS      icon=none
                Text    item=V_BRIDGE_FIRMWARE    icon=none
                Text    item=V_BRIDGE_IPADDRESS   icon=none
                Text    item=V_BRIDGE_SUBNETMASK  icon=none
                Text    item=V_BRIDGE_DEFAULTGW   icon=none
                Text    item=V_BRIDGE_WLANSSID    icon=none
                Text    item=V_BRIDGE_WLANPASSWD  icon=none    
                Text    item=V_BRIDGE_SCENES      icon=none
            }

*.rule file

rule "PushButton of group gV"
  when
    Item gV changed
  then
    // waiting a second.
    Thread::sleep(4000)
    // Foreach-Switch-is-ON
    gV.allMembers.filter( s | s.state == ON).forEach[i|
    // switching OFF
    sendCommand(i, OFF)
        ]
  end

Paper UI Things, Velux products, Velux programs, Log fil OH
I am limited to one foto in a post ;-(

I hope you can do something with this information.


(David Lagae) #161


(David Lagae) #162

Is it possible to detect the status of a windows? (open, closed, 50%,…)
Or can we track wat was the latest command, like open window 100%

Thanks


(Georges Toth) #163

Hi klf200developer,

Those are quite awesome news !
Thanks for sharing, looking forward to playing with it :smiley:
From what I have read in the API, this will be real fun and expose a lot of things we have been looking for.

So my KLF200 is not useless anymore :smiley:

Will you be exposing the config interface via ethernet in the future again ?