Since the early days of the Web, server-side executable content has been an important Ingredient of server technology. It has turned simple hypertext retrieval into real applications. Not surprisingly, the idea of remotely controlling devices through the Web1, 2 has always seemed near at hand. Because hypertext user interfaces can run on any Web browser, UI development boils down to Web content creation. Furthermore, thanks to the HTTP standard's smart and scalable nature, we can fit embedded servers into simple 8-bit microcontrollers with only a few Kbytes of RAM and ROM
Ever since we started integrating hypertext browsers into mobile phones, people have proposed using mobile phones as remote controls. Now, with the provision of short-range wireless connectivity- for example, through Bluetooth mobile phones and other handhelds might substantially change the way people interact with electronic devices. Here, we report on our effort to create a low-power wireless microserver with a very small form factor and connect it to mobile devices using standard consumer technology.
EMBEDDING SERVERS INTO DEVICES
There are several ways to make things visible on the Web. In the simplest case, a server hosts an item's Web presence without a physical connection to the item. A handheld device reads links between the item and its Web presence, connects to the respective URL, and retrieves information about the item. A well-known example for this approach is the Cooltown Museum, 1 where small infrared transceivers are located close to the pictures. When coming close, the visitor's PDAs receive Web links that point to the information pages for the particular picture. Unfortunately, interacting with the item itself is impossible. Interaction with a device would be possible if the device had a wireless control interface to its internal logic. For example, the mobile terminal could download a device-specific user interface application from the Web and use it to control the device through a device-dependent protocol (see Figure A1). This approach might become feasible when we can download Java applications into mobile terminals with access to Bluetooth APIs.
Accessing the device immediately and locally without an Internet connection would be possible only if the device contained an embedded Web server (see Figure A2). An execution environment, such as serverside scripting, would be required to interact with the device's logic.
Short-range connectivity seems to be an obstacle, but it empowers location-aware applications through the wireless link's limited reach. If a user wants to adjust a microserver-equipped TV's volume, he or she does not want to accidentally interact with somebody else's TV. Therefore, short-range wireless radio links, preferably using unlicensed bands, are well suited for networking things and people.