Have you touched an embedded system today? Chances are you have... and you didn't even know it.
...definitions always help.
"An embedded system is a computer system designed to perform one or a few dedicated functions often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal computer (PC), is designed to be flexible and to meet a wide range of end-user needs. Embedded systems control many devices in common use today."
So what does any of this have to do with Flash? I'm gettin' there...
A few months back I was coming back from Boston... when my car started acting funny. Acceleration was sluggish and fuel consumption took a quick turn for the worse. I was very lucky that I was able to hobble the last few miles home. The next day, I pulled out my trusty Actron CP9145 and plugged it into the OBD connector in my car. Hmm... it turns out that a series of sensors in the transmission were failing and were the source of my woes; I wish I had known this before heading out.
From bumper to bumper modern vehicles have dozens of sensors... all monitored by an onboard computer (embedded system). The trouble is that what happens in and around that computer is typically a black box with only a few very generic indicators / warning lights to let the driver know that something bad has already happened (e.g. oil light, gas gauge, engine temp, etc). The only way to unlock the wealth of information inside this system for preventative maintenance is to use an OBD scanner - which is essentially a crazy expensive and specialized UI for vehicle diagnostic information. I suppose you could buy one and duct-tape it to you dash... wait! I have an idea.

Imagine for a minute... if at the beginning of my trip, as I started the car, a warning about the failing sensor was shown on the in-dash display. This little tid-bit of information could have saved me a considerable amount of headache. The good news is that automotive manufacturers are already thinking down this line and are giving the show-and-tell treatment to some of their prototypes.
What makes the sauce even sweeter is that embedded systems are becoming more and more powerful and have started to take on the characteristics of generally purposed computers (e.g. more rom/ram, faster processors, general/shared operation, direct interfaces, and support for graphical displays).
The bottom line is that Flash makes a lot of sense as the tool-of-choice for the UI in embedded systems. Generally speaking it's a well documented and mature framework for developing highly customizable (styled) interactive interfaces. What's the next step? Well... connectivity between Flash and embedded systems needs some work. There are quite a few tutorials on the Internets as well as conference presentations on the topic but none that I've found focus on a stable and production worthy approach to interface Flash with sensors, switches, microcontrollers, and embedded systems. Merapi is good... but we need more options.
Join me in my next post: Five Ways to Connect Flash to Embedded Systems