Zigbee

According to Statista the quantity of IoT devices is about 43 billion now.

And by 2025, 75 billion IoT devices are predicted to be online and Statista predicts that rather a lot of those devices will be in areas that lack a standard connection.

The future of IoT will be built through open networks and collaboration. Until the future has not come, let's discuss the variants of connection for nowadays.

I think there is no need to mention BLE, Wi-Fi, or 5G. There is no competition between these networks – rather, they are complementary.

Let’s speak about Zigbee. What is this technology different from above mentioned?

Zigbee and "what it is eaten with"

Zigbee is a standards-based wireless technology developed as an open global market connectivity standard to address the unique needs of low-cost, low-power wireless IoT data networks. The Zigbee connectivity standard operates on the IEEE 802.15.4 physical board radio specification and operates in unlicensed radio bands including 2.4 GHz, 900 MHz and 868 MHz.

Specifications of Zigbee

The Zigbee specifications, which are maintained and updated by the Zigbee Alliance, boost the IEEE 802.15.4 standard by adding network and security layers in addition to an application framework.
In theory, it enables the mixing of implementations from different manufacturers, but in practice, Zigbee products have been extended and customized by vendors and, thus, plagued by interoperability issues. In contrast to Wi-Fi networks used to connect endpoints to high-speed networks, Zigbee supports much lower data rates and uses a mesh networking protocol to avoid hub devices and create a self-healing architecture.

There are three Zigbee specifications: Zigbee PRO, Zigbee RF4CE and Zigbee IP.

Zigbee PRO aims to provide the foundation for IoT with features to support low-cost, highly reliable networks for device-to-device communication. Zigbee PRO also offers Green Power, a new feature that supports energy harvesting or self-powered devices that don't require batteries or AC power supply.

Zigbee RF4CE is designed for simple, two-way device-to-device control applications that don't need the full-featured mesh networking functionalities offered by the Zigbee specification.

Zigbee IP optimizes the standard for IPv6-based full wireless mesh networks, offering internet connections to control low-power, low-cost devices.

Mesh network

Mesh networks are decentralized in nature. It’s flexible, reliable and expandable - End Node, Router or Coordinator, where nodes can communicate peer-to-peer for high speed direct communication, or node to Gateway.

Zigbee and Z-wave are two well-known mesh networking technologies. In a mesh network, nodes are interconnected with other nodes so that multiple pathways connect each node. Connections between nodes are dynamically updated and optimized through sophisticated, built-in mesh routing tables.

Security

Zigbee is inherently secure. It provides options for authentication and data encryption. Zigbee uses 128-bit AES encryption keys, similarly to its primary competitor, Z-Wave (all pros and cons of Z-wave will be considered in the next article).
This plus short-range signals make Zigbee secure. However, most home automation protocols have similar levels of security when you configure them properly. 

Power consumption

Power consumption for Zigbee is comparable with BLE. However, the proven, routed mesh mechanism adopted in Zigbee makes it slightly more power efficient.

What Is Zigbee Compatible With?

The devices are controlled by Samsung SmartThings and Zigbee. Amazon Echo Dot,  Philips Hue, IKEA Tradfri. Hive Active Heating is a device that uses natural gas and has accessories. Honeywell manufactures a variety of thermostat products.

Conclusion. Why choose Zigbee?

Comparing Zigbee with existing variants of connections, it’s obvious that Zigbee offers multiple advantages over Bluetooth.

For example, BLE works best for smaller size packets (i.e. less than 12 bytes). For smaller size (less than 12 bytes), its comparable to Zigbee but as packets size starts increasing BLE higher layers do the fragmentation and cause latency to increase.

However, BLE has a cost advantage over Zigbee. BLE mesh has a bigger eco system and uses the same BLE chipset used in other applications, therefore high scale production of BLE chipsets pulls down the cost of IC compared to Zigbee.

Need of gateway device for Zigbee further increases the cost of the overall system. BLE based systems can provide limited functionality (everything except full-fledged internet connectivity) without a gateway as well. In addition, licensing of Zigbee is more expensive and complex than BLE.

Meanwhile, Zigbee is more cost-effective and uses significantly less energy than Wi-Fi, resulting in better battery life. To speak about another “rival” LoRaWAN, it’s significantly cheaper than Zigbee and  they are close by some characteristics.

