Busch-Jaeger Free@Home

binding
busch-jaeger
Tags: #<Tag:0x00007fe05fcc7350> #<Tag:0x00007fe05fcc6d60>

(Lucurus) #1

Hi, I was wondering if anyone has any experience with the Busch-Jaeger free@home system and the implementation into OpenHAB?

From what I have seen, there is almost no support for it and since I have NO idea on how to implement it into OpenHAB, I was wondering if anyone could maybe implement it for me or help me with the implementation.

I would be glad to help as much as possible, but I, unfortunately, can’t write the binding myself since I don’t know how to. :slight_smile:

I found the following threads where some user found out, that it runs on an XMPP-Server which is maybe a starting point.

Thread 1

Thread 2

Raw XMPP dump

Busch-Jaeger promised some APIs a while ago, but they haven’t delivered anything yet, so I’m sceptical.


(Xlrx) #2

I managed to connect my blinds with the node.js project from Stefan Stadlberger (https://github.com/sstadlberger/home).

  • offers a WebSocket as well as a REST interface
  • converts these requests into xmpp messages
  • redirects them via xmpp to a free@home server

How to retrieve your xmpp usernames is described in issue 4 (https://github.com/sstadlberger/home/issues/4).

Running the code permanently using pm2 or forever is very convenient.


(Lucurus) #3

That sounds promising, thanks for the info! If you don’t mind me asking, how did you call the API from the OpenHAB Dashboard?


(Xlrx) #4

You can use the HTTP Binding.

I don’t have saved the code, as I switched to HASS. Here are some sample links for blinds/shutters in Stadlberger’s “home” project (replace with your actuator IDs and base URL):

"up_url": "http://127.0.0.1:8080/legacy?type=setshutter&actuator=ABB700C886AA&channel=3&command=up",
"down_url": "http://127.0.0.1:8080/legacy?type=setshutter&actuator=ABB700C886AA&channel=3&command=down",
"stop_url": "http://127.0.0.1:8080/legacy?type=setshutter&actuator=ABB700C886AA&channel=3&command=stop"

There is a newer REST API you may look up.

Note: you have to rewrite these urls according to the HTTP binding scheme:

http=">[<command>:<httpmethod>:<url>:<postcontent>]"

Edit: postcontent is not necessary here.

Good luck!


(Lucurus) #5

Thanks so much, I almost gave up with free@home!

Do you have any pointers with HASS as well? Because I haven’t started anything yet, so I can still switch to HASS if that is easier to implement.


(Kurt Schuller) #6

Implementation in Openhab is quite easy once the Stadlberger API is running.
If you need more instructions I can help with some examples.

Currently I have implemented rollershutters, thermostats (read temperature only), normal lights and dimming lights.
I am working on full control for thermostats and it seems also possible to add the switches, e.g. to see if a switch has been pressed (maybe interesting for scenes).


(Ruebox) #7

I have implemented a Busch & Jaeger Free@Home binding for my personal usage.
I currently supports

  • Free at home bridge
  • Raffstores / Blinds (stepwise/complete)
  • Scene activation

No discovery is implemented, but you can add things via PaperUI if you extracted the DeviceIds from BJ AccessPoint.

I would be happy to share the code if someone supports me in extending it for discovery and additional things.
As I do not have other devices available, it will be difficult for me to test further devices.

Based on the great work of Stadlberger, it should not be a big deal to integrate further thing types to the binding.

@Kurtus, @Lucurus, @xlrx: Would you put some efforts to enhance such a binding?


(Lucurus) #8

Wow, that is good news.

I’m down to help but unfortunately, I don’t know much about programming, so I could probably be more helpful with testing.

I currently have:

  • Lights (dimmable and normal)
    • With the corresponding switches (single and double channels)
  • Floor heating
    • Again with the corresponding switches (and thermostats included in the switches)
  • Blinds
  • Touch 7 panel (which can be controlled via the Stadlberger API as well)
  • Motion detectors

Just tell me what you need and I’d be glad to test it or provide you with further information!


(Lucurus) #9

@Kurtus thanks so much for the offer to help. I actually got it more or less running, but it’s really dirty, so I’m now looking forward to the possibility of creating a more presentable solution!

I think it would definitely be interesting to see if a switch is pressed so you could trigger different scenes depending on, for example, time of day.


(Kurt Schuller) #10

Sure, I am happy to help as far as I can.


(Kurt Schuller) #11

I think it is not that dirty. With the http binding, the item definitions are quite easy. For a dimmer and a shutter:

Dimmer dimmer1 “Dimmer 1” {http="<[http://ip:port/info/ABBxxxxxxxxx/ch0002/odp0001:1000:JSONPATH($)] >[ON:GET:http://ip:port/set/dimmer/ABBxxxxxxxxx/ch0002/on] >[OFF:GET:http://ip:port/set/dimmer/ABBxxxxxxxxx/ch0002/off] >[*:GET:http://ip:port/set/dimmer/ABBxxxxxxxxx/ch0002/set/%2$s]"}

Rollershutter rollo1 “Rollo 1” {http=">[UP:GET:http://ip:port/set/shutter/ABBxxxxxxxxx/ch0000/up] >[DOWN:GET:http://ip:port/set/shutter/ABBxxxxxxxxx/ch0000/down] >[STOP:GET:http://ip:port/set/shutter/ABBxxxxxxxxx/ch0000/stop]"}


(Lucurus) #12

Yeah, the concept is perfectly fine, it’s just, that the contraption I copy pasted together is quite horrible.


(Ruebox) #13

I think the main advantages of a native openhab2 binding would be that you could easily control the devices via PaperUI and Discovery could be implemented.

It would be a solution without file configuration, but with the proper openhab ui.

Unfortunately, I do not have the time to further extend the binding for a more convenient usage.


(Kurt Schuller) #14

No doubt, a native binding has many advantages.

Although personally, I prefer configuration with text file, because I have more control over that.
Still, a proper integration with all feautures is easier to handle also in the case of file configuration.


(Ruebox) #15

@Kurtus If you are interested to further push such native free@home binding, I could upload my code to github.


(Michael) #16

@ruebox Could you please upload your code to github?
I would like to continue the development after installing the free@home system.


(Ruebox) #17

Hi,

great if you push the further development of f@h for openhab. I am happy to support you.
I will clean up the code a little bit and then publish it via github.

Best,
Rüdiger


(Andreas) #18

are there any news for an openhab binding for free@home?
Thanks


(Christian) #19

Hi,
installed BJ Free@Home 2 years ago in our house. As I am not satisfied with the BJ software and Android app I am looking forward to use openhab. Recently bought a Raspberry Pi an installed openhab.
I can support testing bindings ect… I also have basic programming skills…and interested to help here as well… looking forward to test the binding from @ruebox.

Best regards


(Ruebox) #20

Hi there,

I am just about to prepare my code to publish it on github.

Hopefully I make it this weekend.

Best Rüdiger