Fedora 21, OwnCloud 7, Fedlet, and Logitech Harmony stuff

Hi there, folks! What's up in Fedora-land?

Well, we're well into the Fedora 21 cycle, but the Fedora.next efforts are making it more than usually difficult to compose test images. Alpha TC1 is not complete yet, though release engineering are doing yeoman's work trying to sort out both Fedora.next changes and the usual breakage that shows up when we come to do the first builds for a cycle.

So we in QA have been working on the blocker bug list using nightly live and netinst images for now. Fingers crossed we'll get some test images up soon for full-bore validation testing.

In the mean time I spent a few hours yesterday working on OwnCloud. I've been working on the various packaging changes needed to get OwnCloud 7 into Fedora. I have some very very experimental 7.0.0 RC1 packages up in this repo - only F20 packages and .src.rpms, but I suspect the 'F20' packages should be OK with F21 and Rawhide for testing. PLEASE PLEASE do not install these in anything resembling production. All I've tested is that they work for a new deployment with an sqlite database in a Fedora 20 VM; I've done exactly zero testing of updates or real databases yet, and it's very likely there's more stuff to fix there. So if you upgrade your production deployment and it goes sideways, don't come crying to me.

I was planning to test those packages against a clone of my production OC 7 server today, but I got distracted instead by a new toy - a Logitech Harmony Smart Control.

I have something of a history with programmable remote controls, as long-term readers may remember. Since that last post, I did indeed go back to my Harmony 880. Then the buttons on it really started dying, so I bought another off eBay. One of the buttons on that one turned out to be bad, so I lived with that for a while. Then I created a sort of hideous Frankenstein's monster combination of both handsets, which worked for a while, but it seems like it's fundamentally not possible to stave off Dying Button Syndrome (to say nothing of Dying Charging Contacts Syndrome) on the 880 forever.

I've kept an eye on the several generations of Harmony device which followed the 880 with increasing trepidation, as I tried to keep my 880(s) on life support. The executive summary seems to have been 'they're all bad and they keep getting worse' (through the Harmony One, the Harmony Touch, the Harmony Link, and whatever other stuff they released in the interim). But finally it was time to give up on the 880, so I rather reluctantly bought myself the Smart Control.

It's part of the 2013 Harmony range, which is broadly based on the concept shared by the Harmony Link and the Redeye I discussed in some of my earlier posts: there's a central sort of 'server' box which transmits the actual IR (or sometimes Bluetooth) signals to the devices to be controlled, and the actual remote control(s) communicate with the hub (not directly with the controlled devices). The advantages of this setup are that it's good for non-line-of-sight control (as long as the hub has line of sight - or IR blasters connected to out-of-sight devices - things will work, as the remotes talk to the hub by RF or wifi, which don't require line of sight) and you can have multiple remotes that stay 'in sync'. As the hub speaks wifi, it can also be programmed without a USB cable.

You can buy the Hub alone (with the idea that you use an app running on a smartphone as the remote control). The Smart Link package I got bundles the hub with a very simple hardware remote, and you can also use the smartphone apps. The Ultimate package includes the hub and an 'advanced' hardware remote with a touchscreen. You can also buy the 'advanced' hardware remote alone, as it has its own IR transmitter, in which case it works more like an old-school Harmony, no hub, you have to plug it in to program it.

Anyway, enough of the background, how's the practice?

With the Redeye (and the Harmony 890 I used briefly, which used a very early version of the hub concept) I liked the idea of the non-line-of-sight communication, but setup tended to be finicky and I didn't ever get either hub to operate reliably enough to be happy with it. With the Redeye - which like the Hub-only package has no hardware remote, it relies on a smartphone app as the client - I found that I don't really like using a smartphone as a remote control much. For a start, while you're using it as a remote control, you can't really use it as a smartphone, and vice versa. For a second, no physical buttons makes it very difficult to use one handed and without looking. Remote controls are built to be remote controls, smartphones...not so much.

The intent of the Smart Control package is that the smartphone apps are the primary control device and the physical remote is more a kind of backup. However, it turns out the dumb, simple, cheap physical remote is pretty much the best Harmony remote they've made for a while. It's got all the buttons you really need for 98% of the time. It's got an awesome tactile back. Because it's dumb, simple and cheap it doesn't use a fancy rechargeable battery pack and charger (which have always been the thing that seems to die first on Harmony products); it just uses a simple coin cell. That lasts for a year. The internet consensus is that the 'advanced' touchscreen remote is more trouble than it's worth, and my experience of the Smart Control remote so far certainly doesn't contradict that.

