Design Article
Open source in consumer electronics: What, why and how
Jason Kridner, Texas Instruments
11/5/2008 12:00 PM EST
As the primary gateway to voice calls, Internet browsing, audio and video applications, and imaging display, demand for consumer electronics are naturally increasing. Specifically, there is a need for more choices in hardware features, software applications and innovative user interfaces (UI) packaged together in portable devices that are customized in various shapes and colors. To meet this growing demand, consumer electronics manufacturers look to open source software and hardware platforms that allow unbarred innovation. In this article, we'll examine why and how manufacturers engage with the open source community, where open source Linux is and isn't succeeding, and how Texas Instruments Incorporated (TI) is participating in various open source projects and organizations, including Google's Open Handset Alliance (OHA).
The move to open source
The move to open source in consumer electronics is driven by fundamental changes in embedded components such as system-on-chips (SoC), processors and embedded devices, which we'll define here as any programmable electronic other than a personal computer (PC).
One fundamental change, driven mainly by silicon manufacturing and architecture advances, rests in the fact that the performance of embedded devices is within reach of our desktops. This allows embedded devices to run the same or highly similar fundamental operating systems (OS) and graphical user interface (GUI) toolkits as desktops. This has made embedded platforms accessible to large numbers of developers resulting in the boom of embedded software innovations we're beginning to see. Applications that previously were only available on desktops are now smaller and cheaper, and can easily be customized and integrated onto the smaller, embedded devices consumers crave.
While embedded devices are almost starting to look and act like mini PC's, they also leave behind much of the fundamental OSes associated with traditional desktops. With PCs, users expect decades of legacy, proprietary software to work—keeping them locked into the same basic OSes and UIs to access information. In the rapidly-evolving consumer electronics market, however, consumers do not have much, if any, legacy software, and they're continually introduced to new, innovative UIs and ways to personalize their applications, which increases their popularity in the market.
To meet the rising demand for open source software and hardware, vendors often support consumer electronics manufacturers by offering the driver support for open source applications. For instance, several silicon vendors, including TI, offer Linux board support packages (BSP) for embedded devices targeting consumer electronics. These BSPs provide manufacturers the fundamental tools to utilize open source software without being constrained by excessive legacy software, enabling them to pick and choose the building blocks for their solution.
Another fundamental change is the rising complexity in embedded applications. In the past, building an embedded product from the start was easy. Anyone could get a small real-time operating system (RTOS), read a book on how to build up a microscheduling kernel, write the UI code and essentially design the entire platform. However, each of these layers is becoming more complex in today's market, and building a product from concept is simply too expensive. Development teams can buy a solution, but system-level complexity makes this complicated unless they are part of a broader hardware/software ecosystem. This obstacle causes consumer electronic manufacturers to consider open source solutions, where they can mitigate complexity and leverage the work of other contributors.
Where open source is—and isn't— succeeding
Linux
The most successful open source projects are the ones with clear business models that productize the shared investments of the community. Some companies choose to invest considerable expertise to support Linux because the return on investment is clear. In particular, developers enjoy the affordability (royalty free) and a handful of additional benefits. Additionally, Linux is more configurable than commercial OSes. When innovating around Linux's core OS components, such as the UI, peripherals, networking or file systems, Linux has shown impressive flexibility for creating portable media players, set-top boxes, navigation systems and more. In general, Linux is winning the race in which high levels of customization and cost sharing is ideal.
Where Linux is losing is in low-customization areas and in integrated vertical solutions. When integrating proprietary IP with Linux, it can be difficult due to the closed nature of the proprietary IP. Often, legal questions arise as well. For instance, if someone contributes code to the kernel that violates an IP agreement, who's liable? What about digital rights management? However, propriety companies still have the opportunity to participate outside of the kernel through the distribution chain by implementing and gaining control over the growing Linux-based systems.
Currently, most Linux development is centered on enterprise applications where hardware companies participate in order to share the software investment required to support the latest server platforms. Embedded activity is also picking up rapidly, and not just in mobile handsets.
For some customers, open source is a solution to rapidly integrate new functionality into products and enable innovation at all layers of their software design, without breaking the bank. If a hardware system has at least 32 megabytes (MB) or more on-board random access memory, the development platforms will typically ship with Linux and with system support.
For example, TI supports Linux on select OMAP processors and digital media processors based on DaVinci technology. TI's OMAP 3 applications processors target a wide range of handsets, Smartphones, mobile Internet devices and other portable electronics with advanced intuitive UIs and features, while processors based on TI's DaVinci technology target digital video-oriented electronics. The OMAP3525 and OMAP3530 processors even integrate a power-optimized version of TI's imaging, video and audio accelerator used in TI's DaVinci technology for advanced video streaming and display.
Figure 1 below shows a development board for the OMAP35x processor supporting open source Linux and will support Windows Embedded CE 6.0 in the future. Originally, TI supported Linux only through commercial distributions, such as MontaVista Linux. In response to growing customer demand for more flexibility, however, TI increased its support for community-based offerings by contributing driver-level support for TI devices in the Linux kernel.

Figure 1. TI's OMAP35x evaluation module (EVM) features support for an open source Linux BSP (based on kernel 2.6.22).
TI is also engaged with a number of organizations promoting Linux, including the LiMo Foundation, Linux Foundation, Consumer Electronics (CE) Linux Forum, and Google's OHA. Short, high-level summaries of the organizations are noted in Figure 2. For more info on TI's participation within Linux and open source visit: opensource.ti.com.

Figure 2. Short, high-level summaries of the Linux organizations TI is a member of.



Anatolio
10/3/2011 3:08 PM EDT
Excellent article!
(I'm developing small OS (StartOS) and now thinking about source...). People advice to share it, but I'm afraid to loose all efforts).
Sign in to Reply