Mobile device presence broken with iOS 11

Brad, with all respect, it’s broken. What you point to is not the issue. It was bad before iOS11 and now it’s worse. It’s all over the forum in multiple threads. I can’t speak for others but I can confirm my settings match what you state and always have.

Your Support group have even acknowledged it’s an issue and it’s being researched (supposedly).

3 Likes

As the title of the thread says, it’s the upgrade to iOS 11 (betas in my case) that broke this. Never had a problem before. There’s no point checking settings, it’s quite clear what the trigger was.

1 Like

Broke on my phone also as soon as I installed iOS 11. Opened a ticked with SmartThings and they acknowledged the problem. This is definitely an iOS 11 issue since I have another iPhone still running iOS 10.3.3 and it works as a presence sensor. I’m new to SmartThings and have made minimal investment in hardware and am reluctant to spend more money because of some basic issues such as this and false device health status. What amazes me is this was first reported 28 days ago and there is still no solution. This should have been a priority and fixed already.

As I said, I’m holding off with further investment in this system. I like it but it still seems like a hobby project then a commercial release.

@Brad_ST those settings have been in place for me forever as well - I would assume that the application would alert users if it doesn’t have the required access, right?

Doing some testing it seems that location does not get updated after the application has been jettisoned due to memory pressure while running in the background. My guess is that when the application is launched in the background due to a location change, it is trying to load things (the Dashboard with favorites which always take forever to load?) other than what is required to perform the actual location update and the system terminates the background process for taking too much time. I hope that launching the app in the background due to a location change doesn’t go through the normal startup process but only performs the presence update…

1 Like

@Brad_ST

All,

I just upgraded to iOS 11 on my iPhone 7 which has always worked flawlessly as a ST presence device. As soon as I exit the ST app, presence detection is broken. This appears the be the exact same behavior as other users have reported. Yes, Location Services and Background app refresh are enabled for the ST App.

I have reverted back to iOS 10.3.3 while Apple is still signing the old firmware. If presence detection is important to you as a ST User, I would recommend reverting to 10.3.3 while you still can. Apple will most likely stop signing 10.3.3 very soon.

1 Like

Please do make sure you contact support and utilize reviews. As Terry pointed out, community members can be less likely to contact support.

Also, I know you all want attention and a speedy resolution but I see new replies without @mentions.

3 Likes

Not sure why bad reviews on the AppStore would be more helpful than detailed reports here on the forum or support tickets but since you ask for them…

1 Like

I have submitted a support case and a negative App Store review. Hope it helps.

1 Like

Ditto…

1 Like

Just opened a ticket myself. The person who’s had like 0 issues up until about 4 weeks ago when I decided to upgrade to a v2 hub. Since then its been down hill…new hub…new shard…then new app update…then ios update. All crap. And sucks that ST refuses to take us seriously until we open a ticket and/or leave an app review in the app store.

Seeing this as well. Mainly piling on here to watch the thread - I sure hope this gets fixed soon!

ST must have a very weird bug triage system if it needs pointless emails to support wasting both party’s time for what is quite clearly a new confirmed bug that breaks a critical part of the system. I’d rather support deal with more nuanced bugs. Surely you’re not waiting for x hundred reports before you make it a priority?

Sometimes just one report of a critical bug is enough to get it fixed. What we used to call an ‘A class’ bug when I was a games dev for one of the major games platforms in-house studios…

5 Likes

If anyone uses webCoRE and wants access to the beta presence sensor embedded in it, I can send invitations to TestFlight. Will need a PM with name and email and will send an invite. It’s being tested by over 30 people so far and it is stable though requires a secondary blank webCoRE install (install webCoRE again) because deleting the device it creates at setup time will automatically delete the instance along with all of that instance’s pistons (ST is working to fix this). Also supports up to ten places (only one drives the presence attribute).

5 Likes

It’s interesting that we’re being told this by several ST staff members that participate on this forum for various issues now. For example, Wink announces support for a ton of new devices - #13 by vlad

While they have always encouraged opening tickets with support, letting us know that negative reviews in the apple and google app stores may also help with getting issues resolved seems to be a newer thing.

It implies to me that the priorities of mid or upper level management may not be aligned that well with those of ST staffers and users.

Maybe I’m way off. Just a thought.

In response to what appears to be a now-deleted post questioning the validity of the various avenues that the folks on this thread have chosen to express their unhappiness with the loss of a major functionality in this product: I get where you’re coming from. I myself am a product owner/architect for a major piece of enterprise software at a major software company and couldn’t appreciate more your perspective that there is a process that must be followed, that priorities must be established and that there are often dozens or hundreds of balls in the air at any time.