The Hub also seems to be more reliable than the 890 transmitter or the Redeye were, for me. I wasn't able to sit it in a really clear view of all my devices, but it seems very powerful - the 'more or less' view it has seems to be fine, it hasn't missed a transmission yet. It responds reliably to input from the hardware remote and multiple phone clients, even when they're all being used interchangeably. A big advantage over all previous generations and competing systems is that it has a Bluetooth transmitter. At first this could only control Playstations and Wiis (which is a big feature already; previous Harmony generations could control the PS 3 through a dedicated IR to Bluetooth hardware adapter you had to buy for like $50, and couldn't control Wiis at all), but they've now updated the software so you can use it as a Bluetooth keyboard, which lets it control media center PCs without an IR dongle (and more reliably than IR). It would be nice if it could support IP-based remote control - for devices like XBMC computers, or (so I hear) Tivos - but I guess they're saving that for a future generation.

The smartphone app is...fine, for what it is. You get more controls than will fit on the hardware remote, obviously. The button layouts is customizable, but much less so than the Redeye one, which let you put anything anywhere, use custom button sizes and even shapes and graphics, and stuff. Several elements of the Harmony layouts are fixed and the UI wastes quite a bit of space, so you can only ever see a relatively small number of buttons at once and have to swipe between screens to reach other ones. But it's fine, it's not unworkable.

I was still programming my 880s via the very old website, because that method works with the Linux software, concordance. Logitech shipped a Windows-only app to replace that old interface, then shipped a new app for OS X and Windows, MyHarmony, to replace that app. I used that for programming; I was able to transfer my 880 config into the old app, and then transfer it from the old app to the new app and apply it to the Hub. A few settings got lost in translation somewhere along the way, but mostly it worked fine. You can also do the configuration from the smartphone app. Once you've made config changes, you can program the hub via a USB link with the MyHarmony software, or trigger a sync from the mobile app, in which case the config is transmitted to the Hub via wifi. (It seems a mystery why you can't trigger a wifi config update from the PC app, but oh well).

Logitech stores your configuration in The Cloud somewhere, and the concordance team has reverse-engineered the communications between the MyHarmony app and the Logitech servers and written a Linux client for the MyHarmony system called mhgui. This seems to work fine - I can edit my config in mhgui and then use the smartphone app to trigger a sync of the config to the hub. The concordance developers haven't fully figured out the sync process for the recent generations of Harmony devices, though, so you can't program the hub via a USB link to a Linux PC yet.

So far I'm pleasantly surprised - I thought this would be a just-bearable sideways/backwards move from a fully-functional 880, but actually it feels like a decent upgrade. The hub is actually more reliable than the 880's transmitter at long last, the whole setup works reliably without any breakage or much quirkiness, the programming software is fine, the Android app is decent, and the hardware remote is (as everyone says) so simple it's awesome. It feels like it should stand up to long use pretty well as well, but only time will tell.

These days, if you want something like a Harmony, a Harmony is pretty much your only choice. There are programmable remote apps for a few smartphones with IR transmitters, but they're kind of a joke compared to Harmony; relatively tiny device databases, and generally pretty bad at 'Activity'-type control where they have to set multiple devices to different states and control different devices as part of a single remote 'profile'. Thinkflood, the company behind the Redeye, went out of business. Samsung has a thing, but again, it's not close to Harmony standards. So it was kind of a problem that for a few years, Harmony devices seemed to be a long way below Harmony standards. But it seems like they've gone a long way to righting the ship again with the current gen of hardware and software, thankfully. I'd certainly recommend the Smart Control, and you can get it for a pretty damn reasonable price at present (I paid about CAN$120 for mine).


Scott Collier wrote on 2014-07-17 20:07:
Nice writeup Adam. We just merged a contribution for owncloud 6.x to the Fedora-Dockerfiles repo earlier today. Just thought I'd share that with you since you are working on owncloud. https://github.com/fedora-cloud/Fedora-Dockerfiles/tree/master/owncloud