Connectivity of the Internet of Things (Pt2)
If you are now visiting this article, please check the previous one on >>Pt1<<
WiFi
WiFi is one of the most common communication protocols. You probably couldn’t imagine your life without it. From the comfort of our homes to classrooms, cafés and airports, we see WiFi everywhere. The extent of WiFi’s influence in our lives has been so great that now it harbors a source of good SSID puns like this! (Sometimes, mostly they’re bad.)
WiFi essentially uses an infrastructure network, which additionally supports ad-hoc networking in infrastructure mode.
Infrastructure mode of wireless communication provides a bridge to other networks, medium access control and forwarding. The network handling functions are placed into the access point (router), and the clients can remain simple (in context of network).
Also, WiFi is a star-based network. The communication goes from wireless nodes (devices) to a wireless access point (router or network controller).
The current standard being used is 802.11ac, which was released in 2013, although the version 802.11n, which was released in 2009, is still prevalent. The 802.11ac offers speeds up to 800Mbit/s whereas 802.11n offered up to 150Mbits/s.
You might have also seen devices that have even older standards of 802.11a/b/g, which are now called legacy devices. However, since WiFi has downward compatibility, old devices continue to work with devices that have new standards.
The range of your device’s WiFi depends on a few factors:
- Which WiFi standard the device is running. The latest standards obviously offer more range than the older versions.
- Physical obstructions like walls also play a critical role in determining the range. Therefore, in open spaces the range of the WiFi network would be more than in enclosed spaces with walls and other interfering objects.
To address the weakness of WiFi over other low-powered technologies, an activity was started to standardize low-power WiFi (IEEE 802.11ah). The development of this protocol is being worked on, but its worldwide adaptation is doubtful. One of the main reasons is this is not backward compatible to the existing 802.11bgn networks.
Advantages of WiFi:
- WiFi has a decent range coverage and can penetrate walls and other obstacles in the way.
- Adding and removing devices in a WiFi network is a piece of cake.
Disadvantages of WiFi:
- Obviously, the lack of wires comes at a cost of lower bandwidth. The radio waves of the network might interfere with other equipment.
- Most importantly, security of WiFi is weaker than its wired counterparts
Now thinking about your project, WiFi is ideal when we want to set up a quick connection between our device (should be WiFi compatible) and the internet. WiFi is designed around the goal of keeping its power consumption limited, so you can run your project on a dedicated battery as well. WiFi should be used when you do not care much about how and when exactly your device should connect and communicate with your server and all you are looking for is hassle-free connection to the internet.
Thread
Thread is an open standard for reliable, cost-effective, low-power, wireless D2D (device to device) communication. It was designed specifically for connected home applications.
It came into existence in 2014, when the Thread Group was formed. It now has big organizations like Google, Samsung, Qualcomm, and ARM to design and develop the Thread protocol.
Nest uses Thread network for its Thermostat and Nest Cam products. Thread is designed while keeping in mind the home automation space – to have devices set up and connect easily, have low power consumption for longer battery life and be secure!
It is based on the standard 802.15.4 (6loWPAN) architecture. The best part about Nest is that it is an open protocol that has Internet Protocol version 6 (IPv6) built in.
Devices in Thread
The Thread protocol defines the three main types of devices in the network:
- Border routers
- Routers and router-eligible end devices
- Sleepy end devices
Border Router
Thread has a system with a special type of router called the border router, which provides connectivity from the 802.15.4 network to adjacent networks on different physical layers (e.g., WiFi, ethernet). If one border router fails, another router in the network can assume the role of a border router, ensuring the robustness of the Thread protocol.
#####Routers
Routers, as the name suggests, provide routing services to the network devices. They are used in commissioning new devices to the network. Generally routers are always active, but they can downgrade to become REEDs (Router-Eligible End Devices). These devices are not used in routing or data transfer in the Thread network but as a redundant end point that can be called to assume the role of a router when needed.
Sleepy End Devices
These are the end points of a Thread network, also called host devices. Host devices are the individual IP-addressed functional equipment like thermostats, security cameras, heaters, etc. These devices can also be referred to as a sleepy child or sleepy node. The router paired directly to the sleepy device is called the parent. The sleepy devices (end points) spend most of their time in the sleep mode and only wake up to transmit data. They only communicate through the parent device (e.g., the Nest thermostat is a sleepy end device).
A typical send cycle for a device might be:
- Wake from sleep mode.
- Perform any required startup and radio initialization.
- Go into receive mode and check if clear to transmit.
- Go into transmit mode.
- Transmit data.
- Get acknowledgment as applicable.
- Sleep.
In contrast to WiFi, which uses infrastructure mode, Thread uses the ad-hoc mode of networking.
Advantages:
- IP based, so easier to connect to other IP-based networks. Since it’s based on 802.15.4, existing devices like ZigBee and 6loWPAN can easily migrate to Thread.
- No single point of failure by architecture, as it is capable of adjusting to network conditions. It supports full mesh-based network topology.
- Low-power operation, as it offers sleeping devices
- Secure
Note: Although there is no single point of failure by architecture in Thread networks, a single point of failure may exist due to poor network design.
Disadvantages:
- Not a very DIY-friendly protocol because of its complexity. Aims at the high-volume home-automation market.
- Still a very new network protocol that needs time to establish itself
As Silicon Labs and NXP are part of the Thread Alliance, they are pushing development boards that support Thread protocol.
ZigBee
Zigbee, like thread is an alliance of over 200 companies which have collaborated to develop a robust and simple network for home and industrial automation.
Zigbee Design Goals
Zigbee was created for the sole purpose of serving the home and industrial automation, so the design goals are set in accordance to that:
- Low-power
- Security
- Co-existence with other radio networks which use the ISM band.
- Standardization
- Low-cost
Similar to Thread, ZigBee is built on top of the IEEE 802.15.4 standard.
ZigbEE specifications fills in the gap left by the 802.15.4 to create a true mesh network but also supports other topologies like Star and Tree.
Devices in a Zigbee Network
There are three types of devices as defined by the Zigbee protocol:
- Zigbee Coordinator
- Zigbee Router
- Zigbee End Device (Node)
Zigbee Coordinator
The coordinator is the brains of the Zigbee network, it commissions devices to the network, stores the security keys and also bridges to other networks. There is only one Zigbee Coordinator in any network.
#####Zigbee Router
Zigbee Networks may have several routers to serve as intermediate routers or to transmit data within the network.
Zigbee End Device
The end device can only talk to the parent node ( router or coordinator). It cannot talk to other end devices directly. Similar to Thread, these devices are designed by keeping in mind that they spend most of their life times in sleep mode and only wake up to transmit data to the parent.
ZigBee assumes the channels from 11-26 in the 2.4GHz radio band used by most radios. The ZigBee channels have been specifically spaced as to co-exist with Wi-Fi channels without interference, if the channel assignments of both the networks are properly.
Note: The best spectral usage for both is achieved by setting the Wi-Fi channels to 1, 6, 11 and Zigbee channels to 15, 20, 25.
Zigbee vs Thread
ZigBee standard faced a big challenge when Thread came into existence in 2014. The ZigBee Alliance has then pushed to introduce their newest protocol called the ZigBee 3.0. They have tried to address the areas, where thread and other networks were better alternatives in the home automation space.
ZigBee 3.0 came with additional features such as ZigBee RF4CE and ZigBee Green Power.
ZigBee RF4CE - was developed to replace the IR remote with radio based remotes. This is aimed at making an universal remote controller that could be used to control your remote and as well as lights, lamps etc. Also this does away with the point and shoot limitation of IR.
ZigBee Green Power - was developed as an ultra-low power standard to support energy harvesting devices. It ensures very low power consumption by managing the network as such that these devices can be off for the most time.
One major feature that put ZigBee behind thread was IP compatibility. ZigBee 3.0 on the other hand is fully IP compatible. So you can now connect your ZigBee devices to the internet via a router.
Advantages: Pretty much the same as thread
Disadvantages: Short range, Low data speeds
Xbee’s by Digi International are radio communication modules which support the Zigbee Protocol. They can also be loaded with firmwares to support Zigbee Pro and DigiMesh.
In the Third and final part, we look into Bluetooth, RFID and NFC.
Please check part 3 for continuation.
Great informative post. What routers and cloud solutions would you use for internet of things?
Thanks for the compliment.
There are many routers being developed now adays targeting IoT an example and a good one is the OnHub from TP-LINK and Google.
But I'll go in for ASUS RT-AC88U due to the fact that it's already ahead in technology with it's MU-MIMO.
Multi-User Multiple Input Multiple Output (MU-MIMO) technology
The RT-AC88U supports Multi-User Multiple Input Multiple Output (MU-MIMO) technology, which is designed to handle Wi-Fi bandwidth efficiently. MU-MIMO was first introduced with the Qualcomm MU/EFX 802.11AC Wi-Fi chip. The RT-AC88U, however, uses the first Broadcom Wi-Fi chip that supports this technology.
Prior to MU-MIMO, all 802.11ac routers treat all Wi-Fi clients the same, regardless of their Wi-Fi power. Since a router typically has more Wi-Fi power than a client, in a particular wireless connection, the router is hardly used at full capacity. For this reason, most Wi-Fi connections are not efficient, where the router wastes its power for lower-tier clients and hence doesn't have enough power to maintain connection quality for multiple clients.
With MU-MIMO, multiple simultaneous transmissions of different Wi-Fi tiers are sent to multiple devices at the same time, enabling them to connect at the speed each client needs. In other words, having a MU-MIMO Wi-Fi network is like having multiple wireless routers of different Wi-Fi tiers. Each of these "routers" is dedicated to each tier of devices in the network, so that multiple devices can connect at the same time without slowing one another down.
MU-MIMO has been quickly adopted by both routers and clients, and it's predicted that by the end of next year, most, if not all, new Wi-Fi devices will support this technology.
For IoT cloud solution, it also depends on the hardware you use in implementation. eg (MSP432 MCU, Arduino, Raspberry pi, etc)
But Sierra Wireless has a cloud platform with a lot of tools for app development.
Congratulations @thnass! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board
If you no longer want to receive notifications, reply to this comment with the word
STOP
Congratulations @thnass! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!