Ebus binding

@Tomek,

do you disabled the trace level? Please set it like below, I need the binary data from “org.openhab.binding.ebus.internal.parser.Analyses”

org.openhab.binding.ebus.internal.parser.Analyses =>> TRACE
org.openhab.binding.ebus.internal.parser.BruteForce =>> INFO

@csowada
OK my fault
I get data like this
2015-12-15 19:43:52 DEBUG o.o.b.e.internal.EBusBinding[:285]- eBus binding has been started.
2015-12-15 19:43:55 INFO o.o.b.e.internal.EBusBinding[:137]- Update eBus Binding configuration …
2015-12-15 19:43:55 DEBUG o.o.b.e.internal.EBusBinding[:176]- Load eBus Parser Configuration “common” …
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} FE 03 01 0E .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 05 03 08 01 .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 05 07 09 .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 07 00 09 .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 07 04 [0-9A-Z]{2} .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} FE 07 04 0A .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 07 FE [0-9A-Z]{2} .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 07 FF [0-9A-Z]{2} .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} 08 00 .*
2015-12-15 19:43:56 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:150]- Compile RegEx filter: [0-9A-Z]{2} FE FE 01 0A .*
2015-12-15 19:43:56 INFO o.o.b.e.internal.EBusBinding[:226]- Enable CSV writer for eBUS all,debug,unknown
2015-12-15 19:43:56 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:56 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:56 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:56 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:56 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 WARN o.o.b.e.i.utils.EBusUtils[:316]- Unexpect ACK value in eBUS telegram, skip data!
2015-12-15 19:43:57 TRACE o.o.b.e.i.utils.EBusUtils[:318]- -> DATA: 10 08 B5 10 09 00 00 35 5E FF FF 04 FF 00 72 01 01 9A 00 AA
2015-12-15 19:43:57 DEBUG o.o.b.e.i.c.AbstractEBusConnector[:271]- Received telegram was invalid, skip!
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:43:57 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received

2015-12-15 19:44:51 TRACE o.o.b.e.internal.EBusBinding[:362]- No valid parser result for raw telegram!

2015-12-15 19:45:22 WARN o.o.b.e.i.utils.EBusUtils[:316]- Unexpect ACK value in eBUS telegram, skip data!
2015-12-15 19:45:22 TRACE o.o.b.e.i.utils.EBusUtils[:318]- -> DATA: 10 08 B5 04 01 00 3D 0A 00 37 52 01 FF FF FF FF D0 01 40 00 AA
2015-12-15 19:45:22 DEBUG o.o.b.e.i.c.AbstractEBusConnector[:271]- Received telegram was invalid, skip!
2015-12-15 19:45:22 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:45:22 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:45:22 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:45:22 TRACE o.o.b.e.i.c.AbstractEBusConnector[:230]- Auto-SYN byte received
2015-12-15 19:45:22 WARN o.o.b.e.i.utils.EBusUtils[:316]- Unexpect ACK value in eBUS telegram, skip data!
2015-12-15 19:45:22 TRACE o.o.b.e.i.utils.EBusUtils[:318]- -> DATA: 10 08 B5 11 01 02 8A 05 03 3C 96 50 68 94 00 AA
2015-12-15 19:45:22 DEBUG o.o.b.e.i.c.AbstractEBusConnector[:271]- Received telegram was invalid, skip!

Regards
Tomek

Hello again

I changed openhab.cfg and now I get
2015-12-16 09:25:48 DEBUG o.o.b.e.i.c.EBusCommandProcessor[:89]- Binding changed for item e_Temp_Zew
2015-12-16 09:25:48 DEBUG o.o.b.e.internal.EBusBinding[:285]- eBus binding has been started.
2015-12-16 09:25:51 INFO o.o.b.e.internal.EBusBinding[:137]- Update eBus Binding configuration …
2015-12-16 09:25:51 DEBUG o.o.b.e.internal.EBusBinding[:171]- Load custom eBus Parser with url platform:/base/…/configurations/ebus-config.json
2015-12-16 09:25:52 WARN o.a.c.DefaultAnnotationProcessor[:178]- Unable to detect annotations. Application may fail to deploy.
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 80 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 00 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 62 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 42 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0E 42 00 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 44 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0E 44 00 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 86 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 2F 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0E 2F 00 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 30 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0E 30 00 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 27 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0E 27 00 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 3C 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0D 31 00 .*
2015-12-16 09:25:52 TRACE o.o.b.e.i.p.EBusConfigurationProvider[:174]- Compile RegEx filter: [0-9A-Z]{2} [0-9A-Z]{2} B5 09 [0-9A-Z]{2} 0E 31 00 00 .*

Is it OK ?

Thank you,

I will analyse your telegrams this evening, I could see that some telegram miss the first slave byte.

@csowada
Great news !!!
Outside temp works OK !!!::blush:
I trying to define several items
I put into my items definition HC1 operation status and DHW operation status.
It looks ok I get appropriate status but i have a little problem
Mayby it trivial but i cant get “auto” instead “2”
here is my site
Text item=e_HC1_Program label=“HC1 program [%s]”
and items definiton
Number e_HC1_Program "Heating program HC1 " { ebus=“id:heating.heating_circuit_program, cmd:heating.heating_circuit_program, dst:15, refresh:300” }

In openhab.log i get auto

That’s sound great. I released a new test version in another topic, maybe it helps with your issue.

Try the following in your sitemap.

Selection item=e_HC1_Program mappings=[2=Auto, 3=Day, 4=Low, 5=Summer, 0=Off]

