Low-end Microcontrollers for Wi-Fi Clients
The market for low-end processors in Wi-Fi client stations is a target of opportunity as standards solidify and points of presence become conveniently accessible.
Glossary of Acronyms
AP Access Point
BSS Basic Service Set
ESS Extended Service Set
GPIO General-Purpose Input/Output
HTTP Hypertext Transfer Protocol
I2C Intelligent Interface
LCD Liquid Crystal Display
MP3 Moving Picture Experts Group Layer-3 Audio
PC Personal Computer
PCMCIA Personal Computer Memory Card Industry Association
ROM Read-Only Memory
RTOS Real-Time Operating System
SPI Software-Programmable Interface
Wi-Fi Wireless Fidelity
WLAN Wireless Local Area Network
Wi-Fi networks use radio technologies defined by IEEE standards 802.11, 802.11b, 802.11a and 802.11g to provide fast, reliable wireless networking. It is the small, compact mobile client devices as well as industrial, office and home wireless automation where 8-bit Wi-Fi-enabled microcontrollers can be used extensively as cost- and power-saving alternatives.
WLANs can be set up in peer-to-peer (ad-hoc mode) or client/server (infrastructure or BSS mode) configurations. This article will discuss client/server WLAN implementations.
Client/server WLAN Infrastructure
A client/server WLAN infrastructure is comprised of two ends: an access point and a client station (see Figure 1). The discussion that follows defines each end and their technology.
|Figure 1, above. WLAN infrastructure showing access point and client stations. Click image to enlarge|
Access Point A wireless AP acts as a bridge between wireless clients and the WLAN or Internet. An AP requires powerful hardware to handle processing and distribution. The AP must bridge from one wireless interface to another wireless interface, or to a wired interface in the case of an ESS consisting of many stations, APs, and integrated LANs. It must also communicate with other APs near it and manage channel switching to avoid interference among the APs.
An AP requires the sort of power that only a 32-bit high-speed processor can provide. But low-end, 8-bit microprocessors can play an important role in the client station portion of the Wi-Fi model.
Client station Client station devices range from small handheld devices to laptops, PCs and Wi-Fi-enabled vehicles. The client station is the end point of a WLAN data network and as such requires no bridging. Likewise, it does not need to worry about channel switching or other communication management functions.
Because of its inherent simplicity, the client station portion of a Wi-Fi network is an ideal application for the 8-bit market. Powerful 8-bit processors built on mature and inexpensive processors such as the Z80 offer an elegant solution. Such processors are built on an enhanced Z80 core and run at speeds up to 50 MHz. These processors can enable embedded Internet access in small client station applications where low power consumption, cost effectiveness, and simple and compact design are key factors, while simultaneously maintaining performance and throughput goals. Compact client stations can find homes in applications such as on-board navigation systems, portable entertainment devices, industrial, office and home automation controllers and consumer electronics goods. Such applications are ideal targets for 8-bit processor-based designs to handle the communications processing needs.
Today's 8-bit microcontrollers and processors have the advantage of being inexpensive, but they also are potent enough to perform complicated tasks. These devices are, and have been, used for data networking and telecom applications and have served applications that need wireless connectivity for some time.
Consider a fully automated building where air-conditioning, smoke detector, security alarm and other sophisticated systems are deployed using microcontrollers. In a typical application, the administrator or engineer can control and monitor settings using a Wi-Fi-enabled laptop in any Wi-Fi radio periphery or hot spot. Devices to be controlled and monitored are connected to microcontrollers through various interfaces either hanging on an I2C bus or connected to GPIO.
Such a system can be a single or multithreaded application, depending on the requirements and system complexities. Some of the minimal hardware requirements include:
A custom board with an 8-bit microcontroller having serial and GPIO interfaces and timers (suitable with a minimum of 64 to 128 k of on-chip Flash, as with the EZ80Acclaim series of controllers, to burn the image).
On-board Wi-Fi chipset or a PCMCIA interface with WLAN card.
(Other features, such as I2C/SPI bus support, are requirement-specific.)
Software requirements include:
A lean TCP/IP software suite.
A wireless interface driver.
Drivers to control specific devices.
An application running on top of suite, preferably an HTTP server for some custom application.
RTOS-based system to support multitasking.
Figure 2 shows components in action for a microcontrolled air conditioner. The air conditioner's temperature sensor and controller are interfaced to the microcontroller through GPIO. The driver can read from and write to a digital temperature sensor through these GPIO ports and is called from an HTTP server to get and set temperature information.
|Figure 2, below. Components in action for a microcontrolled air conditioner. Click image to enlarge|
Typically, a building manager or engineer who wants to monitor the building temperature or change the temperature of any part of the building would open their laptop computer, start an HTTP browser program and connect to a specific controller server to get and set information. The HTTP browser program could be a custom client depending on design, complexity and other requirements.
A request is delivered to the server via the AP. The server detects the request asking for current temperature. It calls the routine to read the temperature from the device, prepares a Web page, places the temperature information there and sends it back to the client through the Wi-Fi interface.
The HTTP server sitting on the controller must be able to serve both static and dynamically generated Web pages (to show the updated status of the device being controlled). Static Web pages are kept in ROM or Flash as constant-structured buffers keep the file name, size and corresponding buffer. There is no need for a file system to manage these files.
If the configuration does not use large .jpg and .gif files in the Web page, and if a lean protocol software suite is used, the footprint of the whole image can be limited to less than 64 kb. Up to 128 kb can be burned into the microcontroller's on-chip Flash or ROM.
A similar concept can be applied to home automation to control Wi-Fi-enabled refrigerators, microwave ovens, washing machines, electronic locking systems or any number of Wi-Fi-enabled devices, wirelessly from within the home or from any Wi-Fi hot spot.
The skeleton design shown in Figure 2 can be used at multiple places with one modification or another, depending on the device to be controlled and the application. For example, a similar system used for vehicular navigation would require some I/O device such as a touch screen graphical LCD display device and a driver to read and write. This helps with building the client part of protocol applications, such as a customized browser and telnet client.
The ability for vehicles to communicate with one another using on-board systems is a perfect client station application niche for 8-bit microcontrollers. Wi-Fi-enabled microcontrollers can be used for security and remote alarming. If a car's smoke detector and security system are connected to the microcontroller, when anything goes wrong, the Wi-Fi-enabled car can send an email message to draw the owner's immediate attention.
Vehicles equipped with such simple systems could become aware of one another as well, thereby improving road safety by activating proximity-warning systems to alert the driver.
The same on-board system could be used to obtain up-to-the-minute traffic information in dense urban and suburban commute corridors, helping drivers choose alternate routes and alleviate traffic congestion (intelligent transportation systems).
Wi-Fi in the Consumer Marketplace
Wireless home automation using a Wi-Fi home gateway is another ideal application for 8-bit controllers. For example, microwave ovens, refrigerators and washing machines can be controlled wirelessly from within the home and from any hot spot.
The applications in the consumer marketplace for Wi-Fi-enabled personal electronic devices are expanding as merchants look for new ways to attract customers. A Wi-Fi-enabled personal electronic device could, for example, be used in consumer electronics stores to replace pull tickets for items a customer wants to purchase. Using a simple device, the customer could order a desired item, pay for it through a wireless payment system and continue shopping while the item was pulled from stock in real time. Wireless electronic payment systems offer opportunities for 8-bit client station applications. With appropriate Wi-Fi and electronic data interchange technologies in place, mobile Wi-Fi client stations could function as wireless debit or credit cards for electronic toll collection, drive-through window payment, and transaction management at gas stations, just to mention a few.
The possibilities in the consumer entertainment marketplace are beginning to reveal themselves to the minds of creative design engineers as well. Imagine, for example, equipping portable MP3 players with Wi-Fi transceivers built with inexpensive 8-bit processors. Add the ability to process cashless transactions, and consumers can walk into any retail music outlet, select music, download it and pay for it in one simple, convenient process. Such seamless transactions are particularly attractive because of the low overhead required to provide such connectivity using 8-bit components.
For the traveler, a low-cost, 8-bit processor could be used to create a small Wi-Fi-enabled digital diary that could download information such as road maps and traffic information from a Wi-Fi-enabled vending machine. Such devices might even be used by travelers' organizations such as the AAA in the United States, enabling them to provide added value to their members.
Wi-Fi is an adolescent technology that is rapidly growing into a sophisticated adulthood. As it reaches maturity and as standards and systems stabilize, the Wi-Fi client station becomes increasingly attractive for compact devices built using proven, inexpensive 8-bit processors. The cost-effectiveness and low power characteristics of 8-bit processors create more accessible market entry points for small- and medium-sized manufacturers, which will ultimately lead to greater variety and choice for the Wi-Fi consumer.
About the Author
Ajay Jadhav has a B.S.E.E. from Jiwaji University (MP) in India. He works as a software engineer at ZiLOG India. You can reach him at email@example.com.