Jump to content

Orchestrated Mobilinc iOS crashing and generally unresponsive


rccoleman

Recommended Posts

I have a fairly large complement of Insteon devices in my house (50-60) and a bunch of programs (~100) and I'm finding that Orchestrated Mobilinc on my iPhone is becoming increasingly unstable.  I'm running 5.0.4 on my ISY994i, so it's possible that there's an unexpected interaction with that alpha version, but I don't want to downgrade and I can't be certain.

 

Essentially, launching Mobilinc starts what appears to be a very long network operation (spinning wheel in the iOS status bar) that makes app interaction jerky at best and completely unresponsive at worst.  During this initial period of network activity, it's very likely that Mobilinc will crash, and that activity can last for a minute or more.  I see almost no log messages in the ISY logs or event viewer (only "Get Elk Topology" and "Get All Status"), so it don't know if it's just taking a long time to go through an exhaustive list of everything on the ISY every time the app starts, or if something is timing out.  This is happening on my home network with excellent connectivity, so I don't think it has anything to do with network reliability.

 

If Mobilinc "crashes", it always has a similar signature.  It's apparently not an actual crash, but iOS killing Mobilinc because it exceeds some permitted duration:

{"is_simulated":true,"app_name":"OrchestratedMobiLinc","timestamp":"2016-06-12 07:05:42.42 -0700","app_version":"4.7","slice_uuid":"a10be213-d8eb-3a3c-9ab0-5d2cfb09a77e","adam_id":384150219,"build_version":"4.7.1","bundleID":"com.mobileintegratedsolutions.OrchestratedMobiLinc","share_with_app_devs":true,"is_first_party":false,"bug_type":"109","os_version":"iPhone OS 9.3.2 (13F69)","name":"OrchestratedMobiLinc"}
Incident Identifier: 853F2BF9-9533-4E5B-9E03-911C87E45465
CrashReporter Key:   92219d8382441fb3dcb4a68afc4887328ac27ade
Hardware Model:      iPhone8,2
Process:             OrchestratedMobiLinc [14314]
Path:                /var/containers/Bundle/Application/E08BD12C-C008-4F64-A3FA-6596C99F9ABD/OrchestratedMobiLinc.app/OrchestratedMobiLinc
Identifier:          com.mobileintegratedsolutions.OrchestratedMobiLinc
Version:             4.7.1 (4.7)
Code Type:           ARM-64 (Native)
Parent Process:      launchd [1]

Date/Time:           2016-06-12 07:05:42.42 -0700
Launch Time:         2016-06-12 06:58:04.04 -0700
OS Version:          iOS 9.3.2 (13F69)
Report Version:      105

Exception Type:  00000020
Exception Codes: 0x000000008badf00d
Exception Note:  SIMULATED (this is NOT a crash)
Highlighted by Thread:  2

Application Specific Information:
<BKNewProcess: 0x12f640b30; com.mobileintegratedsolutions.OrchestratedMobiLinc; pid: 14314; hostpid: -1> has active assertions beyond permitted time:
{(
    <BKProcessAssertion: 0x12f53be80> id: 14314-1FA2A07D-E399-42A6-B2B3-928BD901FACA name: Called by UIKit, from <redacted> process: <BKNewProcess: 0x12f640b30; com.mobileintegratedsolutions.OrchestratedMobiLinc; pid: 14314; hostpid: -1> permittedBackgroundDuration: 180.000000 reason: finishTask owner pid:14314 preventSuspend  preventIdleSleep  preventSuspendOnSleep
)}

Elapsed total CPU time (seconds): 24.000 (user 24.000, system 0.000), 16% CPU
Elapsed application CPU time (seconds): 0.197, 0% CPU