@nikoraes
Great it works :smile:
I have one more question. If I want to change program for example from “Auto” to “Manual”
The item should looks like this :
Number e_HC1_Program "Heating program HC1 " { ebus=“id:set_heating.heating_circuit_program, cmd:set_heating.heating_circuit_program, dst:15, refresh:300, set:set_heating.heating_circuit_program.program” } ???
@csowada
many thanks for your help I will try new version :smile:
Regards
Tomek

Almost :slight_smile:

Below my configuration, you can copy the binding configuration.

Number CVHC1OpMode “Bedrijfsmodus” (gCV) { ebus=“id:heating.heating_circuit_program, cmd:heating.heating_circuit_program, dst:15, refresh:300, set:heating.set_heating_circuit_program.program” }

I posted all my items in the other topic, so you can try some of those. Maybe a few of those could be added to the readme.

Many thanks:)
I will try

Hello @nikoraes
I change items like you said
I try to change from 'auto" to “manual” but nothing happened :frowning:
my items and sitemaps looks like this

items
Number e_DHW_Program "DHW program " { ebus="id:dhw.dhw_circuit_program, cmd:dhw.dhw_circuit_program, dst:15, refresh:300,set:dhw.dhw_circuit_program.program " }

sitemaps
Selection item=e_HC1_Program mappings=[1=Manual, 2=Auto, 0=Off] label=“HC1 program [%s]”

Could you tell me what I did wrong ?

Regards
Tomek

This is what it should be.

Number e_DHW_Program "DHW program " { ebus="id:dhw.dhw_circuit_program, cmd:dhw.dhw_circuit_program, dst:15, refresh:300,set:dhw.set_dhw_circuit_program.program " }

However, you found an error in the vrc 430 configuration file. The id for the set command should be set_dhw_circuit_program.
{
“comment”: " Set DHW Operation mode",
“device”: “Vaillant VRC 430”,
“id”: “set_dhw_circuit_program”,
“class”: “dhw”,
“command”: “B5 09”,
“data”: “0E 42 00 00”,
“dst”: “15”,

    "values": {
        "program": {"type": "uchar", "pos": 9, "label": "DHW Operation mode",
            "mapping": {"0":"Off", "1":"Manual", "2":"Auto"}}
    }
},

Could you try the heating operation mode and see if that works?

Hello @nikoraes
I made changes in items i sitemaps files for HC1
Now I get
Items
Number e_HC1_Program “Heating program HC1[%s]” { ebus=“id:heating.heating_circuit_program, cmd:heating.heating_circuit_program, dst:15, refresh:300, set:heating.set_heating_circuit_program.program” }
sitemaps
Selection item=e_HC1_Program mappings=[1=Manual, 2=Auto, 0=Off] label=“HC1 program [%s]”

…And it works great:)

I away from home so I can’t confirm that it works
I let you know

Now I have access to my vaillant only by ssh :smile:
But I cant get heating curve info:(
I make changes in items and sotemaps but I get only char “-”
Number e_HC1_curve “HC1 Heating curve[%.1f]” {ebus=“id.heating.temp_hcurve, cmd:heating.temp_hcurve, dst=9 , refresh:300 set:heating.set_temp_hcurve.program”}
Setpoint item=e_HC1_curve label=“HC1 Heating curve[%.1f]” minValue=“0.2” maxValue=“4.0” step=“0.01”

It was my mistake
Heating curve works
I can’t check DHW operation program but I hope it is works too
Many thanks to csowada and nikoraes:)

Hello All
Update info about Heating curve.
It looks like it does not work
If I change the value Its returns to old value after few minutes ( I can only check info in openhab server)

My items file
Number e_HC1_curve “HC1 Heating curve[%.2f]” {ebus=“id:heating.temp_hcurve, cmd:heating.temp_hcurve, dst:15 , refresh:300, set:heating.set_temp_hcurve.program”}My sitemaps
Setpoint item=e_HC1_curve label=“HC1 Heating curve[%.2f]” minValue=0.01 maxValue=4.0 step=0.05

Hi Nikoraes, thanks for that, would you know how I could access the analog input? Set a voltage using a DtoA converter or something? Or could the Koppler emulate an eBus thermostat?

Many thanks
Hagrid.

(Edit - I was trying to respond to Nikoraes’ reply to me from 6 days ago, the message threading is not how I intended)

@Tomek Your item definition is wrong
It should be this (check the set definition):
Number e_HC1_curve “HC1 Heating curve[%.1f]” {ebus=“id:heating.temp_hcurve, cmd:heating.temp_hcurve, dst:15 , refresh:300, set:heating.set_temp_hcurve.temp_hcurve”}

In my case there is also only one decimal. So I would think a step of 0.1 would be better jn your sitemap.

@hagrid67 Of course you could try to emulate the ebus thermostat by sending the b5 10 commands. The ebus coupler is quite expensive, but even if it wouldn’t work you would be able to read some useful commands so it wouldn’t be a complete waste.
Please note that most of these commands still need to be included in a configuration file for this binding.

For the analog input you need to check the installation manual first. I have an analog input on pins 7,8,9 but I’m not sure if they all have them. I also couldn’t find which voltage is expected. To test, I would first try with a manual potentiometer.
To control the boiler you could then use a spi digital potentiometer for example (on arduino or directly on a rpi). I’ve done this for an extract fan and its doable, but a lot of work.

Buying a vrc470(f) would probably be a lot easier and more reliable…

@nikoraes
It’s seems to not works
After few minutes It always return to old value