Thank you to everyone who has taken the time to download and send me feedback on Shion 3. I’ve received a few questions about the application, which I answer in this post. The initial set of questions:
- How does Shion 3 compare to Shion 2 with respect to resource usage?
- Does Shion 3 support downloading programming to the controllers so that the system will work when the computer is off?
Read more for the detailed answers.
How does Shion 3 compare to Shion 2 with respect to resource usage?
For the most part, Shion 3 should be in the same ballpatk or a little bit better with respect to resource usage. More of the app is loaded on demand (instead of all at once) and I’ve been working hard to eliminate any memory leaks and other performance issues. That said, Shion 3 does have a new event logging feature that serves as the basis of some of the historical logging the app now does, and this feature may expand memory usage a bit beyond what Shion 2 used.
Does Shion 3 support downloading programming to the controllers so that the system will work when the computer is off?
Shion 3 does not yet support this feature and this feature is pretty low on the priority list. Let me explain why.
As I mentioned in a previous post, Shion 3 is being designed around an online service as the preferred use configuration. The reason that the online service becomes necessary is because I want to push Shion’s environmental control and monitoring features to as many devices as I can. The iPhone is an obvious example, but I also plan to eventually support devices as diverse as the Chumby and networked electronic readers like the Kindle. If something can connect to the Internet, I want to put a Shion interface on it.
Unfortunately, I cannot achieve this basic requirement (ubiquitous availability) using the current crop of home automation controllers. Shion becomes a necessary component as the middleware that sits between the remotely networked devices and the local device controller. Consequently, Shion is designed with the assumption that it will be running 24 hours a day, 7 days a week.
Now, I’m not opposed to implementing the feature that allows you to download timers and other programming to your controller of choice. The little obsessive-compulsive monster inside of me would love to get that knocked out. However, since each controller has its own language and formats for uploading these programs, implementing and testing this feature across controllers has a non-trivial cost in terms of time. Given that I am already assuming that Shion is running 24/7 and this functionality is present in a much richer fashion using triggers and snapshots, downloading programming will have to wait until I finish some higher priority work.
Another wrinkle in this situation is that not all controllers support the downloading functionality. For example, the best controller that currently works with Shion, the PowerLinc 2412U/S, is a simple modem that doesn’t support the downloading capabilities like its bigger brother, the PowerLinc 2414U. But, as a consequence of being a simpler device, the 2412U/S is an order of magnitude more responsive and robust device than the 2414U. When Shion 3 “goes gold” and I release the first non-beta releases, I’m planning on making recommendations about the hardware that works best with the application. The 2412U/S will be the controller that I recommend, and it doesn’t support downloading programming for offline use. That’s another reason why the feature is toward the bottom of the priority list.
I am perfectly aware that the ubiquitous availability scenario that I present above does not perfectly gel with everyone’s (or even the traditional) home automation use cases. I’m trying to do something a bit different with Shion and this decision is one bit of the different direction that I am taking. Since I cannot give you a good estimate of when I will get around to implementing downloading programming to controllers, you are probably better off looking at some of the other products in this space (such as Indigo or Thinking Home) if this feature is a dealbreaker.
Any other questions?