New binding Resol VBUS

I am quite new to openhab 2 and have a “virgin” setup. Now I’d like to give the resol binding a try, as I have two Resol DeltaSol® MX in my system, but from this thread I don’t really understand what I have to do to install and configure it. Can you give me a further pointer?

(I have some background in Linux and Java, but am a newbie in terms of OH2 - and 1.)

@ramack
Hi, I am also very new in this and trying to get to grips with Openhab …
To apply the the binding you just need to copy it to the openhab share addons directory and it should pull it in.

I have a different issue with the Resol binding listed further up in the trail (org.openhab.binding.resol_2.0.0.201708241721.jar).
It looks like my controller BX Plus is not referenced in the resolhandler.java as mentioned by @Howdy
I have been trying to get my head around Eclipse, editing and re-compiling to include my controller but failing miserably (although IT background i have no idea about programming). I tried to get the Eclipse environment setup but I am getting lost in trying to add that Resol binding and exporting it as a JAR file.
Would somebody be so kind and help me getting through the steps or, as a Christmas present, do it for me :smiley: (just the first 4 sensors and relays would do)

This is what I am seeing in the log files for the controller (interestingly the last line “lastupdate” is working)

    2017-12-21 01:29:40.571 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_000_2_0, Name: Temperatur Sensor 1, Raw: 10.3, Text: 10.3 °C

2017-12-21 01:29:40.574 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_000_2_0 with name Temperatur Sensor 1 and value 10.3 °C

2017-12-21 01:29:40.576 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_002_2_0, Name: Temperatur Sensor 2, Raw: 18.0, Text: 18.0 °C

2017-12-21 01:29:40.578 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_002_2_0 with name Temperatur Sensor 2 and value 18.0 °C

2017-12-21 01:29:40.580 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_004_2_0, Name: Temperatur Sensor 3, Raw: 47.300000000000004, Text: 47.3 °C

2017-12-21 01:29:40.581 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_004_2_0 with name Temperatur Sensor 3 and value 47.3 °C

2017-12-21 01:29:40.584 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_006_2_0, Name: Temperatur Sensor 4, Raw: 888.8000000000001, Text: 888.8 °C

2017-12-21 01:29:40.585 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_006_2_0 with name Temperatur Sensor 4 and value 888.8 °C
2017-12-21 01:29:40.571 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_000_2_0, Name: Temperatur Sensor 1, Raw: 10.3, Text: 10.3 °C

2017-12-21 01:29:40.574 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_000_2_0 with name Temperatur Sensor 1 and value 10.3 °C

2017-12-21 01:29:40.576 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_002_2_0, Name: Temperatur Sensor 2, Raw: 18.0, Text: 18.0 °C

2017-12-21 01:29:40.578 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_002_2_0 with name Temperatur Sensor 2 and value 18.0 °C

2017-12-21 01:29:40.580 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_004_2_0, Name: Temperatur Sensor 3, Raw: 47.300000000000004, Text: 47.3 °C

2017-12-21 01:29:40.581 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_004_2_0 with name Temperatur Sensor 3 and value 47.3 °C

2017-12-21 01:29:40.584 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_006_2_0, Name: Temperatur Sensor 4, Raw: 888.8000000000001, Text: 888.8 °C

2017-12-21 01:29:40.585 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_006_2_0 with name Temperatur Sensor 4 and value 888.8 °C


2017-12-21 01:29:40.642 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_040_1_0, Name: Relais 1, Raw: 0.0, Text: 0%

2017-12-21 01:29:40.644 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_040_1_0 with name Relais 1 and value 0%

2017-12-21 01:29:40.646 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_041_1_0, Name: Relais 2, Raw: 0.0, Text: 0%

2017-12-21 01:29:40.648 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_041_1_0 with name Relais 2 and value 0%

2017-12-21 01:29:40.650 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_042_1_0, Name: Relais 3, Raw: 0.0, Text: 0%

2017-12-21 01:29:40.651 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_042_1_0 with name Relais 3 and value 0%

2017-12-21 01:29:40.653 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_043_1_0, Name: Relais 4, Raw: 0.0, Text: 0%

2017-12-21 01:29:40.655 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_043_1_0 with name Relais 4 and value 0%

2017-12-21 01:29:40.657 [INFO ] [nding.resol.internal.IPBridgeHandler] - Id: 00_0010_7112_10_0100_044_1_0, Name: Relais 5, Raw: 0.0, Text: 0%

