New binding Resol VBUS

Hi Laurens,

you mean I only have to add a case for each device and sensor in the resolhandler.java?

case "00_0010__10_0100_000_2_0"
Where do I get the strings for the cases Should I have a look in the old jar Binding from OH1?

May I have to compile it with Eclipse btw. with the openHAB IDE as described in the Docs?

Hi @Laurens,

Is it possible to change the logging level? Itā€™s logging every second & making my openhab.log huge, which makes troubleshooting other problems difficult.

Also, I canā€™t seem to get the pump speed to work, it shows the correct info in the logging:

 Name: Drehzahl Relais 1, Raw: 30.0, Text: 30% 

but in the log there is an error:

Exception while formatting value '30.0' of item Resol_Speed with format '%.1f %': {}
java.util.UnknownFormatConversionException: Conversion = '%'

Changing the item to a string type makes the log error go away, but the Item just has content of ā€œErrā€

Any ideas?

Regards,
Josh

As can be seen in other topics, you have to escape it:

%.1f %%

See for example: Beginner question - show dimmer percent in sitemap?

Hi @martinvw,

Thanks for that, was just using

Default item=Resol_Speed

didnā€™t realise I needed to specify a label, now working with

Text item=Resol_Speed label="HWS Pump Speed [%.1f %%]"

It still wonā€™t display on the Paper UI Control page, but I donā€™t ue that too much, so not a huge problem.

Then that label is most likely misconfigured inside the binding.

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