Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Forum

  Home arrow Linux For Devices Articles arrow Using Macromedia Flash as an embedded device UI

Using Macromedia Flash as an embedded device UI
By Linux Devices

Rate This Article: Add This Article To:

This whitepaper from Vibren Technologies discusses the use of Macromedia Flash as a technology for creating rich, portable, maintainable, and consistent user interfaces across multiple models and generations of embedded devices, and outlines system requirements and porting issues.

It also includes an example of an embedded device that uses embedded Macromedia Flash in its user interface. Enjoy . . . !



Using Macromedia Flash as an embedded device UI
by A. Charles Beddoe and Ray Shapiro

Why embed Flash?

The runaway success of Internet-based Flash technology has been remarkable. Macromedia and its partner Vibren Technologies are now attempting to duplicate this success in the embedded arena as well, by making it easier to obtain (and pay for) smaller volumes of Flash licenses.

What makes the use of Macromedia Flash compelling in embedded applications is that embedded Flash provides the same moving picture and moving word interface as its desktop/Internet-based counterpart. Also, because Flash displays embedded content in the same manner as it does desktop content, Flash content can be developed on any platform that supports the Macromedia Flash authoring tools.

Macromedia Flash has become the de facto standard for developing rich user interfaces. It has become ubiquitous on the Web -- the favorite technology among designers looking to create compelling user experiences. Consequently, Macromedia Flash is also becoming a must-have software component of Web-enabled embedded devices.

But Flash has far more to offer embedded devices than compatibility with Web-browsers. Macromedia Flash can be used to create great user experiences, and can serve as a platform on which to build a richer, more immersive user interface (UI) that can add value to embedded products.

The same tools and rendering engine that are used to build and display Web-based Flash content targeting the desktop can also be applied to embedded designs. The main distinction between desktop and embedded Flash development and deployment tends to be factors such as display size and processor performance. Embedded devices typically have smaller displays, less processing horsepower, and reduced memory resources, compared to desktop computers.

Benefits of embedded Flash

One key benefit of Flash is that it can form the basis of a UI that is consistent across a company's complete product line, regardless of processor, operating system, or other variations. This is possible because Flash enables the UI to be implemented by means of content, rather than within the embedded software. Additionally, the Macromedia Flash player itself is microprocessor- and operating system-agnostic.

A unified look and feel is good for branding. It also helps reduce tech support issues, because users only need to learn one UI. Additionally, a consistent UI can be maintained regardless of the inevitable hardware and software changes that are made to the company's products in the future.

Another advantage of the embedded Flash UI approach is that the ability to use readily available graphics opens up a variety of creative opportunities. This can help designers embed that all-important "consumer appeal" into the devices they develop.

Additionally, the local (embedded) content required to implement the device's UI is created by means of standard Flash authoring tools. This makes it relatively easy (and inexpensive) to develop, maintain, and enhance the device UI, and to adapt it to other product models and next-generation designs.

Consider a product line that includes a non-portable model, a small form-factor portable model, and a highly compact handheld model -- all based on different processors and operating systems. Implementing identical or even similar UI's on all these devices would normally be a daunting task. Using embedded Flash, however, it is relativey easy to develop a single, simple, and unified interface.

Good interfaces are particularly important in point-of-sale terminals and wall-mounted security systems. Such devices are expected to have consistent interfaces across all stores or homes, respectively, regardless of user sophistication or technology underpinnings, since some locations may have newer or different product versions. In these situations, consistency contributes to customer satisfaction.

In short, if the proprietary UI software for a company's devices does not provide a significant competitive advantage -- that is, if it doesn't improve revenue, profitability, or cash flow in a direct or indirect manner -- an embedded Flash based solution may well be a more effective alternative from a cost and development resources perspective.

Porting considerations

Although Macromedia Flash is processor and operating system agnostic, it does require certain levels of hardware performance and memory resources to operate effectively. An x86 processor at 366MHz, or an ARM or XScale processor at 400MHz, will generally provide acceptable performance on all but the most complex Flash files. The embedded Flash player itself occupies 1-1.5 MB footprint, typically.