2017-12-21 01:29:40.658 [WARN ] [b.binding.resol.handler.resolHandler] - No channel available for ID 00_0010_7112_10_0100_044_1_0 with name Relais 5 and value 0%

Another question, why is that binding not included as the other ones are?

Thanks in advance for any help or suggestions!

Thanks for the basic procedure. But where do I get the latest jar file from? Or where is the source code of the latest development? (I tried to search in this thread, but this strange forum SW here mask the Ctrl-F of the browser and I do not see how to search with the classic browser serach function.)

@ramack
Hi, i don’t think there is any later JAR file for this.
The source code should be at https://github.com/codeworkx/openhab2-addons/tree/75fac8013d01c17ffb4118d5aca65cd49393a460 unless I am mistaken.
Let me know if you manage to modify it to your needs and I might be able to follow your steps to do the same for mine.

Thanks

Hi,

just a small status update: I have it up and running, but as my controller is not supported I cannot configure anything. The resol-vbus-java library used by the binding was recently updated to support the new VSF (VBus Specification File) mechanism, with this I hope it is possible to support all controllers out of the box and use proper localization - at least English, French and German should be possible. I will look into this in the next days.
@Laurens do you think it is feasible to go for a generic implementation? - The way you added support for a new controller seems much effort to cover “all” Resol controller, isn’t it?

Regards,
Rapha

so here is the jar and here the source code: https://github.com/ramack/openhab2-addons/tree/master/addons/binding/org.openhab.binding.resol

It is far from being production ready (e. g. not all data types are correctly supported etc.), but I would be happy if someone with a different resol controller than I have (DeltaSol MX) and maybe with a differen VBus-LAN bridge aka a DL2/3 could give it a short try.

I re-did the binding from scratch and did not reuse anything from your work (@Laurens, @Mitch77) beside the idea to use the resol-vbus-java lib from Daniel Wippermann, who btw did the hard job for this binding here.

I am looking forward to any kind of feedback, also because this is my first work with OpenHAB and my Java know-how is already a bit aged…

1 Like

Hi Raphael,
that’s awesome. I downloaded the JAR and put it into the addons folder. It was recognized by OH and is shown in the Paper UI bindings overview, but I can’t configure anything through the Paper UI. Is that part still “work in progress”?
Can you provide some examples how to configure the binding, things, items?
Thanks,
Michael

