Hub Firmware Beta Group | Local Routine Execution with Manually Run Routines is Ready for Testing

Expanded Local Routine Execution for Hub Connected Devices

The SmartThings Development team is ready to begin the second and final phase of local execution of manually run routines (previously Scenes in the SmartThings mobile app). This phase supports the ability to create automatic routines that execute locally when all associated manually run routines are also running locally. This functionality is available for current enrollees of the Hub Firmware Beta Group using the latest beta hub firmware, which was released on Friday, September 22.

Getting Started

With this beta release, you can start testing this new feature by creating a new routine using the SmartThings app.

Routines are eligible for local execution when the hub firmware version 0.50 or later is installed and all associated manually run routines and devices can execute locally.

Manually run routines are eligible for local execution when all associated Hub Connected Devices can execute locally using Edge drivers. They include Zigbee, Z-Wave, and LAN devices as well as other Hub Connected Devices using Drivers. Many of the existing routines have already been examined for eligibility, and if they are not enabled for local execution, you need to recreate or update them.


You can also use the SmartThings API and the Rules tutorial to create and view local routines (a.k.a. Rules or Automatic Routines). The execution location is local when the executionLocation value in the API response is “Local”. The small house icon will be displayed next to the routine name on the Routines tab in the SmartThings app as well.

For reference, developer resources for rules can be found below.

Feel free to start a thread or reply to existing threads related to manually run or automatic routine executions in the SmartThings Community Developers Programs forum if you have questions or feedback.

Users Not in the Firmware Beta

This announcement is targeted at our advanced users in our firmware beta, but don’t feel left out! This functionality will become available to all users over time as firmware 0.50 is released to the different SmartThings hub models.


Anyone who participated in the previous beta is automatically signed up for this one. If you’d like to participate in the beta, but haven’t taken the survey yet: Sign Up Here

If you’d like to opt out, update your preferences via the Account Settings menu item in Centercode


So these are “manually run routines” which are going to be automatically run based on a trigger in an “automatic routine” right? It doesn’t change the fact that “manually run routines” which are initiated manually still require the cloud, because as of this posting the smartthings app always requires the cloud. :thinking:


Local/automatic routines can now include and execute “manually run routines” (local scene). The name change which added “manually run” makes it a bit confusing so I still think of them as a “local scene”. Here’s a simple test case:

  1. Verify that hub firmware version 0.50 or later is installed/running on your hub. It may take a while before the next release is sent to your hub.
  • Select “Devices” in OneApp and click on your hub device.
  • Click on the “…” button in the upper right corner and select “Information”.
  • Verify that the hub firmware version is “000.050” or later.
  1. Add “manually run routines” (local scenes). For example:
  • Home (set location mode to Home)
  • Away (set location mode to Away)
  • Lights On
  • Lights Off
  1. Add local “automatic routines” that use a “manually run routine” (local scene). For example:
  • Home Lights On (if location mode is Home, then run routine “Lights On”)
  • Away Lights Off (if location mode is Away, then run routine “Lights Off”)
  1. Select the “Routines” tab in OneApp and verify that the “local” icon is displayed for your routines.
  2. Test your local/automatic routines. For example:
  • Click on the “Home” scene and verify that your “Home Lights On” local routine worked.
  • Click on the “Away” scene and verify that your “Away Lights Off” local routine worked.

That will verify that they work under some conditions, but not verify that they are running locally. Again, because the app always requires the cloud. :thinking:

To verify that they are going to run locally, you have to set up an automatic routine with a trigger like a physical button that actuates the desired manually run routine.

Then disconnect your hub from the Internet.

Press the physical button and see if the locally operating manual routine runs.

If it does, then it is truly running locally.


if you have an outlet switch, try:

create a manually run routine (local scene) named “Outlet Off”
if manually run then Control Devices “Outlet, Turn Off”

create an automatic routine:
if device status is Outlet On then run routine “Outlet Off”

now press the outlet switch to turn it on, and the local routine will quickly turn it off again

1 Like

need to investigate when hub is offline


My first hub was connected to another environment so it may not have the latest updates. The hub connected to production using a multipurpose sensor and ikea light worked while it was offline (Closed → Light On, Open → Light Off).



I have been testing this and I have seen that manual routines (scenes) are not marked with the local execution icon in the App.

Automatic routines that include a (scene) compatible with local execution are marked with the local execution icon.

Is this the current correct philosophy?


yes, that looks correct. it would be great to have the local icon for scenes as well. I’ll ask about it again now that the name changed to “manually run routines”.


If I am reading this correctly, @jnettleton, it is akin to a piece of code calling a subroutine, e.g., a “Manually Run Routine” (formerly called–correctly, according to the rest of the industry–a “Scene”). Is that correct? In other words, an Automatic Routine can call a Manually Run Routine and everything remains locally executed?

If so, kudos to the team for making this complete! :smiley:


Did this make the 0.50.xx or 0.51.xx general (non-Beta) releases, Jerry? I re-tested today and the local execution icon disappears when a Scene (or Manually Run Routine) is added to a locally executing Automatic Routine. (Tagging @jnettleton)

Thanks for any update you can provide!


We found a bug during 0.50 beta testing and this feature was moved to the 0.51 release. Assuming the remaining testing goes well, it will be released soon after the holidays.


Good News Department: this has changed just recently. :grinning: As @jnettleton stated earlier, it was in the works to make it possible for a Routine to “call” a Scene and still run locally. Yesterday, I noticed several Routines I had that executed a Scene (Manually Run Routine, a misnomer!) were now exhibiting the little house icon indicating locally run. I updated several more routines–in some cases, simply editing the name & saving–and found the routine was now all local.

Thanks, Jerry and the team for making this important update! :clap: