Monday, August 13, 2007

Open Source Consumer Electronics Platform

Thinking about the business of consumer electronics, it seems that most devices are now knocked out in China by the (tens or even hundreds of) millions. It appears that a device is developed and then the entire batch is manufactured in one go. The resulting pile of devices is stored in a warehouse and pushed into whatever supply-chain exists to move the product. Once all the inventory has been moved, a new device with an updated (hardware) specification is produced, repeating the cycle.

In this sort of product cycle development is at best a nuisance the costs of which which are minimized by utilizing standard components. This can be seen with cheap MP3 players or low-end digital cameras which all seem to sport the same features at the same time as a new chip set is released.

As an aside note, the story is slightly different for a recognized brand which may build upon past devices to strengthen the brand itself. Take Apple, for example, who have a clear platform strategy for the iPod where one generation builds upon the previous generation. The iPod firmware has now reached a level of maturity where few if any updates are required and the (software) feature set seems fairly stable.

But at the bottom of the pool development carries little return past the current device. There is little evidence that the software of these devices improve over time. For an example, take low-end MP3 players, all of which seem to share a common bug and have been for years: the playlist is sorted by the order of file creation on the device. It looks like there is a chipset out there which likes sorting this way ...

The limitations introduced by this approach to development may be tolerable in a simple MP3 player or digital camera, but what about a DVD recorder? Do you remember when programming a VCR was pas the ability of many (if not most) consumers? If you want to experience deja-vu, go an purchase a cheap DVD recorder and try to reliably record shows off air using the timer. Assuming you get the media compatability mess sorted out programming the device will prove to be a challenge. And even if that works, you may find that after you have missed the third show because something inexplicable went wrong with the recording you will want your VCR back. At least I did.

Clearly there is a steep learning curve for the makers, even though other people solved all of the issues with VCRs years ago.

It would be easy to bash the manufacturers for these shortcomings (and often I do). I do think, however, that these companies are really (and I mean REALLY) good at knocking out hardware at the lowest possible costs. They are not (and most of them probably never will be) consumer device developers or software developers. That is simply a different problem domain.

So what can be done? Looking at Apple again, Apple do their own user-experience development and then farm out the software development to a specialist, at least partially. If you don't believe me, look at the credits on an iPod. Manufacturing is handled by a number of companies who specialize in this.

This is, of course, a league in which many of the class of manufacturers mentioned above may aspire to but will never reach. There is a solution however: open source the device.

Imagine this: a company designs an MP3 player with the usual software, just like everyone else. Then they sit down and write a complete manual on the hardware and the registers of the chipset that is used suitable for a programmer. They sell the player and release the documentation for download along with the tools required to upload new firmware to the device. What will happen?

My answer: how fast can you say Linux?

It is almost guaranteed that someone will create a new (and better) firmware for the device and release it as open source. Now people buy the cheap player to run the cool firmware. Sales go up and more people become interested and contribute to the software. Pretty soon the little company is selling players like the proverbial hot cakes with no software development effort on their own.

This works for a number of router and access point manufacturers, so why not for consumer electronics manufacturers?

Skymaster DVR 7400

I purchased a Skymaster DVR 7400 digital satellite receiver with time-shift capability. In the box is the receiver itself and a plastic remote control plus the batteries for the remote as well as a user manual with instructions. The receiver appears well-built and sold from the outside. The remote is a bit on the light side of comfortable and doesn't feel pleasant in my hands. It is perfectly useable, however, so I won't complain.

Hooking the receiver up was a snap: connect the satellite feed to the satellite input and one of the two SCART outputs to the TV. There is also an S-Video output as well as an optical S/PDIF digital and RCA analog stereo audio outputs all of which I did not use.

Upon turning on the receiver it automatically found the Astra 19.2°E satellite that my dish is aligned to (this is a no-brainer since it is practically the default satellite here) and tuned in the channels. Wonderful!

The EPG (electronic program guide) implementation is strange: it seems to download all data in real-time, so that it often takes a while to actually get information. There is a hard drive in the device, so why isn't the information cached there? And while I am wondering: why is the program description slowly scrolled in a separate window automatically every 5 seconds or so instead of allowing me to scroll manually at my own pace?

The EPG is optimized to show what is on a single channel (or up to 4 different channels) for the next few hours. This works well and could be improved by a mode that shows what is on all the different channels at the same time.

It is fairly easy to program a show for recording: a simple button press and after that a confirmation is all that is required. It is less easy to see what was actually programmed afterwards, you have to scroll through pages of individual timer settings which do not seem to have the show title set reliably.

The recording seems to consistently start 2 minutes late. The only way to work around this that I could find was to manually set the start time earlier.

Playback works fine some of the time. I had one show which started skiping about 25 minutes into the recording. There where short (1-5s) pauses in playback every minute or so. After 30 minutes the receiver froze and had to be rebooted to accept any input at all from the remote. This behavior was consistently repeatable.

I had recorded the same show off the same satellite feed using the ElGato EyeTV and everything was fine. The problem was clearly not with the feed. I suspect a hardware or software bug in the receiver.

The manufacturers website did not offer any helpful advice. There was a kind offer to call a premium-rate number for support, an offer which I politely declined, as I always do. The receiver was bought as an entertainment device. I do not find bugs to be entertaining, quite on the contrary. So I gave the device back and will spend my money on something else.

2 stars out of 5.