One of the most difficult challenges in developing IoT devices is balancing low power, small size, and computational performance. Often, this tradeoff triangle leaves IoT devices with wireless chips having enough computing power to perform wireless communication tasks, but not much else.
Yet, the demand for edge AI computing cannot be ignored. To address this, engineers have pursued a solution dubbed “TinyML,” which as its name suggests, entails shrinking deep learning networks to fit on small hardware devices.
Now, Nordic Semiconductor has announced that it has formed a strategic partnership with TinyML specialist Edge Impulse to bring intelligence to some of Nordic’s Bluetooth SoCs.
The Need for TinyML
For many resource-constrained IoT devices, the way to run AI applications is to use cloud computing. However, this solution is far from perfect.
For starters, many IoT devices may require real-time responses to their environment, and cloud computing does not offer low enough latency to promote this. In a cloud computing scheme, the IoT device would have to upload data to the cloud, wait for that data to be processed and retransmitted, receive that data, and then perform an action.
Edge computing for IoT. Image used courtesy of IEEE Innovation
Additionally, cloud computing may introduce more opportunities for security breaches—for instance, in the process of transmitting data to the cloud along with security threats that occur on the server itself.
One alternative solution is bringing machine learning to the edge, and for many device developers, TinyML may be the solution.
Bringing TinyML to Bluetooth Devices
Example of a neural network to be used for Arduino in TensorFlow. Image used courtesy of Digi-Key
From a hardware perspective, the companies have been able to leverage the fact that every Nordic nRF52 and 53 series Bluetooth SoC integrate one or more Arm core processor on-board. Nordic claims these cores are architecturally designed for ultra-low power battery operation, making them a useful candidate for supporting TinyML.
Nordic nRF52 development kit. Image used courtesy of Nordic Semiconductor
However, the partnership hinges on the software optimizations that Edge Impulse offers. Edge Impulse is providing Nordic with its Edge Optimized Neural (EON) compiler. According to Edge Impulse, this optimizer can improve computer processing and memory use by up to 50 percent for TinyML applications, designed for resource-constrained semiconductor devices.
The Edge Optimized Neural compiler. Image used courtesy of Nordic Semiconductor
These devices can now run machine learning applications on SoCs meant for Bluetooth communication without needing additional computing resources. Nordic is saying that this is an industry first.
Possibilities of TinyML at the Edge—Wildlife Tracking and More
Some interesting use cases have already come out of TinyML implementation on IoT devices, specifically with Nordic’s Bluetooth SoCs.
For example, Nordic Semiconductor recently participated in a project that implemented its nRF52840 Bluetooth 5.2/BLE SoC into a tracking collar for endangered elephants. These collars are intended to help park rangers prevent “illegal ivory poaching, trophy hunting, human conflict, and environmental degradation.”
Another plausible use case for this TinyML-Bluetooth SoC dual solution could be autonomous vehicles, which require edge computing to make real-time decisions.
As IoT continues to grow—with projections predicting as many as 41.6 billion connected IoT devices by 2025—the inclusion of intelligence at the edge may become an increasingly common design feature engineers may encounter.