I want to use Home Monitor to sound the alarm if it detects intrusion. I have both indoor and outdoor sensors. Problem: even when set on minimum sensitivity, my 4 outdoor motion sensors each get triggered several times a day over nothing. To avoid false alarms, I would want the alarm to be triggered only if, within a certain time interval, say one minute, two different outdoor motion sensors get triggered, rather than to trigger on each sensor individually. Any ideas of how to do this?
- Create a virtual motion sensor.
- Then write a routine to trigger the virtual motion sensor only when both physical sensors are triggered.
- Only connect the virtual motion sensor to STHM.
For this to work both detectors would need to be triggered during the cool down period for your detectors.
I suspected that a virtual motion sensor would be the way to go… but unfortunately that’s quite a high threshold to overcome. I’d need to figure out how to write a virtual motion sensor, an Edge driver preferably, I suppose, which listens to other sensors, and I need to figure out how to install and configure this custom driver on my hub. I have done nothing of the sort before. I’m amazed of how complicated it is to program a smart home in 2022 Any help in pointing me to useful resources would be much appreciated.
you either pay with your time or with your money .
the virtual sensor driver already exists, you can search for it
It is very easy to create virtual motion detectors. Use one of the following links by @TAustin or @ygerlovin:
As @Paul_Oliver just posted, there are community developers who have already shared virtual device edge drivers here, so those are readily available.
Once you have a virtual motion sensor in your device list (it will look like any other motion sensor), you just use a regular SmartThings routine, the ones built into the SmartThings app, to activate it when your other sensors activate.
This will work because, like many virtual devices, the community developer will have specifically provided a way for you to activate it.
There are a couple of ways to do this, but most typically the virtual device will be BOTH a sensor and a switch. When you turn on the switch, the virtual sensor will activate.
So your routine will probably use the real motion sensors detecting motion as the “if” and turning on the switch part of the virtual motion sensor as the “then.”
As soon as that happens, any automations you have, including SmartThings Home Monitor, that trigger because the virtual motion sensor activates will run.
So you won’t have to write your own driver. And it won’t have to “listen” for events from other devices.
You just use an existing community-developed virtual sensor edge driver which has the ability to be actuated by a SmartThings routine (which most do).
Then create a regular routine in the SmartThings app to “turn on” that virtual device when the other sensors actuate and you’re all set.
BTW, as far as other resources, you can find community-created Edge Drivers for many device classes by starting with the quick browse lists in the community-created wiki. Saves a lot of search time.
Ahh makes sense, and that would of course make things a lot easier
Tried the suggested driver and with some straight forward logic, got it to work. Thanks a lot!