Ok, with your help now I think I get it, so I made a custom version of VRC json file, and the additionnal definition are included.
Outside temperature broadcast messages are properly interpretated:
2017-11-07 17:29:42.840 [INFO ] [nding.ebus.handler.EBusBridgeHandler] - Received telegram from address 10 to FE with command controller.broadcast.temp_outside
2017-11-07 17:29:42.844 [INFO ] [hab.binding.ebus.handler.EBusHandler] - Handle received command by thing Vaillant Custom VRC430/470(f) with id ebus:custom:c5c0e30e ...
2017-11-07 17:29:42.848 [DEBUG] [hab.binding.ebus.handler.EBusHandler] - Key temp_outside with value 7
2017-11-07 17:29:42.866 [ItemStateChangedEvent ] - ebus_custom_c5c0e30e_custom_controller_broadcast_temp_outside_temp_outside changed from NULL to 7
Datetime is working too:
2017-11-07 17:30:22.441 [INFO ] [nding.ebus.handler.EBusBridgeHandler] - Received telegram from address 10 to FE with command controller.broadcast.datetime
2017-11-07 17:30:22.444 [INFO ] [hab.binding.ebus.handler.EBusHandler] - Handle received command by thing Vaillant Custom VRC430/470(f) with id ebus:custom:c5c0e30e ...
2017-11-07 17:30:22.448 [DEBUG] [hab.binding.ebus.handler.EBusHandler] - Key datetime with value 07.11.2017 17:30:25
2017-11-07 17:30:22.473 [ItemStateChangedEvent ] - ebus_custom_c5c0e30e_custom_controller_broadcast_datetime_datetime changed from NULL to 2017-11-07T17:30:25.440+0100
The full json file is now:
{
"id": "custom",
"vendor": "Vaillant",
"label": "Vaillant Custom VRC430/470(f)",
"description": "Vaillant Custom VRC430/470(f)",
"authors": [
"Christian Sowada, opensource@cs-dev.de",
"Christophe P @ openhab community"
],
"identification": [
"34 33 30 30 30",
"34 37 30 30 30",
"46 34 37 30 30",
"46 34 33 30 30"
],
"commands":
[
{
"label": "Broadcast Outside temperature",
"id": "controller.broadcast.temp_outside",
"command": "B5 16",
"broadcast": {
"master": [
{"type": "static", "default": "01"},
{"name":"temp_outside", "type": "data2b", "label": "Outside Temperature", "min": -50, "max": 50, "format":"%.1f°C"}
]
}
},
{
"label": "Broadcast DateTime",
"id": "controller.broadcast.datetime",
"command": "B5 16",
"broadcast": {
"master": [
{"type": "static", "default": "00"},
{"name": "datetime", "type":"datetime"}
]
}
},
{
"label": "Raw room temperature",
"id": "controller.temp_room",
"command": "B5 09",
"get": {
"master": [
{"type": "static", "default": "0D 00 00"}
],
"slave": [
{"name": "temp_room", "type": "data2c", "label": "Room temperature", "min": -30, "max": 60, "format":"%.1f°C"},
{"name": "status", "type": "uchar", "label": "Room temperature status",
"mapping": {"0":"Ok", "85":"Circuit", "170":"Cutoff"}}
]
}
},
{
"label": "Global system off",
"id": "heating.status_global_system_off",
"command": "B5 09",
"get": {
"master": [
{"type": "static", "default": "0D 01 00"}
],
"slave": [
{"name": "status_global_system_off", "type": "uchar", "label": "Activation of operation mode system off", "min": 0, "max": 1, "format":"%d",
"mapping": {"0":"Off", "1":"On"}}
]
}
},
{
"label": "Holiday Setpoint",
"id": "dhw.temp_d_holiday",
"command": "B5 09",
"template": [
{"name": "temp_d_holiday", "type": "data2c", "label": "Holiday setpoint", "format":"%.1f°C"}
],
"get": {
"master": [
{"type": "static", "default": "0D 22 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 22 00"},
{"type": "template-block"}
]
}
},
{
"label": "HC1 Day Setpoint",
"id": "heating.temp_d_day",
"command": "B5 09",
"template": [
{"name": "temp_d_day", "type": "data1c", "label": "HC1 Day setpoint", "min": 0, "max": 100, "format":"%.1f°C"}
],
"get": {
"master": [
{"type": "static", "default": "0D 27 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 27 00"},
{"type": "template-block"}
]
}
},
{
"label": "HC1 Operation mode",
"id": "heating.program_heating_circuit",
"command": "B5 09",
"template": [
{"name": "program", "type": "uchar", "label": "HC1 Operation mode", "format":"%d",
"mapping": {"0":"Off", "1":"Manual", "2":"Auto", "3":"Day", "4":"Night", "5":"Summer"}}
],
"get": {
"master": [
{"type": "static", "default": "0D 2F 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 2F 00"},
{"type": "template-block"}
]
}
},
{
"label": "HC1 Night Setpoint",
"id": "heating.temp_d_night",
"command": "B5 09",
"template": [
{"name": "temp_d_night", "type": "data1c", "label": "HC1 Night setpoint", "min": 0, "max": 100, "format":"%.1f°C"}
],
"get": {
"master": [
{"type": "static", "default": "0D 30 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 30 00"},
{"type": "template-block"}
]
}
},
{
"label": "HC1 Heating curve",
"id": "heating.temp_hcurve",
"command": "B5 09",
"template": [
{"name": "temp_hcurve", "type": "uint", "label": "HC1 Heating curve", "factor": 0.01, "format":"%.1f"}
],
"get": {
"master": [
{"type": "static", "default": "0D 31 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 31 00"},
{"type": "template-block"}
]
}
},
{
"label": "HC1 Manual Setpoint",
"id": "heating.temp_d_man",
"command": "B5 09",
"template": [
{"name": "temp_d_man", "type": "data1c", "label": "HC1 Day setpoint", "min": 0, "max": 100, "format":"%.1f°C"}
],
"get": {
"master": [
{"type": "static", "default": "0D 32 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 32 00"},
{"type": "template-block"}
]
}
},
{
"label": "HC1 Manual override setpoint",
"id": "heating.temp_d_room_override",
"command": "B5 09",
"get": {
"master": [
{"type": "static", "default": "0D 3C 00"}
],
"slave": [
{"name": "temp_d_room_override", "type": "data1c", "label": "HC1 Manual override setpoint", "min": 0, "max": 100, "format":"%.1f°C"}
]
}
},
{
"label": "DHW Operation mode",
"id": "dhw.program_dhw_circuit",
"command": "B5 09",
"template": [
{"name": "program", "type": "uchar", "label": "DHW Operation mode", "min": 0, "max": 2, "format":"%d",
"mapping": {"0":"Off", "1":"Manual", "2":"Auto"}}
],
"get": {
"master": [
{"type": "static", "default": "0D 42 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 42 00"},
{"type": "template-block"}
]
}
},
{
"label": "Domestic Hot Water Setpoint",
"id": "dhw.temp_d_dhw",
"command": "B5 09",
"template": [
{"name": "temp_d_dhw", "type": "data1c", "label": "DHW setpoint", "format":"%.1f°C"}
],
"get": {
"master": [
{"type": "static", "default": "0D 44 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 44 00"},
{"type": "template-block"}
]
}
},
{
"label": "Set HC1 Special operation mode",
"id": "heating.program_heating_circuit_special",
"command": "B5 09",
"template": [
{"name": "program", "type": "uchar", "label": "HC1 Operation mode", "format":"%d",
"mapping": {"0":"Nothing", "1":"Party", "2":"OneDayHome", "3":"OneDayNotHome", "4":"Holiday", "5":"Home", "6":"QuickVeto", "7":"OneTimeVentilation", "8":"WhisperMode", "9":"LoadDHW"}}
],
"get": {
"master": [
{"type": "static", "default": "0D 5D 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 5D 00"},
{"type": "template-block"}
]
}
},
{
"label": "Controller time",
"id": "controller.time",
"command": "B5 09",
"template": [
{"name": "time", "type": "time", "variant": "hex_short", "label": "Controller time"}
],
"get": {
"master": [
{"type": "static", "default": "0D 60 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 60 00"},
{"type": "template-block"}
]
}
},
{
"label": "Controller date",
"id": "controller.date",
"command": "B5 09",
"template": [
{"name": "date", "type": "date", "variant": "hex_short", "label": "Controller date"}
],
"get": {
"master": [
{"type": "static", "default": "0D 60 00"}
],
"slave": [
{"type": "template-block"}
]
},
"set": {
"master": [
{"type": "static", "default": "0E 60 00"},
{"type": "template-block"}
]
}
},
{
"label": "Outside temperature",
"id": "controller.temp_outside",
"command": "B5 09",
"get": {
"master": [
{"type": "static", "default": "0D 62 00"}
],
"slave": [
{"name": "temp_outside", "type": "data2c", "label": "Outside temperature", "min": -60, "max": 80, "format":"%.1f°C"},
{"name": "status", "type": "uchar", "label": "Outside temperature status",
"mapping": {"0":"Ok", "85":"Circuit", "170":"Cutoff"}}
]
}
},
{
"label": "Displayed room temperature",
"id": "controller.temp_room_disp",
"command": "B5 09",
"get": {
"master": [
{"type": "static", "default": "0D 80 00"}
],
"slave": [
{"name": "temp_room_disp", "type": "data2c", "label": "Room temperature", "min": -30, "max": 60, "format":"%.1f°C"}
]
}
},
{
"label": "Domestic Hot Water actual desired temperature",
"id": "controller.temp_d_actual_dhw",
"command": "B5 09",
"get": {
"master": [
{"type": "static", "default": "0D 86 00"}
],
"slave": [
{"name": "temp_d_actual_dhw", "type": "data1c", "label": "DHW actual desired temperature", "min": 0, "max": 100, "format":"%.1f°C"}
]
}
}
]
}
Next step: get the B5 10 and B5 11 messages !