Automatic routines not working as of yesterday (17 Sept 2023)

So it seems it is not related to the patch and maybe to the issue of this topic.
I guess you will have to provide more details to be helped (screenshot of routine …)

Basically any use of a location mode breaks the routine. Weather its a dependency or a mode change. For example, if mode changes to night, turn off these devices. Or if location mode is night (precondition) and motion is detected, turn on light. Any use of location modes don’t work.

I’d like to report that my automations with location mode precondition are working as of last night. By coincidence, we went away for the weekend, and the hub went into Vacation mode. It changed back to Home when we got home last night. Dale, you might want to try changing your modes around manually and seeing if that changes anything for you. So yeah, that may or may not be involved, I guess.

I should mention too that the mode on my hub doesn’t change often. I only have Home, Away, and Vacation that are used. So maybe that’s part of it somehow.

3 Likes

Same here, some routines will not trigger.
Mostly those to trigger on specifik sensor temperatures to then turn on/off Switches (heaters) and also with preconditions on “Location mode” set.
I change “Location mode” several times a day with Automatic Routines on given times.
I have used Smartthings routines for many years successfully,
but in the past months (after Smartthings move to Edge drives with “local hub routine runs” etc.) some routines will not trigger or trigger on time. Editing/Saving helps sometimes but after a day or two or after location change they stop working.

No luck. Same issues with modes. The history will show that the mode was set but no other actions trigger from it being in the new mode. Same as tgwtgw, has been working for years and stopped all of a sudden.

Still problems with Automatic routines not working.
See pic. for more examples of that Automatic Routines will not trigger properly.
As you can see in the screenshots, temperatures has reached thresholds but the routine(s) has not triggered.

Is it because?:

I have to many Automatic Routines on a device (some devices have 8-10 routines)?
I have to many locally exec. Automatic Routines totally on the hub
(121 routines totally, 49 still cloud exec., some disabled most enabled)?
Location mode checks in routines is not working properly/randomly?
Automatic Routines can not handle “location mode” changes, or timestamps (24h vs. am/pm)?
The new Automatic routines implementation is broken and not properly working locally on a Smartthings hub?
I am located in a non english country with systems/devices with different language settings?
(i.e.; temp written 20,1C or 20.1C ; 24h or am/pm ; etc )

As far as I am aware, the ‘Equal to or above 20C’ condition will only provide a trigger to the Routine when the condition changes from false to true. According to your device history that happened long before the Location Mode changed to Home. I would suggest that you need to change the test for Location Mode to a Condition so that a trigger is provided when the Location mode changes to Home.

*Sorry, forgot to mention, at 7am another routine changed location from Night to Home.

Well, “Location mode” here is set as a “Precondition”. If it works as you describe the whole point with “Precondition” would be pointless. “Precondition”, as I have understood it, is just a “Precondition” for the “Condition”. I use “Location mode” as a “Precondition” in other Routines, some are working, some are not.
The whole point with “Location mode” as a “Precondition” is that you can have different sets with Routines based on if you are “Home”, “Away” etc.

So in this example when I’m at “Home” if temp goes above 20 => Turn Off Heat, when temp goes below 19 Turn On Heat.
When I’m “Away” or “Night” etc, then other Routines/Rules with other thresholds.

I don’t think they are at all pointless but they can be counter-productive.

I would describe it as a precondition for the Routine to be able to activate and run its payload.

Let’s consider your example. Whenever there is a new temperature event received the Routine will be fired up and it will look to see if it has to do anything. If the precondition is false the answer is going to be that it doesn’t, but the existence of the precondition won’t stop it having a look.

I’m OK with that.

What I am saying is that the Routine is being triggered by the temperature events and will have a look to see what it needs to do every time it sees one. The way the developers have chosen to implement ‘temperature equals to or above 20’ means that there can only be something to do if that has just become true. In your case when that happened the Routine will have then discovered that the precondition was false and that it didn’t need to do anything.

So I am suggesting the solution is likely to be to make the Location being Home an ordinary condition. That way at 7am when the Location is set to Home the Routine will be triggered by the change and that will cause the Routine to look to see if it needs to do anything.

1 Like

This is a correct interpretation for using Mode=Home as a precondition and temp as a condition.

It just seems to me that there are issues doing it this way. For example if the temp goes below 19 and 5 minutes later mode is set to Home, then the Routine won’t trigger.

1 Like

Could be my bad english but first its seems I must try to explain the purpose of these routines.

I.e. in this case I want the heater to keep the temp. in the room between 19C and 20C when I am at home (“Location” set to “Home”).
The “location schedule” could look like this on weekends:
11pm-7am “Location” set to “Night”
7am-11pm “Location” set to “Home”

During the time period 7am-11pm the temp. in wintertime outside the building, and then also in the room, can variate several degrees up or down.
And I want the heater to keep the temp. in the room between 19C and 20C by switching the heater on and off (“hopefully saving energy by not having it on all the time”).
How do I do that? - By having a sensor that measures temp. in room.
And then several routines that exec. when temp goes above 20 => Turns Off Heat Switch, and when temp goes below 19 Turn On Heat Switch.