Embedded Macromedia Flash software architecture

The Macromedia Flash player has been ported to x86, ARM, XScale, PPC, MIPS, and SH4 processors, and to Windows XP Embedded, Windows CE, Linux, QNX, and BeOS embedded operating systems. Since the Flash player runs at application level and does not talk directly to hardware, the porting is relatively straightforward for developers with the right experience.

Some porting is easier, some harder. A port to a new embedded operating system presents a few challenges, whereas a port of an unsupported software interface (new browser, filter, etc.) to the Flash player is more difficult, and optimizing for hardware is harder still.

Optimizations of -- or extensions to -- Macromedia's Flash player require broader and deeper skills than those needed for a simple port. Depending on the requirements, hardware programming, graphics rendering, middleware, and operating systems kernel experience may be needed, as well as a detailed understanding of the Flash source code. In addition, after the port is completed, the modified version of the Flash player needs to be tested and verified by Macromedia on the intended target hardware before the final product can be shipped.

Macromedia also offers an SDK with source code, a test suite, and documentation for large volume device manufacturers, and porting services aimed at achieving optimal performance on embedded devices are available from Vibren.

Conclusion

Macromedia Flash offers many advantages to embedded devices. It is powerful, portable, programmable, and easily maintained and updated. And, because it has become so popular on the Web, Flash is tending to become a "must have" feature for a wide range of Web-enabled devices. Perhaps more important, the popularity of Flash has fostered a broad development community that knows how to create compelling content that delivers rich user interfaces that the end users of devices can appreciate.

The decision regarding whether to develop in-house expertise in embedded Flash or to outsource it is likely to be influenced by the company's current product mix and future product plans. In companies with long-term visions of "immersive" interfaces for their embedded devices, it probably makes sense to invest in internal Flash expertise. For short-term or isolated projects, on the other hand, companies may be better off farming out their Flash development to outside services. In either case, thanks to the growing ubiquity of Flash, companies using embedded Flash have many alternatives for Flash content development.

In summary, deploying Macromedia Flash as the basis for user interfaces in today's embedded devices is an attractive alternative to traditional approaches, and is supported by a value proposition that is both affordable and easily achievable. Embedded Macromedia Flash is a technology on the cusp of widespread adoption, and is worthy of serious consideration for next generation user-interactive device designs.


An embedded Flash case study


(Click each image to enlarge)
Macromedia has published a case study about a device maker (CorAccess) that used Flash to create "an engaging, dynamic" user interface for its Companion family of home control devices. According to the writeup, "the UI had to be able to run standalone (rather than connected to a Web browser) and had to be based on open, accessible technology for easy use by the dealers who sell Companion to home and business owners, as well as vendors who embed Companion in their products (such as lighting or home theater makers)."

The resulting product (in this case based on Linux) has been profiled in an article at LinuxDevices.com. Visit Macromedia's website for an interesting, interactive demonstration of the CorAccess Companion's Flash-based user interface. The full embedded Flash case study is also available on Macromedia's website.



About the Authors


A. Charles Beddoe has spent 32 years in the real-time and embedded systems industry, in embedded application development, real-time system deployment, and operating system development. Beddoe holds a B.Sc. in mathematics and an M.S. in computer science.

Ray Shapiro has over 25 years in the computer industry, including 10 years building embedded systems. A veteran of Digital Equipment and SystemSoft, Shapiro was a founder of Rachis Corp, which specialized in software for digital set-top boxes. He also served as Director of Embedded Solutions at Vibren Technologies from 2002 to 2005.



Related Stories:


Discuss Using Macromedia Flash as an embedded device UI
 
>>> Be the FIRST to comment on this article!
 
 
 
>>> More Linux For Devices Articles Articles          >>> More By Linux Devices
 



FUEL Database on MontaVista Linux
Whether building a mobile handset, a car navigation system, a package tracking device, or a home entertainment console, developers need capable software systems, including an operating system, development tools, and supporting libraries, to gain maximum benefit from their hardware platform and to meet aggressive time-to-market goals.

