ZWave add channels for unknown devices

Hi there,

is there a way to add channels to a “unknown device” not found in the database yet? In OH1 it was possible to select commands for specific devices and link them to items. In OH2 are channels which are provided by the device definition in the packaged device db. (e.g. {zwave="1:command=meter,meter_type=0,refresh_interval=180" })
Is this still possible?

It would greatly loosen the dependency from the database (which can’t be always up-to-date) and increase flexibility. I highly appreciate the comfort of having the device database. It’s just the limitations that also come with this dependency, I try to ship around.

If it is possible: can somebody please provide or point out where to look for more information?
If it’s not: is it already on the wishlist? Can it be added to it? Are there reasons to not implement this?


Any luck with this? I’d like to do the same.

I have an unknown device, it does see its a WINDOW_COVERING_POSITION_ENDPOINT_AWARE - and a MOTOR_CONTROL_CLASS_C. It would be great if I could play with the device definition without need for updating the database.

Currently this isn’t possible. When the ZWave binding was originally written, ESH didn’t provide the ability to do this - all thing descriptions had to be done through the static XML files. I’m working on changing this, but it will still be a little while off.

Even with this, you will still need to add information into the database if you want to configure the device - I’d really encourage people to do this as it will help the whole community!

Ok thanks for the quick reply! I’ll get going and get the info for the database.

Have to figure out how to get the data and deliver it for the database, but I’ll first read the docs on the database site for that. Thanks!

Sorry just one quick question - Ive created an account on your website,but do not see the ‘add device’ button.

Do I need to have additional permissions to do so?

I’ve got the node xml ready to add.

Thanks :slight_smile:

I’ve updated your access, so you’re good to go…


How are channels defined added that are dynamically added?
For example I have a dimmer which will report switch status as basic set on association group 2.
How can I create the channels so I can use this signal?
I guess updating the database makes no sense since this only works after setting the association group.

I’m not sure I understand what you mean.

Channels are not dynamically added in the binding at the moment - all channels are statically defined in the database.

You need to update the database if the device is missing a channel.

This is where I get lost - the database is the only way to define channels at the moment, and I’m not really sure what the channel allocation has to do with the association group :confused:.

I’ll try:
The device is a Din-Dimmer. It sends status updates to the controller via association group 1.
Unfortunately it does not report a button press on association group 1.
This is why it has association group 2. When assigning the controller it will send basic set on a button press and the controller can receive it.

I still don’t understand - what is the device? Channels are in any case defined in the database and aren’t linked to associations.

It is quibino DIN Dimmer.

Sure channels are static but updates to this specific channel are only sent after one has manually added the controller to association group 2.

I am understanding this correctly that I can only use channels that are already in the database? :frowning:

Ok - I have this as well.

Ok, earlier you were asking about dynamic channels.

So - that’s normal with any association and this has nothing to do with channel definitions.

Sorry - I’m still confused…

Absolutely. This is what I said above :wink:

I was meaning “dynamic” in “you have to define the zwave device in a special way to make the channel work”.

It is not enough to include the device and check for the controller to be in association group 1. You have to look in the datasheet to get it working.

I’ll take a step back and try to describe my use case again:
I have the dimmer and I want to get the switch presses from the device.
Unfortunately this channel is not available in the database.
The device reports the switch status with basic ON/OFF on association group 2.
How do I get a configuration that will map this basic ON/OFF to an item?

Hm - not too happy about that. :frowning:

That’s normal, but shouldn’t impact the database…

Then we should add it… If this is the crux of your problem, then we just add the channel - it’s simple ;).

What exactly does this mean? An association group doesn’t mean anything in relation to a channel - an association group is just a reporting destination - the binding can’t use this information at all. An association group might report a temperature, or a binary switch, or anything else - we need to know s the command class and possibly the endpoint - this is really the information that’s needed.

S]I’m still confused as to why you consider this a problem - I’m clearly missing something :confused:. In OH1, you had to define the items. In OH2, channels should be predefined - it’s the same thing, but it should avoid people having to configure things (and all the associated emails about how to write a binding string for a specific device etc). All we’re doing by defining the channels is defining these strings to others don’t need to.

If you used this in OH1, maybe you can provide the binding strings you used. If we’re missing a channel, then we can add it - it’s not a problem.

Ok, I’ll give it a try. So how is the process here?
How do I define a channel and how do I even test it before it is in the binding?

Also when transitioning to OH2 I noticed that lots of devices that support the meter report do not have the meter reset channel added:
For example Roller Shutter 2.
Is there some automatism that checks these dependencies?

To make changes to the database, you should register on the DB site and send me an email so I can give you write access. Make the changes, and then click the “Request Review” button - once it gets approved it’s uploaded automatically to Github…

Channel types are already defined - you should choose the right one and add this to the appropriate command class in the database using the green + button.

You can’t test it before it is included into the binding though - we will include it and you can test it

Not if it was entered already. The automation is done by reading the XML when first adding the entry into the database.