[Technology Report]
My Embedded System Is On The Internet–What About Yours?
In the fight for seamless communications, embedded and information systems are joining forces and drawing upon the Net.
The Choice May Not Be Obvious Deciding on the method of communications for an embedded device will be one of the key initial decisions for product design. In some cases, such as mobile phones, the decision is obvious. But with products like home appliances or office equipment, the answer won't be so obvious. The choice between the two will likely be based on the availability of gateways and servers to provide access to all of these devices.
An equally critical issue will be determining the amount of processing power and intelligence that resides on the device. Remember, these factors also will influence the network architecture. In the past, this was a straightforward decision because it figured directly into price and performance considerations. But in a future of internetworked servers and devices, the equation certainly becomes much more complex.
There are two fundamental models for building communications into embedded devices. The first is to put as little intelligence as possible into the device, and depend on most of the services and applications being provided by a server. Or, a full real-time OS can be incorporated on the device. It could be made to act as an intelligent client to a less powerful server.
The first model, probably best exemplified by EmWare's EMIT technology and its Embed The Internet (ETI) consortium, provides for cheaper information appliances. They'll need less powerful processors and less memory. EMIT, for example, can run on 8-bit microprocessors and under 1 kbyte of memory. Therefore, a type of networking can be built into a wide variety of everyday devices.
Traditional RTOSs As Well The latter model is represented by traditional RTOSs, such as QNX and Windows CE, which have full OS implementations right on the device. These systems can store data directly on the device and act as a full-fledged member of the network. But this reduces the pervasiveness of networking, because the technologies have such high computing requirements.
The model that dominates will influence the extent of communications devices in the years to come. QNX and Windows CE require 32-bit processors and several megabytes of memory to fully implement communications on an embedded device. There may be major systems, such as automobiles or factory-control systems, that join the network to report operational and diagnostic data. But don't expect to see QNX running on a microwave oven.
EMIT can be implemented for pennies per device, though, which makes it possible to put basic communications into virtually any electronic device: refrigerators, microwave ovens, utility meters, and even vending machines. EmWare incorporates a lightweight proprietary protocol that connects a minimal device to an EMIT gateway (Fig. 1). That gateway, running a conventional server OS such as Linux or Windows NT, translates the EMIT protocol into TCP/IP for transmission of data across the Internet. In this regard, it works similar to the WAP discussed earlier on.
Another minimal solution is NetMedia's BasicX, a custom processor with both an RTOS and a subset of Microsoft's Visual Basic incorporated on the chip. The OS contains multithreading, interprocess communications, task management, a real-time clock, interrupt processor, event handler, and semaphores. With the VB engine, you'll typically write a VB program on a PC and download parts of that program to run on the BasicX.
Note that EMIT and other embedded technologies solve a difficult problem by turning the usual Internet model on its head. For traditional computing, the smaller system is typically the client. It runs the web browser to make requests on the network. In EMIT, the device is actually the server, with the ability to respond to simple HTTP requests. It's the other end of the network that makes those requests using larger and more complex browser software.
There's probably room for both thick and thin devices. More complex devices will need the services provided by a full RTOS, but they'll typically be limited to those that can justify a 32-bit processor. EMIT and WAP make it possible to network virtually everything, providing end users with the ability to at least query devices remotely. And keep an eye out for what might turn into a real dark horse in the operating-platform race (see "Will Linux Play An Embedded Role?," p. 102).