Ebus binding

Many thanks
I will tray for few days:)

Hi again.
Could you tell me how I can make the config file for vrc 430 ?
You mentioned that I have to use (https://github.com/john30/ebusd-configuration/blob/master/ebusd-1.x.x/vaillant_de/430.csv) I quess that most important is sections are
“command”: " ",is same for evry section ?
“data”: “”, ???
“dst”: " " is same for evry section ?
Where I can find corresponding section in 430.csv ???
thank you in advance

@Tomek,
You can find some info here:

But I’ve already prepared a vrc430 json config a few posts earlier. The most important ones should be in there, and if you compare that to the vrc430.csv file it should be easy to add more. for the special datatypes you need to look at the _templates.csv of john30 (for example: datatype tempsensor is data2c at pos12 and a status byte at pos14).

Attached another update for the bai and vrc470 json files (added VF1 temperature for vrc470, added amount of starts for bai and relocated D.040 and D.041)

vaillant-bai00-configuration.json (6.4 KB)vaillant-vrc470-configuration.json (9.7 KB)

1 Like

OK
Many thanks

Hello again
So my openhab.cfg should look like this

TCP Hostname and Port

ebus:hostname=xxx.xxx.xxx.xxx (e.g 192.168.1.20)
ebus:port=5000
ebus:parserUrl=/opt/openhab/configurations/vaillant-vrc430-configuration.json

Is it correct
Regards

Hello @Tomek,
I think you’re correct for the hostname and port. I believe you need to specify the location for the custom parser differently.
This is my config:

ebus:serialPort=/dev/ttyeBus
ebus:parserUrl=platform:/base/../configurations/ebus-config.json
ebus:parsers=custom

@csowada
I seem to havee an issue with one off my items and I can’t find the problem. It used to work, but after all the changes to the configs, it doesn’t anymore. I see that the value is received in thelog, but the item isn’t updated. Any idea what this could be?

config

{
    "comment":  "<Boiler> Flow temperature D.040 (°C)",
    "device":   "Vaillant BAI000",
    "id":       "temp_flow",
    "class":    "boiler",
    "command":  "B5 09",
    "data":     "0D 18 00",
    "dst":      "08",

    "values": {
        "temp_flow": {"type": "data2c","pos": 12,"label": "Flow temperature (°C)","min": 0,"max": 100},
        "status": 	 {"type": "uchar", "label": "Status flow temperature",
             "mapping": {"0":"Ok", "85":"Circuit", "170":"Cutoff"}}
    }
},

.items file

Number	TempCVVertrek	"Temperatuur ketel vertrek [%.1f °C]"	(CV,CVChart,Persistence)	{ ebus="id:boiler.temp_flow.temp_flow, cmd:boiler.temp_flow, dst:08, refresh:60" }

Log

   2015-10-27 19:18:27.711 [DEBUG] [.ebus.internal.parser.Analyses] - FF 08 B5 09 03 0D 18 00 BC 00 03 62 01 00 E2 00 AA
    2015-10-27 19:18:27.712 [DEBUG] [.ebus.internal.parser.Analyses] -   >>> <Boiler> Flow temperature D.040 (°C)
    2015-10-27 19:18:27.714 [TRACE] [.ebus.internal.parser.Analyses] -     >>> boiler.temp_flow.temp_flow         22.125    Flow temperature (°C)

Hello @nikoraes,

for me it looks good. The parser parses your ebus telegram correct. I can see that the encoding of the json file is not correct, you should set it to utf-8. You can see it on the degree sign. But I also worked with wrong encoding and it mades no difference.

Maybe the lines above the item configuration are not correct. You can open your files with the openhab designer. It can help to find issues.

Currently, I can help but only limited, because we got a newborn baby. So I need more time for our family.

Hello nikorase
As I understood this registry (ebus:parserUrl=platform:/base/…/configurations/ebus-config.json) in openhab.cfg will load configuration form bus-config.json localized in ${openhab_home}/configurations/ directory ?
So if I want to use specific configuration for vrc430 I have to change valiant-vrc430-configuration.json attached in your post to ebus-config.json ?
Is it correct ?
Regards

Hello @Tomek,
you are right with the path. But you can change the filename within the url to whatever you want, like “valiant-vrc430-configuration.json”. So you can use the file directly without renaming the file. But you can only use one custom parser file!

I personally use a self soldered cuircuit via serial-usb connection. But for development I use socat on my Odroid U3 computer to passtru the serial connection to my development computer. So I can check both connection types.

@nikoraes Thank you for your Vaillant support. I will merge you files to my master next days.

Hello
Many thanks for yours explanations.
If I use ebus-config.json ( I rename vaillant-vrc430-configuration.json for clear) What should I write in “ebus:parsers” section? custom or vrc430 ?

Use custom for the custom file you specified (you can only have 1). You can add others that are already included in the binding (see readme).

For example:
ebus:parserUrl=platform:/base/…/configurations/ebus-config.json
ebus:parsers=custom,vaillant-bai00

Hello,
I tested the new vaillant configurations too, but now I have only unknown telegrams.

I have a VRC470 installed but only poor B5 09 telegrams with other data.
I miss the B5 10 and B5 11 telegrams, are these also deprecated?

The config for those has just been renamed, but it’s still there.

I believe it should work with _vaillant-configuration as parser for the latest release.

https://github.com/csowada/openhab/blob/ebus-update-pr1/bundles/binding/org.openhab.binding.ebus/src/main/resources/_vaillant-configuration.json

@nikoraes is right, this is the old file.

The quality of this files are currently not good enought to declare it as stable for a release. So I marked this files as unstable/testing. I have no idea what kind of vaillant commands is in this file, BAI00 or VRCxxx commands?

Hi Folks,

these changes should now be transferred to the official openhab repository.
Can you give me feedback as to whether these changes are working properly?

That would be wonderful.

Hello All
Finally I connected ebus -> tcp koppler to may vrc 430
My open openhab.cfg looks like this

ebus:hostname=vaillant
ebus:port=5000

ebus:parserUrl=${openhab_home}/configurations/ebus-config.json

ebus:parsers=vaillant,custom

and my simple item looks like this
Number e_Temp_Zew “Temp. outdoor [%.1f °C]” (Vaillant) { ebus=“id:controller.temp_outside, src:03”}

but I only get
2015-12-12 17:48:04.922 [WARN ] [.ebus.internal.utils.EBusUtils] - Unexpect ack value in EBus telegram, skip data!

Any idea what i doing wrong ???

Which version are you using?

With the new version the folowing should work for a polling item (B5 09)

Number e_Temp_Zew “Temp outside [%.1f °C]” { ebus=“id:controller.temp_outside.temp_outside, cmd:controller.temp_outside, dst:15, refresh:300” }

But you need this in one of your configs:

    {
"comment":  "<Controller> Outside temperature (°C)",
"device":   "Vaillant VRC 470",
"id":       "temp_outside",
"class":    "controller",
"command":  "B5 09",
"data":     "0D 62 00",
"dst":      "15",

"values": {
    "temp_outside": {"type": "data2c", "pos": 12, "label": "Outside temperature"},
    "status":       {"type": "uchar", "pos": 14, "label": "Outside temperature status",
        "mapping":  {"0":"Ok", "85":"Circuit", "170":"Cutoff"}}
}

},

Alternatively, you can use the b5 11 commands

Number e_Temp_Zew “Temp outside [%.1f °C]” { ebus=“id:boiler_common.boiler_data.temp_outside” }

With this config (this was also available in the old version. I haven’t finished cleaning this up but the following should work)

{
	"comment":	"<Boiler> Boiler data",
	"id":      	"boiler_data",
	"class":	"boiler_common",
	"command":	"B5 11",
	"data":		"01",
	"dst":		"08",
	
	"values": {
		"temp_flow":	{"type": "data1c", "pos": 10, "label": "Flow temperature"},
		"temp_return":	{"type": "data1c", "pos": 11, "label": "Return temperature"},
		"temp_outside": {"type": "data2b", "pos": 12, "label": "Outside temperature"}
	}
},

@csowada Where can i find the source of what you want to merge? I’ll check with my config again.
There used to be an error in my config for supply temp and the boiler modulation is actually the pump modulation (description is wrong in ebusd). So this should be checked.

I use 1.8 snapshot version binding
I use your file for vrc 430 and I rename it to ebus-config.json
I 'm afraid that the problem is in the ebus -> tcp coupler.
I use the trimmer to achieve good data. The led is blinking but in openhab.log i get now
[ERROR] [.b.e.i.c.AbstractEBusConnector] - eBus telegram buffer overflow - not enough sync bytes received! Try to adjust eBus adapter
I have no idea what can i do…

@nikoraes You can find all information here and the source here. It would be great if you could leave feedback at his topic.

@Tomek Could you try to connect with a terminal program like Realterm etc. to adjust your tcp coupler. Its important to see many 0xAA bytes. The led is not accurate enought. You also could increase the logging for the binding.