Filtered syslog:
None found

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   libsystem_kernel.dylib              0x0000000180bc8fd8 0x180bc8000 + 4056
1   libsystem_kernel.dylib              0x0000000180bc8e54 0x180bc8000 + 3668
2   CoreFoundation                      0x0000000181000c60 0x180f20000 + 920672
3   CoreFoundation                      0x0000000180ffe964 0x180f20000 + 911716
4   CoreFoundation                      0x0000000180f28c50 0x180f20000 + 35920
5   GraphicsServices                    0x0000000182810088 0x182804000 + 49288
6   UIKit                               0x0000000186212088 0x186194000 + 516232
7   OrchestratedMobiLinc                0x0000000100048174 0x100044000 + 16756
8   libdyld.dylib                       0x0000000180ac68b8 0x180ac4000 + 10424

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0   libsystem_kernel.dylib              0x0000000180be54d8 0x180bc8000 + 120024
1   libdispatch.dylib                   0x0000000180aa87d8 0x180a94000 + 83928
2   libdispatch.dylib                   0x0000000180a97648 0x180a94000 + 13896

Thread 2 name:  GAIThread
Thread 2:
0   libsystem_kernel.dylib              0x0000000180bc8fd8 0x180bc8000 + 4056
1   libsystem_kernel.dylib              0x0000000180bc8e54 0x180bc8000 + 3668
2   CoreFoundation                      0x0000000181000c60 0x180f20000 + 920672
3   CoreFoundation                      0x0000000180ffe964 0x180f20000 + 911716
4   CoreFoundation                      0x0000000180f28c50 0x180f20000 + 35920
5   Foundation                          0x0000000181938cfc 0x18192c000 + 52476
6   Foundation                          0x000000018198e030 0x18192c000 + 401456
7   OrchestratedMobiLinc                0x00000001004d6eec 0x100044000 + 4796140
8   Foundation                          0x0000000181a1fe4c 0x18192c000 + 998988
9   libsystem_pthread.dylib             0x0000000180cafb28 0x180cac000 + 15144
10  libsystem_pthread.dylib             0x0000000180cafa8c 0x180cac000 + 14988
11  libsystem_pthread.dylib             0x0000000180cad028 0x180cac000 + 4136

