Archive › Mobile Devices

A Christmas Miracle!

After putting out the 3.2.1 update last night, I turned my attention to a problem that’s been vexing me for well over a year. For those of you using the Shion Online service and accompanying iPhone app, the reliability of the service has been a persistent issue.

On the server side of things, the root of the problem has been an issue with the Java-based Openfire XMPP server taking up way too memory and getting into trouble once it exhausted the available system RAM. I put into place scheduled jobs for killing and restarting the process to clean up periodically, but the memory use would skyrocket after a short period.

Last night, I looked more into the problem and ran across a thread on the Openfire forums describing a memory leak associated with the Personal Eventing Protocol (PEP, a.k.a. XEP-163) that sounded exactly like the situation I’d been experiencing. I applied a suggested fix and the server load time has been reduced back to where I thought it should have always been.

I’m extremely pleased that this solution has worked out so far. If it continues to hold (and I’ll be watching over the next week), it removes the need for me to continue with the planned rearchitecting of the Shion network functionality and resume working on improving the stability and functionality of the various applications.

If you’re a user of the online service and can confirm my observations from your perspective (the service is snappier and more reliable), I’d appreciate it.

Happy holidays everyone!

Comments Off on A Christmas Miracle!

The future of Shion

First of all, I owe every Shion user an apology for my absence for the past year. In a nutshell, my consulting business took on a good amount of work, and it’s only been recently that I’ve been able to fulfill those obligations and clear them off of my agenda so that I could resume work on Shion and my other projects. Due to personal reasons, I’ve largely shuttered my consulting business and am now working as a 9-to-5 employee doing much of the same things I did as a consultant.

With the change in my employment situation, the Shion project is changing as well. Instead of trying to develop the application into a commercial product, I am open-sourcing the code and work will continue as an open project. This frees me from having to make technical decisions dependent upon commercial considerations, and allows me to take the project in a direction that makes the most sense from a technology and innovation perspective.

Comments ( 4 )

Shion 3.1.0

Shion 3.1.0 is now available.


This is a major release that adds official support for the SmartLinc 2412N Ethernet controller. I’ve been using this controller for the past month and have debugged and optimized it extensively. The only outstanding issue is that it fails to link with one-way sensors such as motion detectors and SynchroLinc devices. This appears to be a hardware limitation that I will be unable to work past. Users of previous implementations of this device will need to reselect the controller type in the preferences.

This release also includes major performance enhancements across the application. These improvements are the result of migrating the events database from a flat file storage system to one powered by a CoreData SQLite database. Please note that the older events will not be migrated to the new storage, so this update will essentially “reset” your device history.

I’ve improved support for the Weather Underground sensors, so more endpoints should work now. To use these devices, create a Weather Underground Sensor and use your station ID as the address.

There are other bug fixes dealing with time zone issues, crashes, and poorly-performing controllers.

Please submit any other feedback in the comments below.

Comments ( 2 )

Shion Touch is now live!

We’re finally live!

I received confirmation last night that Shion Touch had been approved by Apple and I verified that Shion Touch is now available on the iOS App Store. (It made it through the review process on its first try, which was a pleasant suprise.)

It’s certainly taken long enough, but I’m extremely pleased that I can share this with the wider world without having to subject potential users to the whole “lookup your UDID and mail it in” dance. So, if that’s been holding you back, you no longer have any excuse to not give the software a spin.

I also want to remind everyone that the entire Shion experience is free until the end of 2012 courtesy of Power2Switch, a local Chicago startup that specializes in helping Illinois customers find the cheapest and greenest electricity suppliers. Power2Switch’s sponsorship allows me to make all of this available gratis, so if you’re an INSTEON or X10 user, you have absolutely nothing to lose by giving Shion a try. My hope is that you’ll like it enough to keep it or let me know what I can be doing better for the next customer.

This is an early step on a longer journey (I still need to conquer the Z-Wave beast), but I can’t express how happy I am to have this live after working on this (iPhone-based home automation) in one form or another since 2008.

Thanks again and enjoy!

Comments Off on Shion Touch is now live!

Shion’s coming out of beta!

As of last night, Shion is officially out of beta. I submitted Shion Touch to Apple’s App Store and I’ll be releasing an update to later this week as well as exorcising all of the beta text from the website. I apologize for being slow to send out builds to new testers, but this is the reason why. If you don’t mind being patient, the app will be on the App Store proper within the next two weeks. No more UDIDs needed.

Aside from Apple’s approval, I’d like folks to know that I had to register Shion Touch with the US government to get it on the App Store:

This is actually fairly routine for apps that use encryption, but don’t fall into one of several predefined categories. In Shion Touch’s case it uses SSL encryption (whenever possible) to prevent third parties from monitoring and controlling your environment without your consent.

I’ll post another update when the app’s out of the approval queue and ready for download.

