[OBSOLETE] SmartThings Mode Fix


This smartapp sets SmartHome’s Mode field when setting the AlarmState from the SmartThings Dashboard Home Solutions or anything that does not properly set the Mode.

Have you ever wondered why Mode restricted Routines, SmartApps, and Pistons sometimes fail to execute, or execute when they should not? I gave up trying to use mode for Core Pistons, now I know why it did not work.

Perhaps like me you conflated AlarmState and Mode, however they are separate and independent SmartThings settings. When Alarm State is changed using the SmartThings Dashboard Home Solutions, or anything that does not execute a SmartHome routine—surprise, Mode does not change!

SmartHome routines generally, but not always, have a defined SystemAlarm and Mode setting. Experienced SmartThings users seem to favor changing the AlarmState using SmartHome routines, avoiding use of the Dashboard’s Home Solutions.

If like me, you can’t keep track of all this, or use the Dashboard for changing the AlarmState, the ModeFix smartapp may be helpful. For each AlarmState, set the Valid Mode states, and a Default Mode. Mode Fix attempts to correctly set the Mode by monitoring AlarmState for changes. When the current Mode is not defined as a Valid Mode for the new AlarmState, the app sets Mode to the respective state’s Default Mode.


To install via the repository, add the following to the IDE Settings
Owner: arnbme (in upper case that is ARNBME)
Name: SHMDelay
Branch: Master

  1. Click ‘Save’, then in ‘My Smart Apps’ click 'Update from repo",
  2. select the SHMDelay repository and install and publish SHM Delay ModeFix
  3. In the Phone APP install the SHM Delay ModeFix app then follow the provided directions.
  4. If you are using SHM Delay, this smartapp runs as a child, Do not reinstall

You may manually install by going to SHMDelay/smartapps/arnbme at master · arnbme/SHMDelay · GitHub then copy the module, installing 'from code". You may also copy the source from the code link below.

Hi there,got a notification from Smartthings that I need to update SHMDelay module,
How do I do it?

Assuming you are setup to update from Github Version2

  1. Log into the IDE
  2. click/tap “Update From Repo”
  3. click/tap SHMDelay Version2 (using beta? click tap SHMDelay beta)
  4. select SHM Delay, then select publish
  5. click tap Execute Update
  6. select all remaining modules (do not select publish)
  7. click tap Execute Update

Should you be doing your updates manually copy various modules from repo, then manually update by

  1. go to the SHMDelay Version2 to repo
  2. copying the module from the repo (Ctrl/a (select all) ctrl/C (copy))
  3. select the matching module in the list, click on module name, put cursor into module code area
  4. Ctrl/a (select all) Ctrl/V (paste) Save, publish for me only module SHM Delay

Some additional information is found in

  1. Documentation Install
  2. Dcoumentation Switch between beta and Version2

I thought I already install 2.0 months ago.
How can I find out my current version?
Thanks again!

Updates happen. :roll_eyes: I expect another update in a couple of weeks with the features recently added to the beta release.

You may see the current installed versions (for SHM Delay) by going to the IDE. clicking on My Smartapps
All SHM Delay modules show their version as follows:
Click the “View Details” icon preceeding each SHM Delay module.
The version shows in the Description field

The notiication you received should specify the outdated modules.

Thanks again!