In this case the “Location mode” must be a “Precondition”, can not only be a “one time condition at 7am”.

QUESTION? I thought that every time the sensor reports a new temp. value that the “routines” on hub checks if affected and exec. if necessary?

If not- then unfortunately the Samsung Smartthings system designers totally have missed it with the new Smartthings (“edge driver”/local exec,/“no groovy”). Especially if they killed the smartapps (that maybe not can work locally on a hub?)?

It shouldn’t matter what temp. there were reported or what routines had run before 7am (Night) if the sensor several times, after 7am, reports temp .values above 20C, the routine should turn off the switch.

If not, automatic routines with “precondition” is a very poor implementation.

It wouldn’t be. The Routine will still be checking the Location mode whenever the temperature changes.

Imagine a routine that said

If
  Contact Sensor is closed
  and
  Motion Sensor is active
Then
  Turn a Light on

The light will only ever turn on if both the contact sensor is closed and the motion sensor is active regardless of whether these are conditions or preconditions. It is when it turns on that varies.

If both are conditions then it will turn on: if the contact sensor is already closed when motion becomes active; or if motion is already active when the contact closes.

If the contact sensor is made a precondition the light will only turn on if the contact sensor is already closed when motion becomes active.

What you have to decide is whether it matters.

Yes that is right.

However the developers have decided that a new temperature report leaving the ‘equals to or above’ condition unchanged is not a reason to make anything happen. Their thinking will be that anything that needed to happen will have happened when it became true and it might be a bad idea to repeat it.

There are many other users who would agree with you.

My opinion is that they need to manage expectations better. What it looks like it should do and what it actually does are not the same.

2 Likes

Well, the code

If
  Contact Sensor is closed
  and
  Motion Sensor is active
Then
  Turn a Light on

Should do exactly what it is written to do:
“if contect sensor is closed” and “there is motion” then “turn on light”;

every time, all the time

it should not “ai-reconsider” if it already has done that or not, or check “history logs” if already done that or not, => it should send a “on command” to the device “Light”, every time.

I.e, this routine I have works every time:

The routine above is interesting. On this one I first didn’t check for “if heat hall = off” so it “turned on” the “Heat Hall” and “Hall Heater” every time. It didn’t check for “already done that”.
(every time a command is sent to the device “Heat Hall” it beeps, so it beeped many times in a day before i set the condition “if Heat Hall off”).

or this one, every time:

but then on the other hand this one can just work for 1 day or 2 and then suddenly stops working for some “reason”?:

So I then have to “open”, “edit” and “save” the routine above and then it works for another day or two.

This is very frustrating.

I think that my posts and many others above clearly describes that there is something wrong with the execution of routines in the new Samsung Smartthings and that Samsung Smartthings should hastily fix the problem.

While not exactly the same issue as you i’m having daily problems with simple routines which used to work fine. Deleting and re-creating some routines seems to fix for a while but then they become flaky and unreliable, routines will either not work at all or components of them will be missed.,also find that lights/sockets will randomly come on when they are not supposed to.

Really feels like this is a beta test! Smartthings has got so bad!

It is worrying that Samsung Smartthings can not identify, or fix, the problems behind Automatic Routine issues running locally. Its been there for a while.

But, what is worrying me more is that I suspect the problem maybe lies on the “hardware side”.

I feels like that the Smartthings Hubs (I have v2) do not manage to locally run routines if you have too many of them, that there are limits in the hardware design. I have 125 devices, 122 Automatic Routines (Rules?), 14 “Manually run routine” (Scenes?).

You might ask why I have so many routines?- well, with no more support for SmartApps (i.e. I used Rboy apps to control heating/cooling in the house) I now have to set up several routines on one heater in a room to control it in different temp. scenarios and location modes.

It would be a serious failure if they perhaps missed the hardware/hub limitations when they designed the new “locally run routines system”.

How do they fix that? - A replacement program? a redesign? or just “duck”?

The rules and routines shown as local on the app (or on the API Browser) run locally on my V3 hub.
I have 63 rules, 92 routines and 6 scenes. Is there any evidence that if I continue to add rules /routines they will not run locally?

Don’t now, I’m waiting for Samsung Smartthings to verify how many devices/routines etc a specific version of a Smartthings Hub can manage “locally”.
I have 122 Automatic Routines/Rules? and they do not run properly. I also have had problems with routines being “disabled” as others also have confirmed. (see Routines being automatically disabled? - SmartApps & Automations - SmartThings Community)

I also had problems here around 10 days or so ago, and gave access to my account on request of Smartthings staff member @Ivan_Luis_Falleau who posted to say this had been fixed. As far as I can see it has been solved.

Hi @tgwtgw, regarding SmartApps. If well is correct that the groovy ones are not supported anymore. Now you can create SmartApps using other languages as you can see in this documentation.

You can create them, in fact, you can even write them in Groovy, but the main impact on customers is that there is no longer free hosting available from smartthings. So you have to either have a separate server device or you have to have an account with a cloud hosting service like AWS. This is much less convenient than the old environment, although I understand the reasons for it.

See the following discussion thread for some of the alternatives that community members have chosen:

Replace Groovy with Automations—what’s your plan?

@tgwtgw

1 Like