Breaking New Ground: The Evolution of Linux Clustering
With a platform comprising a complete Linux distribution, enhanced for clustering, and tailored for HPC, Penguin Computing¿s Scyld Software provides the building blocks for organizations from enterprises to workgroups to deploy, manage, and maintain Linux clusters, regardless of their size.

Data Monitoring with NightStar LX
Unlike ordinary debuggers, NightStar LX doesn¿t leave you stranded in the dark. It¿s more than just a debugger, it¿s a whole suite of integrated diagnostic tools designed for time-critical Linux applications to reduce test time, increase productivity and lower costs. You can debug, monitor, analyze and tune with minimal intrusion, so you see real execution behavior. And that¿s positively illuminating.

Virtualizing Service Provider Networks with Vyatta
This paper highlights Vyatta's unique ability to virtualize networking functions using Vyatta's secure routing software in service provider environments.

High Availability Messaging Solution Using AXIGEN, Heartbeat and DRBD
This white paper discusses a high-availability messaging solution relying on the AXIGEN Mail Server, Heartbeat and DRBD. Solution architecture and implementation, as well as benefits of using AXIGEN for this setup are all presented in detail.

Understanding the Financial Benefits of Open Source
Will open source pay off? Open source is becoming standard within enterprises, often because of cost savings. Find out how much of a financial impact it can have on your organization. Get this methodology and calculator now, compliments of JBoss.

Embedded Hardware and OS Technology Empower PC-Based Platforms
The modern embedded computer is the jack of all trades appearing in many forms.

Data Management for Real-Time Distributed Systems
This paper provides an overview of the network-centric computing model, data distribution services, and distributed data management. It then describes how the SkyBoard integration and synchronization service, coupled with an implementation of the OMG¿s Data Distribution Service (DDS) standard, can be used to create an efficient data distribution, storage, and retrieval system.

7 Advantages of D2D Backup
For decades, tape has been the backup medium of choice. But, now, disk-to-disk (D2D) backup is gaining in favor. Learn why you should make the move in this whitepaper.

Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
PLATINUM SPONSORS

 


ADVERTISEMENT


Check out the latest Linux powered...

Mobile phones!

MIDs, UMPCs
& tablets

Mobile devices

Other cool
gadgets

Resource Library

• Unix, Linux Uptime and Reliability Increase: Patch Management Woes Plague Windows Yankee Group survey finds IBM AIX Unix is highest in ...
• Scalable, Fault-Tolerant NAS for Oracle - The Next Generation For several years NAS has been evolving as a storage ...
• Managing Software Intellectual Property in an Open Source World This whitepaper draws on the experiences of the Black Duck ...
• Open Source Security Myths Dispelled Is it risky to trust mission-critical infrastructure to open source ...
• Bringing IT Operations Management to Open Source & Beyond Download this IDC analyst report to learn how open source ...




Most popular stories -- past 90 days:
· Linux boots in 2.97 seconds
· Tiniest Linux system, yet?
· Linux powers "cloud" gaming console
· Report: T-Mobile sells out first 1.5 million G1s
· Open set-top box ships
· E17 adapted to Linux devices, demo'd on Treo650
· Android debuts
· First ALP Linux smartphone?
· Cortex-A8 gaming handheld runs Linux
· Ubuntu announces ARM port


DesktopLinux headlines:
· Simulator runs Android apps on Ubuntu
· Hypervisor rev'd for higher reliability
· Pluggable NAS now supports Linux desktops
· Moblin v2 beta targets netbooks
· Linux-ready netbook touted as "Student rugged"
· USB display technology heading for Linux
· Ubuntu One takes baby step to the cloud
· Game over for Linux netbooks?
· Linux Foundation relaunches Linux web site
· Dell spins lower-cost netbook


Also visit our sister site:


Sign up for LinuxForDevices.com's...

news feed


Or, follow us on Twitter...