It is work in progress (See Todo)[https://github.com/ramack/openhab2-addons/blob/master/addons/binding/org.openhab.binding.resol/README.md] but discovery should work.

Please add a thing and select the resol binding. Then it should detect a new thing for the Vbus-LAN bridge. Choose that one in the list of things and configure the password for the live data stream of the bridge. Then it should fill your inbox with devices transmitting to the vbus.

If it does not work it would be interesting to understand the resol devices you have, together with a log extract with trace level.

Thanks. I got one step further.

I added a thing:

Thing resol:vbuslan:bridge [ ipAddress="myIP",port=7053, adapterSerial="myserial",password="mypw" ]

and now got the following output in the log (which seem to be repeated in a infinite loop)

2018-01-01 23:54:58.013 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'resol-vbus.things'
2018-01-01 23:55:03.633 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'resol:device:bridge:Vitosolic_200-Regler' to inbox.
2018-01-01 23:55:18.191 [INFO ] [clipse.smarthome.model.script.System] - System started
2018-01-01 23:55:20.229 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Irradiation in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:20.350 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Impulse input 1 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:20.482 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Impulse input 2 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:20.672 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Sensor line break mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:20.868 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Sensor short-circuit mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:21.039 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Sensor usage mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:21.263 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 1 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:21.478 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 2 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:21.671 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 3 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:21.906 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 4 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:22.112 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 5 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:22.378 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 6 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:22.633 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 7 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:22.893 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 8 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:23.259 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 9 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:23.474 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Relay usage mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:23.728 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Error mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:23.916 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Warning mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.073 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Controller version in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.239 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type WeekTime of field System time in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.408 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Irradiation in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.413 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Impulse input 1 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.418 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Impulse input 2 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.424 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Sensor line break mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.429 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Sensor short-circuit mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.435 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Sensor usage mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.442 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 1 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.448 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 2 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.455 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 3 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.461 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 4 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.468 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 5 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.474 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 6 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.483 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 7 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.489 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 8 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.502 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Pump speed relay 9 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.508 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Relay usage mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.514 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Error mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.519 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Warning mask in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.525 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Controller version in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.531 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type WeekTime of field System time in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.560 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Irradiation in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.565 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Impulse input 1 in packet from Vitosolic 200 [Regler] not (yet) supported
2018-01-01 23:55:24.570 [WARN ] [ing.resol.handler.ResolBridgeHandler] - data type Number of field Impulse input 2 in packet from Vitosolic 200 [Regler] not (yet) supported

The device is a Viessmann branded RESOL device

Any idea whats next?
Thanks,
Michael

But this looks perfect:
2018-01-01 23:55:03.633 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing ‘resol:device:bridge:Vitosolic_200-Regler’ to inbox.

You should be able to just add this device from your inbox. The warning that look like an infinite loop are actually data from your device. THIS is Wip as the data types are not yet fully interpreted for those fields.

Regards,
Rapha

Thank you for your Binding. My DeltaSol MX is now available in OpenHAB.:grinning:

Great to read that it works. But please be aware, that I would not consider the binding production ready and on update it might be necessary to reconfigure it…

OK. Thanks. I’m getting some values out of it, so the warnings are not quite right.
Can I somehow turn those off? The log is overflowing with all those messages (36 per minute)and relevant ones from other bindings cannot be seen.

Also the thing is changing it’s status quite often:

19:52:26.093 [hingStatusInfoChangedEvent] - 'resol:vbuslan:bridge' changed from OFFLINE to ONLINE
2018-01-02 19:52:26.097 [hingStatusInfoChangedEvent] - 'resol:device:bridge:Vitosolic_200-Regler' changed from OFFLINE to ONLINE
2018-01-02 19:52:26.112 [hingStatusInfoChangedEvent] - 'resol:device:bridge:Vitosolic_200-Regler' changed from OFFLINE to OFFLINE (BRIDGE_OFFLINE)
2018-01-02 19:52:26.118 [hingStatusInfoChangedEvent] - 'resol:vbuslan:bridge' changed from ONLINE to OFFLINE
2018-01-02 19:52:26.141 [hingStatusInfoChangedEvent] - 'resol:device:bridge:Vitosolic_200-Regler' changed from ONLINE to OFFLINE
2018-01-02 19:52:26.144 [hingStatusInfoChangedEvent] - 'resol:device:bridge:Vitosolic_200-Regler' changed from OFFLINE (BRIDGE_OFFLINE) to OFFLINE

Any idea?
Thanks,
Michael

Yes, the warnings are right and wrong. The Data for the Data field is not handeled correctly and (for most of them) just written to the openhab channels as Strings without having a reasonable channeltype - I will look into this as soon as possible, but my vacation is over and also the Kids back from holidays so real live occupies again more of my time. Clearly no warnings should be there dringend normal use.

The bringe going offline seems to me to be an effect of several TCP connections to the same VBUS LAN interface. As the resol Devices seems to allow only one active connection one is cut. Do you have another device trying to read live data? Or - what happens regularly in my setup - that two openHAB Instances with the binding fight for the Single TCP connection.

Ahh. That sounds familiar. Somehow two “Controller-Things” where created and that could cause the behavior.
Thanks. Looking forward to your new version,
Michael

Not really controller but bridge things. Above you wrote that you added the bridge thing manually, right? If then one is discovered automatically you might have two. This is also on the Toto list…

Thanks for the binding,
my ResolDL2 has recognized as bridge an the connected DeltaSol M with the WMZ1 und WMZ2 are found.
Additional on the Vbus is a HKM1 what also recognized and the values from sensors are here.

In the log I can see also a lot of the device not “yet” supported device messages.
But all revived values are valid.

As written above, the warning is due to not using proper datatypes. Anyhow, thanks for testing and reporting successful connection.

@ramack
I have added your binding and my DeltaSol_BX_Plus controller was discovered and I was able to add Temperature_sensor_1 and Temperature_sensor_2 and it displays the temperature correctly but Temperature_sensor_3 I can’t link as there is no matching item in the list, in the logs it doesn’t mention it either.
Would it be possible to look into that.

Thanks for your work and the progress so far!

@juk do you use the “simple mode” for item linkage? Normally there should be not difference at all between the temperature sensors. If needed I can check with the resol guys who are the authors of the VSF - which is used for the data parsing. Can you try again and send a screenshot of the problem?