Closed Hardware: A Real Limitation

Anyone that knows me know thats I go to great lengths to avoid using closed source software. Increasingly, I'm becoming aware of how limiting closed source hardware is as well. Take, for example, the Sirius satellite radio receiver I use in my car on a daily basis.
The designers at Sirius added a neat feature to the device that alerts you when a song or clip you've marked in memory comes on a different station than the one you are currently listening to. So, if I'm listening to Andrew Wilkow and a great song by Five Iron Frenzy happens to come on one of the Christian music channels, the device beeps and gives me the option of switching to that channel. My radio also allows me to pause content and resume listening to it later, so long as the radio doesn't power down. Unfortunately, if you are playing content delayed and you choose to respond to one of these alerts, it just throws away the remainder of the program you have cached and switches to the live broadcast of the alerting item.
Though I haven't seen the device's source code, I imagine that it would be trivial to add a secondary function (say when you press "Fast Forward" at an alert screen rather than "Enter") that changes the channel and feeds the alerting content into the buffer for play at the appropriate point in the stream rather than simply throwing away the buffer and changing the channel. The feature could even automatically switch back to the original channel and continue recording when the title information indicates the alerting item is at an end.
Additionally, users could use some screen to change the channel without throwing away their saved content buffer. Take this scenario: I run into a store at 4 PM while listening to some 3-5 show I like, so I pause my radio. When I come back out at 4:45, I have 45 minutes of saved radio to listen to. When 5 O'Clock rolls around, I still have roughly half an hour of saved radio but the next program I want to listen to is on a different station- I'm stuck. The only way I can change the channel is to throw away the buffered content. Again, it would be fairly trivial to modify the software to allow you to change the channel while maintaining the buffer, but its not a supported feature and the closed source nature disallows me from adding it.
The point is this: If the hardware were open source, I could modify the code to do just that and release the code for Sirius fans everywhere to enjoy. Who knows, they might even gain a subscriber or two because of that new feature and ones like it written by other geeks across the country.
This is one small example of closed source hardware limiting what we can do. Closed APIs for video card drivers have limited gaming potential on open source operating systems for years. Open source cell phones would allow us to do so much more while mobile, but won't appear for a long time as providers depend on artificial limitations for income. (Ringtones, anyone?)
There is, however, light at the end of the tunnel. More manufacturers are looking at linux as a viable option for small electronics (including cell phones!) and eventually, there should be enough linux-powered devices out there for those of us that just must tinker.
- Josh's blog
- Login or register to post comments