But, I will also say that we do pay great attention to things like incoming bug trends, customer feedback, social media and community driven PR revolving around our products, and take them VERY seriously. If a P0 issue (our term, and really an industry standard) is raised - like, for example a major selling point of our software becoming nonfunctional due to an update out of our control - this moves rapidly to the top of the priority list. I would think it would be even more important for a company selling a $100 commodity product like a SmartThings hub because the chances of a frustrated user simply replacing it are much higher than they are for a multi-million dollar enterprise solution.

The fact of the matter is that in this thread it was suggested that the folks who are displeased should use certain avenues to raise awareness of their displeasure. They did so not out of spite or malice, but because they want a resolution and felt helpless to affect change. Those suggestions gave your users a feeling that they had a voice. They (myself included) shouldn’t be blamed for using them.

Edit: though, I will say that there’s really no cause for offensive or derogatory remarks or reviews. People work really hard to bring these products to market and while there are bound to be bumps in every road, just remember that they’re still hard working people doing their best! Keep it civil.

6 Likes

Couldn’t agree more. I read the same (now-deleted) post and was disheartened to hear that users may have deliberately trashed the mobile app in their reviews rather than give a negative but fair review.

2 Likes

Same here… It’s 2017 - I guess you get service and support by public beatings.

1 Like

Hey Everyone, myself and my team are investigating the issues that are coming up and are looking at possible improvements that are low risk while also looking at long term solutions. My team and I along with many SmartThings employees have seen no changes since iOS 11 (results compared to iOS 10) and many of us have been running the betas since Beta 1. For historical purposes, the same post for “iOS 10 broke mobile presence” could also be found around the same time as a new OS is launched. We are now looking at the problem with fresh eyes and perspective and will be looking for feedback (users) to help beta test some improvements.

Some of the facts I can help provide:

  • No code change was done in Mobile Presence or the surrounding code paths for 2.6.0 release
  • No API changes were introduced by Apple for iOS 11 (minus the whole permission change that has been discussed), please choose Always for mobile presence to work in the background.
  • 2.6.0 release was NOT compiled with iOS 11 SDK, next release might still only target iOS 10 SDK
  • Background fetch permission is required to make network requests.
  • Apple changed how networking works in iOS 11 and it’s not unheard of for them to have a bug. They introduced whole new low level networking protocols (at the transport level) to aid users in networking operations that need to transition from WiFi to Cellular (like Siri and like Mobile presence), this is still an opt in for developers and app but it represents a significant change. If you are curious about the details it’s called multi path TCP and is explained in good detail in the Networking talk at WWDC 2017. We are currently looking into our server support for this as well.

Other Tips in the short term:

  • Avoid force quitting the app (via swipe), Apple “may” have changed how this permission works in the system and prevent our app from being launched due to a region change.
  • Try rebooting your phone, unlocking it and opening the app. See how long/far this will take you before experiencing a problem.
  • Expand the size of your geofence by 100 meters or more.
  • Please make sure you report to us How you noticed mobile presence wasn’t working. We need to break down if we didn’t see the device event from the phone OR if the SmartApp didn’t fire for some reason.
  • Please keep reporting issues directly to support, it’s the single best data funnel we have when triaging an issue. The forum is a great sounding board but the engineers wont have time to parse it and fix the issue. Support is there to gather and report via slack to my engineers and I.

Thanks for the support! We will get through this!

8 Likes

Right on, thanks Kyle. Useful info and surely everyone appreciates hearing that someone is on the case.

I can only speak for myself, but my symptom of presence not working is simply that the SmartThings app says I was last seen arriving at my home the night before ios11 was released. Post update, it never noticed me coming or going again. Same for my wife, though she updated a day later than I. The dates still correlate the same way in her situation, though shifted right by one.

For what it’s worth, however, the August app notices our comings and goings despite the iOS update. In fact, August seems to have gotten significantly more reliable post-update.

@kleneau Thank you for the detailed answer - very much appreciated! However, I have to disagree with the following statement:

Background fetch and Location are two completely different protocols — background fetching uses
-(void)application:(UIApplication *)application performFetchWithCompletionHandler:
and location changes trigger
-(void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
and
-(void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
respectively. You are allowed to perform networking requests from the CLLocationManager callbacks in the background without background fetching enabled, however you only get limited time allocated to do so. This leads me to my prior observation that location updates fail when the application has been jettisoned by the system due to memory pressure — combined with the typical slow load times of the application it seems to be as if the application might be doing more than necessary work when launched in the background due to a CLLocationManager callback…

1 Like