Featured Image

The new approach allows Internet-of-Things devices to communicate despite strong interference from WiFi.

by Maanya Shanker

Within the last decade, there has been a massive demand for wireless devices, which is only anticipated to expand more. By 2020, there is a prediction of having 50 billion wireless devices connected around the world.

One communication method is known as ZigBee. ZigBee is an energy efficient, robust communication method which allows for the transmission of data. ZigBee is often implemented in Smart Homes, which can then open drapes, decrease or increase the temperature, and even turn on and off lights.

ZigBee supports both sub-1 GHz (800/900 MHz) and 2.4 GHz. Since the ZigBee on 2.4 GHz provides the highest throughput, i.e. 250 Kbps, a ZigBee usually operates on a 2.4 GHz band, which may sound familiar, as Wi-Fi also runs on the same band frequency. Since they both share the 2.4 GHz band, Wi-Fi can interfere with ZigBee, and this interference is known to be the cause of ZigBee losing up to 50% of its packets. However, this loss can be mitigated by using Cross-Technology Communication, also known as CTC.

One particular reason CTC is being further developed is due to the cross-observability, which can be observed as the ZigBee signals flow into the Wi-Fi Radio Frequency (RF) front-end naturally, which is allowed by the overlapped frequency.

Researchers Shuai Wang at George Mason University, Song Min Kim at KAIST, and Tian He at the University of Minnesota have taken CTC and incorporated Payload Encoding, which allows for the introduction of SymBee. SymBee is a simple and compatible communication method that outputs a special pattern on the Wi-Fi idle listening to be able to exploit decoding dependability. This can be done by simply placing byte patterns in a payload of a ZigBee packet, also known as payload encoding. By this placement, ZigBee symbols are used to generate determined outputs which are intended when they are cross-observed.

By assuming the wireless traffic in 2020 is predictable, the severe interference on 2.4 GHz can be mitigated using SymBee, which can be done by enabling communication from ZigBee to WiFi. WiFi has the ability to explicitly know the future ZigBee traffic without any predication. It also improves the data rate by using physical layer signatures to its advantage. This is achieved by controlling payload bytes (payload encoding), which can then expose patterns when processed through the Wi-Fi idle listening mechanism. The design of SymBee is light-weight and compatible with many devices, which aids to the low level of disruption. 

The Inner-Workings

ZigBee’s transmission process must be discussed to completely understand how the SymBee operates. The data that will be transmitted is first divided into units or 4 bits (also called a symbol), and then each symbol corresponds with a 32-chip sequence, often using 0 and 1 as chips. This correspondence is done with a technique called Direct Sequence Spread Spectrum (DSSS). With the 32 chips, 0 is converted to a positive half-sine pulse and 1 is converted to a negative half-sine pulse. Furthermore, pulses from odd chips are called in-phase signals, while pulses from even chips are deferred by 0.5us or a half pulse, and these pulses are known as Quadrature signals. When both in-phase and quadrature signals are in a continuous sinusoidal wave, this can be easily observed in the Wi-Fi signals.

As mentioned before, ZigBee signals naturally go into Wi-Fi RF front-end. From there, a mixer shifts this signal to baseband, which can be defined as data in its original form. After the shift, it is sampled at 20 Msps or higher (40 MHz), depending on the WiFi standard. These samples are then delivered to Wi-Fi idle listener, where it constantly listens for a Wi-Fi packet while processing signals from any received signal, including ZigBee. As a Wi-Fi signal flows into the Wi-Fi RF, it is usually prepended with a Short Training Sequence (STS), which is essentially a sequence of recurring signals. To process the signals, the idle listener computes phase differences between 16 samples named as p[n] and when p[n] is 0 for the STS, it detects a Wi-Fi packet, and the listener labels the signal in order to extract the information.

While that’s done to be on the lookout for Wi-Fi signals, when a ZigBee is fed to the listener, while computing the phase differences of 16 samples, if the difference is 4π/5 the signal is labeled as SymBee bit “1”. However, if the difference is -4π/5, the signal is labeled as SymBee bit “0”. Since this exploits the feature of Wi-Fi computing phase values allow the SymBee to be compatible.

SymBee was tested in six different locations, with three different distances. The locations were outdoors, a library, a classroom, a mall, an office, and the dormitory, while the three distances were 5, 15, and 25 meters. To quantify the data, the bit error rate was found. For outdoors, no matter the distance, the BER was always less than 5%. However, when SymBee was indoors, within 10 meters, there was a maximum of 10% bit error.

The idea of SymBee was to be able to bridge the capacity and compatibility by customizing ZigBee packets. SymBee can encode by placing specific byte patterns, which maximizes the applicability. Through rigorous testing, the reliability and efficiency of this device proved to be high.