1NCE OS IoT Integrator: Enhancing Battery Life on NB-IoT and LTE-M
Choosing a suitable communication protocol using NB-IoT and LTE-M (Cat M1) mobile communications can significantly contribute to enhancing the lifetime of battery-powered sensors. Optimally configured, these measures can achieve additional energy savings as using only network-based activity intervals via PSM or eDRX alone.
Blog series "Power Saving in cellular LPWAN"
Part 3: 1NCE OS IoT Integrator: Enhancing Battery Life on NB-IoT and LTE-M
The 1NCE OS, an integrated part of the 1NCE IoT Lifetime Flat, automates many important onboarding and communication processes of an IoT device to the AWS Cloud. Authentication, configuration, and even the choice of communication protocol can be achieved without much manual intervention.
CoAP vs. MQTT: Communicate more efficiently with the 1NCE OS IoT Integrator and Energy Saver
In the dynamic landscape of IoT, MQTT emerges as a favored protocol, yet its compatibility with NB-IoT presents a significant challenge. While MQTT may excel during prototyping, real-world deployments often reveal performance issues and malfunctions. NB-IoT, with its promise of low cost and extended battery life, is rapidly gaining traction in 64 countries worldwide. However, a lack of awareness about potential compatibility issues poses a threat to the longevity of IoT products. Instead of MQTT, 1NCE OS works with leaner protocols such as UDP, CoAP and, in the future, LwM2M (see Part 2) and is always acting as an intermediary between the device and the AWS Cloud for energy-efficient communication.
To further reduce the amount of data and thus the energy consumption, 1NCE OS offers another tool - fully compatible with IoT Integrator - called Energy Saver. It compresses the data communication between the IoT device and 1NCE OS by converting the data into binary format.
Power consumption analysis between CoAP and MQTT on NB-IoT and LTE-M
So far for the theory. To verify this in practice, we have set up a test setup to provide accurate power consumption analysis when transmitting data using CoAP and MQTT over NB-IoT and LTE-M.
For our experiment, we use a FreeRTOS system on a STMicroelectronics B-L475E-IOT01A discovery kit with Arm Cortex-M4 core with 1 MByte of flash memory and 128 kBytes of SRAM. The communication is done by Quectel BG-96 cellular module.
For the demo setup, payload size, payload format, number of messages and optional delays can be set to distinguish between different connection states such as Handshake, Publish or Post, Disconnect.
Since FreeRTOS only supports the MQTT protocol out of the box, we added the necessary CoAP functionality to the operating system with the help of an open-source library ( Lobaro CoAP ).
After activating the test environment, we run two scenarios each with device onboarding, connection creation to the cloud and sending message packets of different sizes from 128 bytes up to 4 kBytes. Once via MQTT over an SSL connection to the AWS IoT Core and once via CoAP using the 1NCE OS IoT Integrator.
Power consumption: CoAP vs. MQTT on NB-IoT
After running the test environment on Narrowband IoT, the following results are clear: The power consumption is largely determined by the transmission time. A significant increase can be seen for payloads of 500 bytes and larger.
Using CoAP with the 1NCE OS IoT Integrator reduces energy consumption by between 13.9 and 47.6 percent, depending on the payload. Smaller payloads can be optimized better. This reduction is mainly due to the use of UDP transfers, since unlike TCP, there is no need to wait for an acknowledgement of receipt from the server.
However, the greatest savings of up to 75.3 percent can only be achieved by adding binary translation. It is noticeable here that binary translation pays off especially with larger payloads. With small payloads of 128 bytes, the saving is "only" 48.5%, i.e. only about 0.9% better than without binary conversion. Above 500 bytes, there is hardly any significant increase in energy consumption.
Power consumption: CoAP vs. MQTT on LTE-M (CAT M1)
A comparison of CoAP and MQTT on LTE-M (LTE CAT M1) shows a similar picture. Here, too, the power consumption is largely determined by the transmission time of the data.
The biggest difference between NB-IoT and LTE-M lies in the maximum possible bandwidths. For NB-IoT it is 128 kbit/s while for LTE-M with 1NCE up to 1 Mbit/s. LTE-M is also capable of passing connections between different radio cells without interruption and without having to re-establish the connection. LTE-M is somewhat more power-hungry, but it is particularly suitable in the deployment of mobile IoT solutions, such as asset tracking.
Compared to MQTT, we achieve power savings of between 13.3 and 27.6 percent in our test environment with CoAP. In this case as well, the respective payload size is decisive for the degree of savings. The smaller the payload, the greater the savings.
This setup also shows that the use of binary conversion leads to the greatest savings. If the CoAP data is transmitted binary, up to 47.5% energy can be saved during data transmission compared to MQTT. This also shows that the use of binary translation can be worthwhile, especially for larger payloads.
Conclusion
In summary, speed is crucial for maximum energy savings when communicating between IoT devices and the cloud. The faster individual operations can be performed, the better.
The use of lean protocols significantly shortens transmission times due to the lower data volume. This saving becomes even more significant when binary data sets are used. This means that the savings are particularly effective for significantly larger data packets.
If all the available options such as power saving mode, CoAP protocol and binary translation are combined, the battery life can be significantly extended by several months, depending on the device and the application. Extrapolating the power consumption, the test setup in our demo would have achieved up to almost eight months longer runtime.
But even individually, significant improvements in energy consumption can be achieved with the network-based power saving methods as well as the 1NCE OS IoT Integrator.
Read also: IoT device design: How to get maximum performance out of your device.