Standard device files and types

For a simple device, is it possible to an existing device type/file? The problem I see is that the implementation file is specified in the device file, and I need to be able to specify the Lua file…

I’ve used standard device types as children in an interface plugin, however for a simple plugin I need to specify the lua file, and this is specified in the implementation file, which is specified in the device file… Is there a way to over-ride the implementation file to add a different lua file etc?

Non-standard device files work fine within UI5, however remote control apps (correctly) use the device type, so non-standard devices don’t work here…


As soon as you specify [tt]handleChildren[/tt], in the parent device file, the entire implementation becomes the responsibility of the parent device to handle both the device and the child-device implementation logic.

Hey guessed,
Sorry - should have been more specific. I’ve done this loads for child devices no problem (eg OneWire plugin). What I want to do here is to override the implementation of a standard device. To be specific, I want to use the PowerMeter device, but have my own implementation…


If you supply an Implemention File name when you create the device then the one in the D_*.xml file is ignored. I do that for a temperature sensor that I have.

Don’t know if you can distribute it that way on, but for your own private use, go for it.

Most of the “built in” Plugins are implemented in C, with some native implementation to talk to the Z-Wave device. In these cases the D_ file is there just to let us communicate with it in some pseudo-standardized manner.

Technically, the D_ files allow for a list-of Implementation files to be specified, and you can also manually create one with a different implementation than would otherwise be spec’d in the D_ file’s “list-of”.

But, and there’s always a but with Vera, I’ve had this fail on me in when I have my own D_ spec, and 2x Implementations… It would pick the wrong one (even though I’d indicated which to use)

As @futzle points out, it’s even less clear what would happen if you tried to do this in with one of the standard device files.

Thanks guys,
It seems to me that device specifications, and implementation, should be separated - which they are of course, but I think it’s are around the wrong way. The device spec specifies the implementation, where (I think), the app, and its implementation file should specify the device(s) that are supported.

For a plugin, there therefore seems to be no-way to reuse an existing device spec (without manual intervention), and given that remote control apps use the device type, it’s a little messy…

… but this is Vera and I guess we’ll have to live with it.