Whenever I start Mobilinc, it's random whether I'll actually be able to use the app or if it'll unexpectedly exit before I can do anything with it.  Aside from the general lagginess and crashing, I find that sometimes it's able to quickly populate the status of my 5 dashboard items, and sometimes it can take up to 30 seconds (if it doesn't crash in the middle). Program status seems particularly problematic - either that'll update right away in the dashboard, or it'll be the very last thing to populate.  In short, it's become both slow and unreliable to use my simple Mobilinc dashboard to monitor or control my ISY.  I usually just avoid it and instead turn to the ctrlHome app and its quick and functional Today widget or my Echo.

 

For reasons other than Mobilinc, I've restored my iPhone 6s Plus to factory state and set it up as a new phone, but I experienced the same behavior before and after that. I've also uninstalled and reinstalled Mobilinc without any meaningful change. Another request - please, please, please, allow me to save my Mobilinc configuration and restore it later. Copying settings to another device isn't really a serious backup mechanism, and I'm less inclined to build a complex Mobilinc configuration if I have no easy way to store and retrieve it.

 

Is there any way to collect meaningful information about what's happening during these extended network transactions when the app is mostly unresponsive and likely to crash?

 

Rob

Link to comment
Share on other sites

Hi Bob,

 

Thanks for all the details and your troubleshooting steps to date. If the reinstall didn't change the behavior, then I strongly suspect that it's a known bug in the alpha firmware release. There's a condition in the alpha that can cause the program XML data to become invalidly formatted which causes the MobiLinc XML parser to fail and crash in a non-recoverable way (data is corrupted). This would happen/crash every time you start MobiLinc while MobiLinc is attempting to sync with your ISY. The only way around this is to revert back to 4.x official and restore from a known good back up of version 4.x prior to attempting the alpha firmware release.

 

In normal cases, MobiLinc should show you current status for your devices/scenes/programs within a few seconds of starting the app depending on your network condition. You shouldn't see hangs or other lag.

 

Wes

Link to comment
Share on other sites

Hi Bob,

 

Thanks for all the details and your troubleshooting steps to date. If the reinstall didn't change the behavior, then I strongly suspect that it's a known bug in the alpha firmware release. There's a condition in the alpha that can cause the program XML data to become invalidly formatted which causes the MobiLinc XML parser to fail and crash in a non-recoverable way (data is corrupted). This would happen/crash every time you start MobiLinc while MobiLinc is attempting to sync with your ISY. The only way around this is to revert back to 4.x official and restore from a known good back up of version 4.x prior to attempting the alpha firmware release.

 

In normal cases, MobiLinc should show you current status for your devices/scenes/programs within a few seconds of starting the app depending on your network condition. You shouldn't see hangs or other lag.

 

Wes

 

I certainly saw the repeated crashing on start after I replaced my PLM.  I deleted Mobilinc, reinstalled, resynced, and eventually got it to start without crashing.

 

Do you have plans to make it easier to save the configuration?  I would put more work into creating a nice dashboard if I didn't think that it was at risk of being blown away if I have to reinstall for some reason.  It looks like we're almost 9 months into the 4.7 release and I'm hoping that there's more good stuff on the roadmap.

 

Rob

Link to comment
Share on other sites

Hi Rob,

 

The current solution is you can copy your settings to another iOS device running MobiLinc under Settings->Copy. You can copy back those settings at any time. Also, settings are backed up in iOS backups to iCloud or your local iTunes.

 

Wes

Link to comment
Share on other sites

Hi Rob,

 

The current solution is you can copy your settings to another iOS device running MobiLinc under Settings->Copy. You can copy back those settings at any time. Also, settings are backed up in iOS backups to iCloud or your local iTunes.

 

Wes

I know that I can copy the settings to another device, but that requires another device and a desire to blow away the settings on that device. It's not a realistic backup solution.

 

When the settings are part of a full device backup, are you suggesting that users restore the entire to get the Mobilinc settings back? That's also unrealistic, unnecessarily destructive to any recent changes, and very time consuming.

 

Is there a way to individually restore the Mobilinc settings?

Link to comment
Share on other sites

Thanks, Wes. Most apps don't have the sort of customization that Mobilinc has, or they sync with the cloud. Another option is to email it as an XML file or similar. If be more likely to do more customization if I didn't feel like it was stuck in the device.

Link to comment
Share on other sites

  • 2 months later...

Hi Rob,

 

The current solution is you can copy your settings to another iOS device running MobiLinc under Settings->Copy. You can copy back those settings at any time. Also, settings are backed up in iOS backups to iCloud or your local iTunes.

 

Wes

 

So that means we need to buy two licenses of MobiLinc?

 

one for my phone, another one for another phone.

 

Do you have any other solution?

Link to comment
Share on other sites

Hi Rob,

 

The current solution is you can copy your settings to another iOS device running MobiLinc under Settings->Copy. You can copy back those settings at any time. Also, settings are backed up in iOS backups to iCloud or your local iTunes.

 

Wes

 

Do you have any estimate for this?

 

Do you plan a new App version that is more stable?

 

I see your app hasn't been updated since September 2015.

 

Would you be so kind to tell me if the the app has been abandoned?

 

Thanks

Link to comment
Share on other sites

Not abandoned at all. MobiLinc has been very stable and supports a huge range of products from INSTEON, Z-Wave, X10 along with thousands of IP cameras which is why the limited releases. I submitted an update yesterday to Apple to address a couple of minor issues including the handling of the corrupted XML data from ISY 5.x firmware.

 

I've got several features planned and in the works, but takes time to develop. I don't have any announcements today on new features. Stay tuned!

 

Wes

Link to comment
Share on other sites

So that means we need to buy two licenses of MobiLinc?

 

 

No, if you use MobiLinc on the same platform (iOS/Android). I've opted-in with iOS Family Sharing and Android Library to allow those that have purchased MobiLinc on a platform to share that app with their family members who also use the same platform. Please see the respective platform guide to family sharing including limitation.

 

If you use the same iTunes ID or Google Play account on your platform's devices, you can always download the app again to other devices that use the same platform account.

 

Wes

Link to comment
Share on other sites

No, if you use MobiLinc on the same platform (iOS/Android). I've opted-in with iOS Family Sharing and Android Library to allow those that have purchased MobiLinc on a platform to share that app with their family members who also use the same platform. Please see the respective platform guide to family sharing including limitation.

 

If you use the same iTunes ID or Google Play account on your platform's devices, you can always download the app again to other devices that use the same platform account.

 

Wes

So if my mom has a different Apple ID then I can still use it??? Wow that would be so awesome!!!

 

I've lost SO MANY hours re-adding voices and icons, cameras, profiles, etc

Link to comment
Share on other sites

Not abandoned at all. MobiLinc has been very stable and supports a huge range of products from INSTEON, Z-Wave, X10 along with thousands of IP cameras which is why the limited releases. I submitted an update yesterday to Apple to address a couple of minor issues including the handling of the corrupted XML data from ISY 5.x firmware.

 

I've got several features planned and in the works, but takes time to develop. I don't have any announcements today on new features. Stay tuned!

 

Wes

 

Dear Wes

 

Do you know when will the new version of MobiLinc be released?

 

I can't do anything on ISY without fear of MobiLinc crashing again.

 

It's very, very unstable.

 

I am essentially afraid of writing new programs because it might make things unstable again.

Link to comment
Share on other sites

Wes I think MobiLinc is crashing when I delete programs.

 

I had a SUPER SIMPLE program that turns the lights on if a sensor closes.

 

I deleted it, boom, all my profiles, in two different phones, two different versions of iOS (iPhone 7 and iPhone 6s), cannot refresh anymore.

 

So I don't think it's a 'CORRUPTED XML'.

 

It's just MobiLinc crashing because a program was deleted.

Link to comment
Share on other sites

Hi rafarataneneces,

 

Please try the following:

 

- Delete MobiLinc

- Reboot your iPhone

- Download/Install MobiLinc again.

- Sync with your ISY.

- Close MobiLinc.

- Open the Admin Console and create a test program and save.

- Open MobiLinc and go to Programs.

- Wait until the background sync completes. You should see the new test program listed.

- Close MobiLinc.

- Open the Admin Console

- Delete the test program and save.

- Open MobiLinc and go to Programs.

- Wait until the background sync completes. You should see the new test program is no longer listed after the background processing finishes.

 

Does the above steps work for you? If not, please be specific as to what and where it fails so I can attempt to reproduce. Please also list your ISY's firmware version and if you've ever, at any point, upgraded to ISY firmware 5.x.

 

Wes

Link to comment
Share on other sites

Hi rafarataneneces,

 

Please try the following:

 

- Delete MobiLinc

- Reboot your iPhone

- Download/Install MobiLinc again.

- Sync with your ISY.

- Close MobiLinc.

- Open the Admin Console and create a test program and save.

- Open MobiLinc and go to Programs.

- Wait until the background sync completes. You should see the new test program listed.

- Close MobiLinc.

- Open the Admin Console

- Delete the test program and save.

- Open MobiLinc and go to Programs.

- Wait until the background sync completes. You should see the new test program is no longer listed after the background processing finishes.

 

Does the above steps work for you? If not, please be specific as to what and where it fails so I can attempt to reproduce. Please also list your ISY's firmware version and if you've ever, at any point, upgraded to ISY firmware 5.x.

 

Wes

 

Hi Wes

 

This is before the 4.8 upgrade, I did all you asked me to do.

 

This is where it fails

Delete the test program and save.

- Go to MobiLinc, Settings, Lighting Controller, Sync Program

 

When it says 'Parsing Programs', THAT'S WHEN it fails! ;-(

 

Would it be possible to reproduce this with 4.7?

 

How do we know this was fixed with 4.8?

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...