I have a vaillant gas heating connected to an ebus adapter. The corresponding ebusd reports the heating values to a mqtt broker using several topics starting with “ebusd/”.
The ebusd is configured using the following parameters:
I already use the connection to the mqtt broker for several things in my openhab 5.1.0, this works fine.
Now I want to integrate the vaillant heating into openhab using the Home Assistant Binding. Can anybody help how I have to setup the Home Assistant Device?
You don’t. HomeAssistant Things are automaticalyl discovered. Assuming you have the HomeAssistant add-on installed, and the MQTT topics and messages being published follow the HomeAssistant standard, there should already be a Thing discovered in your inbox. You just need to go to the inbox and accept it.
You’re right, thank you. I got 4 things in my inbox. But:
I created things for them but they did not disappear in the inbox and the state of the created things is “UNKNOWN”.
Do you know why?
You mean the ID? OK, that explains why the Things are still in the inbox. I wish it were smarter about this but it uses the ID to determine if the Thing has been created or not. If you changed the ID that means the inbox still thinks the one in the inbox is a new Thing. You can select them and ignore them.
But this should not break the Things that were created.
Do you see any errors in the logs?
Do the Things remain UNKNOWN if you refresh the page?
I found the following log entries for home assistant:
openhab.log:2026-01-05 21:06:28.467 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing ‘homeassistant:device:mosquitto-localhost:ebusd’ to inbox.
openhab.log:2026-01-05 21:06:54.817 [WARN ] [nal.discovery.HomeAssistantDiscovery] - HomeAssistant discover error: invalid configuration of thing ebusd_430_PumpEnergySaveCalculatedTimeMonitor_value component sensor: Failed to process discovery config for sensor: MultipleInvalid: The unit of measurement min is not valid together with device class energy
openhab.log:2026-01-05 21:07:04.998 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing ‘homeassistant:device:mosquitto-localhost:ebusd_5F430’ to inbox.
openhab.log:2026-01-05 21:07:05.005 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing ‘homeassistant:device:mosquitto-localhost:ebusd_5Fbai’ to inbox.
openhab.log:2026-01-05 21:07:14.804 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing ‘homeassistant:device:mosquitto-localhost:ebusd_5FBroadcast’ to inbox.
openhab.log:2026-01-05 21:08:27.330 [WARN ] [nal.discovery.HomeAssistantDiscovery] - HomeAssistant discover error: invalid configuration of thing ebusd_430_PumpEnergySaveCalculatedTimeMonitor_value component sensor: Failed to process discovery config for sensor: MultipleInvalid: The unit of measurement min is not valid together with device class energy
Failed to process discovery config for sensor: MultipleInvalid: The unit of measurement min is not valid together with device class energy
What ever is publishing this message has a malformed discovery message.
One of the problems with the HomeAssistant “standard” is it really isn’t a standard. It’s not really documented. It changes on a whim. We used to have a reverse engineered add-on to handle it but now we just pull in the HomeAssistant code itself to process it.
All is not lost though. It will be more work but you can use a Generic MQTT Thing or Things and the JSONPATH transformation to create the Channels that you need.
If the ebus binding will work that’s what I’d use.
Even if the Thing were correctly discovered by HomeAssistant, the Channels would still be just temp_1, temp_2, etc. It can’t invent information that isn’t there.,
You don’t post the JSON published there so who knows. What ever is being published there isn’t compatible with the HomeAssistant standard as implemented by OH. That’s about all we can say.
I successfully created a MQTT thing for my Vaillant heating using custom channels.
But now I have a transformation problem with a date received from the ebusd in topic “ebusd/430/MaintenanceDate”. The json I get is like
{
"value" : {
"value" : "01.05.2018"
}
}
I created a channel with incoming value transformation “JSONPATH:$.value.value”.
Based on that channel I created an Item of type DateTime with the state description pattern “%1$td.%1$tm.%1$ty”.
But I get the following error: openhab.log:2026-01-22 10:59:40.555 [WARN ] [ab.binding.mqtt.generic.ChannelState] - Command '01.05.2018' from channel 'mqtt:topic:mosquitto-localhost:Th_Gastherme:Ch_MaintenanceDate' not supported by type 'DateTimeValue': 01.05.2018 is not in a valid format.
Does anybody know what my fault is?
This message shows it - it cannot transform 01.05.2018 into Date and Time automatically, it needs to parsed.
I’m just curious you want to convert this String into DateTime and then again the DateTime into the same String format again. Wouldn’t it be better fit to declare the channel and item as String?
DateTimeType (the state that a DateTimeItem carries) only supports date time strings in ISO8601 format or RFC3339 format. This string is neither.
You will need to transform that String to one of the supported formats using a Script transformation. You can chain transformations on the MQTT Channel.