TechEd 2007: .NET Micro Framework Demonstrated for Embedded Devices
ORLANDO - During an invitation-only demonstration here at TechEd, small device developer EmbeddedFusion demonstrated a prototype programmable small device - actually a circuit board with a 2x3 color LCD display - that is capable of being programmed using Microsoft's .NET Micro Framework. It's a managed code system with which developers can rapidly build programs for embedded devices, and embedded device drivers.
Within the first 20 minutes of programming the card using C# in Visual Studio 2005 (after re-installing the EmbeddedFusion SDK), we were able to construct a simple application that...[drum roll]...blinked an LED on and off.
From a technical perspective, this is more difficult than it seems under the hood. As we learned, embedded devices employ signals on pinouts that are time-specific, while .NET functions are asynchronously sequential.
In other words, they tend to run one after the other, the way things typically do on a PC. So there's already a bit of incompatibility: An event scheme has to be worked up when you connect the programmable device to the PC via a USB cable, in which you have to force the PC to run on a clock.
The skeleton code for doing this is part of the EmbeddedFusion SDK for .NET Micro Framework. We then embellished that skeleton code with test code that samples the inputs every second (or, by our count, every 1000 milliseconds), and that pushes a pin - in the digital sense - every second to flip on and off the LED.
A much more complex sample involves the built-in two-axis accelerometer, and was demonstrated for us. There, a test .NET Micro application was pushed via USB cable into the embedded prototype card, which triggers it to run a ball-in-a-maze game.
On the surface, it looks like a fairly low-order game...that is, until you pick up the card itself and move it around. The active accelerometers scoot the ball around, just like a real steel ball inside one of those cheap plastic mazes you get in a happy meal.
The analogy seems cheap, but the implications are fantastic. What has appeared to embedded developers to be extremely time consuming projects, taking on the order of months to complete, can be finished in a matter of no more than a few days - about as much time as you'd think a programmer should consume to accomplish a similar task on a PC.
During the demo, Rob Miles, who teaches at the University of Hull and is a Microsoft MVP for C# development, professed that with the aid of .NET Micro Framework, he had experienced his finest hour: In a matter of days, he used it to program the lasers that etch date stamps in the labels of Budweiser beer bottles.
Home controls manufacturer Leviton, we learned, uses .NET Micro Framework currently to develop security and energy efficiency devices for homes and offices.
As other guests shared with us, the implications of simple C# programming in the evolution of robotics could be staggering.