[OBSOLETE] Smart Alarm is here

My house burned down a few months ago and we’re rebuilding. As such I had a full Insteon deployment before and will most likely do Insteon again for everything except security, since the same scenario exists on Insteon but no one has written an app like this :slight_smile: So I’m considering doing a SmartThings hub for security and running this app. So apologies if this is a stupid question :smile:

For me to be able to use this, it would need to work on Windows Phone/Windows Store app. This app looks like it installs to the hub itself, so would I still use the normal SmartThings Windows Phone app for this to function, or would there need to be a specific Windows Phone app for this, and if so, is there one? Sorry if this is a dumb question :slight_smile:

SmartThings apps run on the cloud server and talk to “things” through the hub. What you see on the phone is just a user interface which should work on any device, including Windows. Don’t hesitate to ask any questions.

I just got pushbullet set up, nice work

@geko I posted a couple bugs to the Github, at least I think they’re bugs.


I know this has been asked but I can’t find what I’m looking for.
I use Smart Alarm in a vacation rental house.
I would like to use a tablet for the renters to turn Off and On the alarm.

Not much more that this is needed for my needs.

Can someone point me in the right direction?

Thanks in Advance,

SmartAlarm can be armed and disarmed by changing “modes”. There’re multiple ways of doing it, for example, using ActiON dashboard.

1 Like

Thanks - I will look into this…

I did the same thing at my house. My wife likes a physical alarm panel. So I took two pieces of wood routed them and came up with this. Then I used a Samsung tab 3 7" installedTasker and setup endpoint widgets that arm, disarm and lock the screen. The lock screen is the standard android lock screen and uses a 4 digit code.

Oh one other creative thing that the wife loves is that I used tasker and setup text to speech so that when the home is in away mode and the garage door is opened a nice Siri like voice reminds me to “Please disarm the alarm”.
This was probably my wifes favorite feature as it was a great reminder.

1 Like

Very cool! As a Tasker user, I’d really like if you could describe how you set up the text to speech thing. Perhaps starting a new thread? (If you have time.)

@DITPL you can either do this the ‘hard’ way through setting up HTTP endpoints, a custom push event setup, etc (some of this is posted on the forum) or you can do it fairly easily using SharpTools which is an Android app I developed which provides Tasker Plugins and Widgets for SmartThings.

Installation Instructions: http://sharptools.boshdirect.com/installation-instructions
Features: http://sharptools.boshdirect.com/features

SharpTools takes care of the push event capabilities for you, so all you have to do is long-press on a thing to subscribe to the desired attribute in SharpTools then use the ‘Thing State’ event plugin paired with the built-in Tasker ‘Say’ feature.

If you need more details going the SharpTools route, let me know. :smiley:

!! This is awesome! Thank you!

For reference, check out the below article which explains the ‘Thing State’ (attribute event) plugin in more detail:

The article uses the built in Tasker Notify action, but you can substitute the built in Tasker Say feature to have your phone actually speak out the event changes as they occur instead of displaying a notification as described in the article.

Need some ideas for the WAF, I’ve had it so when the motion detector by my front door detects motion, it changes the mode to disarm the alarm, cool. What I’ve also discovered is, if the alarm is armed and the front door is opened from the exterior the alarm will trigger but once the front door motion sensor sees motion it changes the mode, which in turn disarms the alarm! I obviously don’t want that to happen. Is there a way to have Smart Alarm ignore mode changes while it’s tripped? Maybe have a dedicated disarm option in order to disarm and then once disarmed, allow it to respond to mode changes?

With the lack of a panel, not sure if I want to go the tablet route yet. I wish there was a quick option I could give the rest of the household to disarm the alarm without having to use their phone.

This motion sensor route was getting me by, until I realized it would turn off the alarm if the crook walked in through the front door.

Any suggestions?


As with any alarm system, it must be able to authenticate the owner somehow. Motion sensor cannot tell the owner from the intruder. Without a control panel, your other options are individual presence tags or personal key fobs.

I’m not sure if you’ve tried the ActiON dashboard by Alex. It works nicely with geko’s SmartAlarm. With the dashboard, you can create an instance for each member of the household with only the Things they need, or even just a Mode Change button that will arm/disarm SA. The one thing I like about it is you can just revoke the URL if you think it’s been compromised, or change it on a weekly basis :slight_smile:

1 Like

I’ve been using presence to arm away and disarm away. Stay is where I’m having trouble.

Thaks for the feedback.


Thanks I will take a look. I wish a company would manufacture a panel I could use for this purpose. I wonder why ST hasn’t made a device for this purpose. @Ben anything in the works for ST to create a panel thing?

One of the many perks of being a part of one of the largest screen producers is you see a lot of screens :smile:

1 Like

I see what you did there. :slight_smile:


I’m still running into some issues with SmartAlarm going off when it should be disarmed. I just updated to the newest version of your app yesterday reset everything, and armed it. Here’s the events from Hello Home as well as the Logs from the API area of my hub:

Log: 3:14:30 - Side door lock was unlocked with user code 1
Log: 3:14:31 - Side door sensor was opened
HH: 3:14 - Running “I’m Back!” because unlocked Side Door Lock
HH: 3:14 - "I’m Back"
HH: 3:14 - Welcome home! I changed mode from Away to Home as you requested
HH: 3:14 - Your Side door was opened
HH: 3:14 - Home alarm is Disarmed
Log: 3:14:32 - Smart Alarm send off command to Den Siren
Log: 3:14:32 - Smart Alarm send speak command to Ubi
Log: 3:14:39 - Side door was closed
HH: 3:16 - Alarm at Home! Side Door
Log: 3:16:07 - Smart Alarm send both command to Den Siren
HH: 3:18 Home alarm is Armed Away
HH: 3:19 Entrance Zones are armed

The Side door is listed as an entrance zone, which seems to be operating properly. I mean the alarm doesn’t go off until about 60 seconds after the event (which is the delay I have set). But even though Smart Alarm is showing that it’s disarmed both by what is says in HH as well as log events, the alarm is still going off.

This is purely a guess on my part here, but it’s the only thing that seems to make sense to me:

You have two procedures happening at roughly the same time:

The mode is changed to Home and the Door is opened. These things then happen:

Door is opened. We need to process this event and see if we need to sound the Alarm.
First step: Is this zone armed? Yes! Okay proceed to second step
Mode has changed. We need to process this event.
Second step: Are we already in an alarm state? No! Okay, proceed to third step
Mode is home: That means we disarm the alarm: "state.alarm = false"
Third step: change state.alarm = true. Proceed to fourth step
Fourth step: Wait 60 seconds cause this is an entrance zone, then activate the alarm!

Obviously the first thing the activateAlarm() procedure does is check if state.alarm = true. Change modes should set this to false and keep the activateAlarm procedure from doing anything else, but I’m guessing the mode change is happening a split second AFTER the zone event is checking to see if the system is armed but also a split second BEFORE the zone event sets the alarm.state to true.

Does this sound like a reason explanation for what I’m seeing? If so, I think the solution will be to “disarm” twice. Once immediately, then again maybe ten seconds later:

def onLocation(evt) {

    String mode = evt.value
    if (settings.awayModes?.contains(mode)) {
    } else if (settings.stayModes?.contains(mode)) {
    } else if (settings.disarmModes?.contains(mode)) {
        myRunIn(10, disarm)

I added the myRunIn(10,disarm) Am I correct in thinking that when my mode changes to home (a disarm mode) it will run the disarm procedure. Then wait ten seconds and run it again?