The basics of adding 802.11n wireless connectivity to your embedded designEach embedded system in the billions of electronic devices and systems that are all around us addresses a specific dedicated purpose in a very wide range of applications - for example medical diagnostics, geological analysis, electronic surveillance, cash registers the list is almost endless.
They all use microcontrollers to implement a portion of their functionality, and most of them communicate with the outside world - to other devices or control systems, or to a human interface. Connectivity through wireless means provides a great deal of flexibility to the embedded systems, and indeed, in many cases wireless is the only means possible.
In this article, we examine how wireless connectivity based on the IEEE 802.11n standard can be integrated into embedded systems, providing a universal IP based networking that is future-proof, and enabling the 'Internet of Things.'
Throughout this article, we use the term WLAN for referring to the wireless protocol defined by the IEEE 802.11 standard. This term is interchangeably used with 'Wi-Fi' in popular use.
General Characteristics of Embedded Systems
A generic architecture of an embedded system is illustrated in Figure 1 below. The core control functionality is implemented in the microcontroller, and specialized hardware interfaces and peripherals provide the special functionality needed in the particular system.
For example, specific components in the system may include a temperature sensor, an actuator, a keypad, an LCD display, or a camera. Since these systems are largely application specific, they tend to utilize the minimum set of components required for the application.
Memory is therefore limited, and the microcontroller's characteristics - clock speed, number of bits and interfaces - are usually just sufficient to run the applications functionality. The introduction of a new connectivity mechanism would thus be feasible, in most cases, only if it entails little additional overhead.
|Figure 1: A Generic Embedded System's Components|
Connectivity comes in several forms. For example, a hardwired link with proprietary data formats, a standard point-to-point serial link carrying proprietary data, or an IP based network connection transporting data across an enterprise network or the internet.
It is easy to see that standard IP based transport provides the greatest flexibility in embedded systems. The price to be paid is complexity in implementation.
Further, many embedded devices are battery powered - usually due to the circumstances of their deployment and the nature of the applications they serve. These devices naturally veer towards the use of a wireless link through which constant connectivity can be maintained.
The best choice in this scenario would be the most energy efficient wireless mechanism that also directly provides IP based transport. Figure 2 below illustrates an embedded system with a point-to-point serial link, showing the format of data transfer.
|Figure 2: An Embedded Device Communicating via a Proprietary Serial Link|
The serial link physically connects the embedded device to its controller, with the obvious limitations of having the two being in proximity and not having the flexibility of substituting the control function on any other piece of equipment. These limitations are done away with IP based wireless transport.
There are several wireless options available. Our focus is on IEEE 802.11n Wireless LAN, but first we briefly look at Bluetooth and Zigbee. Bluetooth is a wireless protocol for exchanging data over short distances and popularly used in audio headsets. Zigbee is a low-power wireless communication specification primarily aimed at sensor networks.
Both these protocols, however, suffer from two disadvantages. First, they offer low on-air data rates and therefore spend more time on air to transfer data compared to other protocols such as WLAN. Overall, they thus spend more energy in transferring a given amount of information.
Second, they require a complex networking stack - especially so when an IP based transport interface is required. Figure 3 below shows a scenario where the embedded device is equipped with a WLAN interface and can thus to its controller located anywhere on the IP based network.
|Figure 3: Embedded System with WLAN Interface Connected to a Local Area Network|
As shown in Figure 3 the embedded system. The microcontroller's serial or UART interface is used here to connect to the WLAN module. The other common choice of interface here is the Serial Programming Interface, or SPI. SPI provides a synchronous serial link with much higher data rates possible than UART. Depending on the microcontroller used, the SPI clock speed can stretch up to 50 MHz or even beyond.