Comments Off on Shion’s coming out of beta!

Shion Touch 1.0b6

A new version of Shion Touch (1.0b6) is available for beta testers:

Shion Touch

Provisioning Profile

Drag these files into iTunes, sync your device, and you should be good to go for a long with with Shion Touch. If you’re using iOS 3 and receiving error messages, go to the general preferences in your device, find the provisioning item, and remove any expired provisioning profiles.

This release of Shion Touch includes a variety of bug fixes and includes support for the TiVo DVR devices, and new power load sensors (Insteon SynchroLinc modules) added in recent builds of

Let me know if you experience any problems or other issues.

Comments Off on Shion Touch 1.0b6

Shion: The Path Ahead

It’s been a hectic couple of months and a variety of uncertainties delayed public progress on Shion. Things have changed for me professionally in such a manner that brings Shion back to the forefront and development will resume shortly.  Part of my new professional life has significant benefits for new & current Shion users.

Comments ( 1 )

Shion Touch Updates

I’ve uploaded a new build of Shion Touch with a new provisioning profile that will extend the beta license (the expiration was Apple’s doing – not mine). Right-click and “Save As” the links below:

Shion Touch

Provisioning Profile

Drag these files into iTunes, sync your device, and you should be good to go for a long with with Shion Touch. Let me know if you experience any problems or other issues.

Comments Off on Shion Touch Updates

Shion: Location-based Home Automation

After a busy week of client work, I spent most of today hacking on Shion. For the past couple of months, I wanted to implement location-based home automation (e.g. “activate Snapshot FOO when I go more than 5 miles from home”), so I spent the day doing just that:

Shion Location Based Services

Rather than treat mobile clients as invisible participants in the Shion ecosystem, I went ahead and made them full peers of the other devices in the network. Doing so made it convenient for me to gather information from the devices (phones as sensors) and send instructions to the mobile client (phones as controllable devices). If you click through to the higher-resolution version of the screenshot, you’ll see that Shion gathers location information from the mobile clients and provides a “beacon” command that plays a unique sound on the mobile client (for those times when you unwittingly lose it between the couch cushion). For those concerned with sharing too much location information, a preference on the iPhone app allows it to go into private mode: beacon commands can be sent, but location data stays on the device. Since Shion does not store any of this information on a server (information passes through, but doesn’t stick around in the online components), it provides a secure alternative to other server-centric location-based services. The online service is only the conduit for passing the information from your phone to your Mac.

For those willing to share location information with their copies of Shion, a variety of interesting possibilities open up:

  1. Shion can be used to define geographically-aware “zones” that associate a particular geography with an action (activate a snapshot, execute an AppleScript, etc.)
  2. Shion can be used to track the location of several mobile devices simultaneously. This is much like Apple’s “Find My iPhone”, but will work on any client or device equipped with some form of geolocation functionality. On my own roadmap are Android and WebOS devices. (Both of those platforms will actually implement a richer feature set than the iOS devices on account of their unfettered multitasking abilities.)
  3. By hooking into the Events system in Shion, this feature an be used to draw a map of your travels over a given period of time. Don’t remember where you saw that interesting shop? Look it up on your copy of Shion.

I’m very excited about this feature and feel that I’m only scratching the surface of the possibilities. Location-awareness will be available in the next releases of Shion & Shion Touch.

Comments ( 1 )

Introducing Shion Touch & The Beta Test

One of the main changes in Shion between versions 2 & 3 is the new support for mobile devices in version 3. Shion 3 now supports mobile interfaces on devices like the iPhone. The post below includes screenshots of the new mobile application. Before I get into the gritty details, I’d first like to invite users to join a closed beta test for Shion Touch.

Due to Apple’s restriction on pre-AppStore ad-hoc distribution, I will only be allowing fifty (50) users in this first set of tests. If you are interested in being part of this test, please e-mail me the following details:

  1. Your name & general location (US, UK, etc.)
  2. The controller you’re using with Shion 3. Please include the model number.
  3. A list of devices you are controlling with Shion 3. Please include model numbers of the modules you’re using.
  4. What device you’d like to use with Shion Touch (iPhone, iPod Touch, iPad). Please include the generation of the device (Original, 3G, 3GS, etc.).
  5. Whether you’re using Shion 3 on a single computer or multiple computers to manage multiple sites.
  6. A username and initial password that you’d like to me to set up for use with the Shion online components. Please do not submit a password that you use elsewhere.
  7. The computer model (make & processor) of the computer running Shion as well as the operating system version (10.4, 10.6, etc.).

I don’t mean to be intrusive, but these details are necessary for me build a maximally diverse beta testing pool. After you e-mail me, I’ll be in touch about whether you have been selected to be in the test, and if so, the next steps.

Now, on to the app preview…

Comments Off on Introducing Shion Touch & The Beta Test