And if you are looking for a cheap and  long battery life sensing project, where no real-time, control or automation requirements are anticipated and slower poll-rates are suitable, then LoRaWAN is a good contender and is a good choice for many entry-level sensing applications.
But, if it is necessary to control automation or faster poll rates, it’s better to step up to Zigbee. As it was mentioned Z-Wave will be considered next time.

Where to use?

The Zigbee wireless communication system is used by homes, businesses, and other locations to communicate.
Zigbee can transmit data over a long distance, which is sufficient for most applications. Zigbee is a clear winner for industrial applications that require reliability, real-time monitoring, control or automation and this protocol is highly under-rated for low power sensing.

 

 

NVIDIA chipsets for IoT

We have already discussed the chipsets we worked with in one of our projects with static IoT devices. Now time is coming to know more about chipsets for moving IoT devices.  So, NVIDIA chipsets why the Customer gave his heart to it. 

NVIDIA boards became famous and got a reputation among gamers and graphics designers (GeForce series) a time ago, and now NVIDIA has Jetson series.

The first board was the TX1 released in November, 2015.  Now NVIDIA has released the more powerful and power-efficient Jetson TX2 board.

The Jetson boards are siblings to NVIDIA’s Drive PX boards for autonomous driving and the TX2 shares the same Tegra “Parker” silicon as the Drive PX2.

There are many synergies between the two families as both can be used to add local machine learning to transportation. The Drive PX boards are designed for automotive with extended temperature ranges and high reliability requirements. The Jetson boards are optimized for compact enclosures and battery power for smaller, portable equipment.

With devices such as robots, drones, 360 cameras, medical, etc., Jetson can be used for “edge” machine learning.  The ability to process data locally and with limited power is useful when connectivity bandwidth is limited or spotty (like in remote locations), latency is critical (real-time control), or where privacy and security is a concern.

Another innovative solution from NVIDIA - Jetson Nano.

Jetson Nano development board is also a powerful small artificial smart computer, which only needs to insert a MicroSD card with a system image to start, built-in SOC system-level chip, can have a parallel hand, such as Tensorflow, Pytorch, Caffe / Caffe2, Keras, MXNET and other neural networks that can be used to achieve functionality such as image class, target detection, speech segmentation, and intelligent analysis. Usually used to build autonomous robots and complex artificial intelligence systems.

The Customer had chosen this chip for his moving device, because it was extremely important to detect obstacles and define direction. All the tasks were covered by the chipset functionality rather successfully.

You may ask why not to choose Raspberry Pi  all the more reasonably priced by the way.

Raspberry was considered as an alternative. In fact, they are actually very similar in primary functions, and all can develop some special functions, such as ARM processors, 4GB RAM, and a series of peripherals.

As for video-out: the Nano has both HDMI 2.0 and DisplayPort available, which can be used at the same time. The Pi is limited to either its HDMI port or its proprietary display interface, which as far as we at Inmost know cannot be used simultaneously.

They both have multiple ways of interfacing, including I2C, I2S, serial, and GPIO, but we also appreciate that the Nano has USB3.0 and Gigabit Ethernet.

However the biggest difference is that the Raspberry Pi has a low power VideoCore multimedia processor, and Jetson Nona contains higher performance, more powerful GPUs (graphics processors), which makes it support some functions that Raspberry Pi Can't do. Then Jeston Nona makes some more depth developments possible and has more potential in development.

For our customer's project, fast processing of video from the camera is the number one task, so it was clearly decided to use Jetson Nano to solve this problem.

The NVIDIA Jetson system is high performance and power-efficient, making it one of the best and most popular platforms for building machines based on AI on the edge (Edge Machine Learning).

ESP32 Overview

IoT hardware is at the heart of every connected project. 

However, choosing the IoT hardware exact for your project can be overwhelming due to the sheer number of development boards and modules in the space. 

In our practice we ruled by the Customer choice. 

However doubtlessly, it is useful to know more about the board's specifications and possibilities. 

The one of the chipset we worked with in our projects is ESP32 by Espressif Systems.

Espressif is a fabless semiconductor company that develops Wi-Fi and Bluetooth low-power IoT hardware solutions. 

They are most well-known for their ESP8266 and ESP32 series of chips, modules, and development boards. 

In fact, many development boards across the industry run on Espressif chips (like Sparkfun’s development kits).

Espressif development boards are designed for simple prototyping and interfacing but can be used as a simple proof of concept or enterprise solution. Espressif also offers several software solutions designed to help you manage devices around your home and integrate wireless connectivity into products. Some of the IoT development boards they offer are:

