Help with virtual devices please


( Cosmo) #1

There are 2 devices using community created DTHs that are multi capability devices. One is the lowes Iris Smart button, the other is a gocontrol door/window sensor.

What I’m trying to do is create a virtual device that syncs to current state of physical device secondary function.

In the case of the Iris Smart Button, it functions as a button (press/hold).
The second function is temperature reporting. The native DTH doesn’t look at the temp, the community handler does. What I want to do is create a standalone virtual temperature sensor. The point is that with Stringify (I know I can use CORE, but unless I have to make that step I really prefer Stringify), the buttons show up but internally the development team assigned it the aeon minimote handling capabilities as a quick workaround specifically at my request. They will not write a custom device type for this right now so there is no way I can take advantage of the temperature sensor as a trigger. However if a virtual temp sensor (sole capability) were in my devices, I could import that to use in Stringify.

The second is a gocontrol door/window sensor.
Natively it just monitors the “external” reed contact like all the other door sensors out there. But it has internal contact terminals. The developer opened capability to use these in old handler, but that internal status only was available in CORE. Now he customized the DTH to have user selectable capabilities (for hardware hacking of door sensors). It works great. But I would like a virtual door sensor to sync to the state of that internal contact. So that I can easily monitor them separately. Like putting the sensor (external) on a door, and wire a reed to internal contact for window next to door. This way they both don’t show as one device, I can have the virtual device just called Window and it show what the windows state is.

Here’s a link to the thread with that DTH:

I’ve read about some smart apps that assign the source value to the virtual sensor and I’ve tried a few. I’m not having luck. Is there a way someone could point me to an applicable smart app or instructions on how to associate source value to a virtual device.

Thanks guys!!!


(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy) #2

(Kevin) #3

When I said that I didn’t think it was possible, I was referring to generating and syncing virtual devices from within a DTH, but that can easily be done with CoRE.

FYI, an external sensor can be attached to those terminals so those events are considered external and the regular contact sensor events are considered internal.

In the Contact Sensor device settings, set the Main Contact Behavior to “Internal Contact Only”, set the Primary Status Attribute to “contact”, and set the Motion Active Event to “externalContact.open”.

Add a new device through the IDE and choose Simulated Contact Sensor as the type.

In CoRE, setup a piston that uses the real contact sensor’s motion active event as the trigger and executes your virtual contact sensor’s open command when it’s true and close command when it’s false.