2.4 GHz Wi-Fi & BT/BLE Development Boards  —  These boards provide PC connectivity, 5V/GND header pins, or 3V3/GND header pins ESP-IDF source code and example applications. These boards support everything from image transmission, voice recognition and come with a variety of possible features, such as onboard LCD, JTAG, camera header, RGB LEDs, etc.

2.4 GHz Wi-Fi Development Boards  —  Standard set of development boards that integrate the commonly-used peripherals.

As was mentioned you can surely use ESP32 for prototyping/establishing Proof of Concept (PoC). If you need to use several devices, ESP32 is perfect for your app.

One of the major advantages of ESP32 is the presence of inbuilt WiFi and Bluetooth stacks and hardware. 

Therefore, ESP32 will be your choice of microcontroller in a static application where good WiFi connectivity is guaranteed, say an heating equipment monitoring application in, say, a static appliance. The presence of WiFi stack on the module itself means you will have saved money on an additional networking module. 

However, if you use ESP32 in an asset tracking application, where it keeps moving around, you will have to rely on a GSM or LTE module for connectivity to the server (because you will not be guaranteed WiFi availability). In such a scenario, ESP32 loses the competitive advantage. We will discuss a more suitable board for moving devices next time.

To recap, ESP32 has specs that are good enough to accommodate most of your applications. When scaling up production, you need to just make sure that the specs are not too much for you.

In other words, if you can get the desired output with modest specs, you may be better off using a cheaper microcontroller and save money. These savings become significant when your production numbers increase by orders of magnitude.

However, production aside, ESP32 is definitely the ideal microcontroller for prototyping and establishing the PoC. That was the reason, why our customer preferred this board for his prototype.

 

 

Tips for successful development process for IoT team

Many sources describe the challenges and failures dealt with by the companies launching IoT projects. 

In this article, I would like to look into this aspect from the perspective of IoT app developers. 

According to the surveys taken by our IoT team that participated in IoT solutions development, we have faced the following issues that we will definitely take into account in the upcoming projects and that may be helpful to other developers:

Communication

Communication is the main factor of our teamwork. In the case of IoT project, it implies not only communication between teammates but communication and correct connection between IoT device and application.

It means that in the process of development, it’s extremely important for the development team to have an IoT device on hand. The IoT device is a must-have for the development team.

Collaboration

No other projects demand collaboration between various teams with a specific expertise. It's an absolutely reasonable approach because it’s impossible to have a satisfying level of expertise in each demanded technology. So, managing IoT project requires virtuoso communication and a clear understanding of which division is responsible for what, as well as a clear understanding of the tasks for each stage and each link in the chain with a clearly defined result of the work.

Project Business Goals

Thus, even in the MVP stage it is extremely important to understand business goals of your project. The main goal of the Internet of Things is to solve a business problem, but not to surprise techno geeks with a cool idea. You just need to concentrate on the problem, and the technology will follow. A clear idea will enable the whole team to find better solutions and build development processes.

Apps for Clients

And one of the most important points for the app development team - the Customer often thinks more about connected devices than about the application itself.

However, it is the application and data that create demand for connected devices, but not vice versa. It’s important to remember that even a tiny IoT project can unveil significant business opportunities. 

But one of the strongest indicators of IoT maturity is the use of analytics. Adding analytics revolutionizes the project. When you analyze IoT data, you get information that can be used to achieve business goals and objectives. So, don't miss out on opportunities on your way.

The issue of security is so obvious to everyone that it’s even not worth of being mentioned.

So, let’s make IoT development processes a happy way for incredible results.

 

Application for mowing lawns without human participation

The customer wants to create an innovative solution that changes the concept of the roadside lawn maintenance process. The main idea of the project is to cut grass without human participation by the development of a convenient cross-platform mobile application to set up mower and remote control of the grass-mowing process.

Application remotely operating the snow-melting equipment

In the regions with a huge snow cover in winter, roofs are usually equipped by special metal tapes heated by electricity to melt the snow. In case of snow compression, the system fails causing extremely high energy costs for the owner with no actual benefit. We have found a solution to instantly identify system failure and manage snow-melting equipment remotely.

Car-sharing application with adaptive rent rate depending on client’s driving manner

According to worldwide statistics, speeding is the main reason for car damage and accidents. Сar-sharing company owner aimed to motivate careful driving and extend rental cars' lifetime. The solution involves estimation of driving behavior and rewarding responsible drivers.