What you’ll learn:
- Embedded IoT devices can now host intelligence, which was previously in the domain of the data center.
- Processing at the edge significantly reduces latencies, enabling real-time applications.
- Comprehensive development tools exist to support the developer and reduce time to market.
Robert Oshana, Vice President of Software Engineering R&D for the Edge Processing business line at NXP Semiconductors, breaks down the myths surrounding edge computing.
1. IoT edge devices present a security risk because edge devices are only capable of hosting basic security measures.
Security is a fundamental requirement of the edge device, and a range of digital security measures can be implemented to ensure the essential security characteristics of integrity, confidentiality, authenticity, and non-repudiation. Modern IoT security solutions are increasingly based on the root-of-trust (RoT) technique, where cryptographic security algorithms are hosted and protected from physical attack in a hardened environment.
In some cases, the computational overheads of these security functions are offloaded to an embedded, dedicated security chip, or trusted platform module (TPM). In others, the functionality can be hosted in a dedicated core of a multicore MPU.
This combination of hardware and software security subsystems ensures the strongest possible defense against malicious attacks throughout the lifecycle of the application.
2. Edge processing can’t support real-time applications because of the latencies inherent in wide-area networks.
Emerging IoT applications, such as autonomous automobiles, industrial robotics, and remote tele-surgery, require real-time levels of responsiveness. The traditional cloud-computing model hasn’t been able to support these types of use cases, due to the typical latencies of the internet and other wide-area networks.
These applications have consequently driven a significant increase in the compute power embedded in IoT devices and software, which was once in the domain of the data center and can now be hosted at the edge. This enhanced intelligence enables more local decision-making, resulting in near real-time levels of responsiveness, thus empowering a whole new generation of advanced applications.
3. Machine-learning techniques are confined to the data center because their processing requirements exceed the capabilities of edge computing.
Along with developments in IoT hardware, software advances have been key to the growth in edge-processing capabilities. As machine-learning (ML) techniques have matured, tools have emerged that enable ML models to be deployed in the cloud, with associated inferencing tasks being downloaded to edge devices.
ML software stacks on the edge device benefit from advanced hardware units such as graphics processing units (GPUs), central processing units (CPUs), digital signal processors (DSPs), and neural processing unit (NPU) accelerators to perform real-time ML inferencing tasks locally with occasional cloud connection.
This increased level of intelligence at the edge supports the emergence of more complex applications that rely on real-time response rates.
4. Edge computing is power-hungry and not suitable for low-power applications.
Power consumption is a critical characteristic of an edge device. Many applications, such as wearables or remote sensors, must operate for long periods on a single battery charge, or are powered from alternative energy sources.
Embedded MCUs employ a range of power-optimization techniques, including the use of low-power silicon materials and the partitioning of functionality according to usage. A key power-optimization technique is to partition the system-on-chip (SoC) architecture so that different partitions control specific domains—for example, a real-time domain, an application domain and a flex domain.
Power-optimization software ensures minimum power use at the system level by only powering the parts of the SoC that are needed at any given time. Figure 1 illustrates how this technique is applied to extend the battery life of a device such as a smartwatch.
1. Dynamic power domain control in a smartwatch application. (Source: Essentials of Edge Computing by NXP)
5. The internet is going to be swamped by the growing numbers of connected devices.
The escalating number of connected IoT devices has been a major contributor to the explosive growth in internet data in recent years, with some analysts predicting that 74 zettabytes of data would be created globally in 2021 (1 zettabyte is equivalent to one trillion gigabytes).
As the compute power embedded in edge devices continues to ramp up, more data processing is taking place at the edge rather than in the cloud. This local data processing will significantly reduce the amount of data that must be processed in the cloud. The linear relationship between the number of IoT devices and internet traffic will be fundamentally altered, proportionately reducing the amount of data transmitted over the internet.
6. IoT edge devices totally depend on cellular connectivity to be useful.
Wireless network connectivity is a fundamental enabler of the widely diverse range of IoT use cases in areas such as wearables, home automation, smart buildings, industrial automation, medical devices and many more. Individual IoT applications vary widely in their connectivity requirements; domestic smart lighting systems depend on mesh networking technologies, remote sensors in agricultural applications require low power networking, factory automation applications depend on real-time responsiveness and connected automobiles need wide-area coverage.
Four main wireless protocols are currently prominent within IoT applications (Fig. 2). Wi-Fi 6 offers high speed, low latency connectivity in indoor spaces and Zigbee, Thread and Bluetooth Low Energy (BLE) are popular in smart building and homes, for example, where low-power mesh networking is required. Ultra-wideband (UWB) enables accurate positioning for tracking applications and near-field communication (NFC) delivers secure data exchange and access.
2. Four wireless protocols are commonly used in IoT applications (Source: Essentials of Edge Computing by NXP)
The enhanced cellular-networking capabilities of 5G is driving its acceptance via a wide spectrum of applications across multiple sectors, supporting both indoor and outdoor connectivity.
Developers can therefore choose from one or multiple established wireless communication standards to ensure secure interoperability of their devices, depending on the specific needs of the application.
7. Connecting an IoT application to the cloud is complex and requires highly skilled network engineering resources and management of multiple parties (WAN provider and cloud service provider) to make it work.
At the same time, cloud connectivity is rapidly becoming a default requirement for an IoT application, bringing benefits such as remote diagnostics, OTA upgrades, remote device management, and enhanced compute capability at the edge.
For the designer faced with ever-shrinking development cycles, however, harnessing the additional flexibilities of multi-protocol devices while grappling with the complexities of cloud connectivity threatens to add both cost and time to already stretched projects.
Fortunately, in parallel with these hardware and software developments, a growing range of toolsets are available to ease the development task. Matter, for example, is a unifying, IP-based connectivity protocol that simplifies development of multi-protocol systems. An open-source standard, Matter enables developers to connect and build dependable, secure IoT ecosystems and increase compatibility among smart-home devices.
In addition, many cloud providers, including Amazon Web Services (AWS), Microsoft Azure, and Google Cloud, are providing IoT software development kits (SDKs) that make it easier to connect to the cloud from an IoT device.
8. Edge devices deployed in the field will quickly be rendered obsolete by future generations of wireless protocols.
The various wireless communications protocols in use within the IoT are governed by established standards bodies such as the IEEE and 3GPP. These organizations manage the evolution of the respective standards to ensure backwards compatibility across versions.
Furthermore, with increasing proportions of the functionality being implemented in software stacks, upgrades between versions can be accomplished by over-the-air (OTA) downloads. Developers also are increasingly able to take advantage of multimode devices that increase the flexibility and choice of communication protocol.
9. Users will lose the ability to intervene in a process that’s being run by an edge device.
Many edge-device SoCs integrate powerful graphics processors that enable data to be securely presented on the edge device itself, rather than via the cloud. In addition, the powerful local processing capability of the device can be used to interpret and present the data in a variety of user-friendly, visual arrangements, such as charts or maps.
Examples of this capability can be seen across all use cases. Information panels on the factory floor enable operators to monitor process efficiency and product quality, and subsequently take appropriate action.
The cockpit of the modern, connected car contains digital dashboards that provide the driver with information such as car status and navigation and route information. In the medical sector, doctors and lab technicians constantly refer to the screens of digital assistants driven by AI, real-time data, and historical data. At the consumer level, wearables, appliances, and IoT devices all gather data that’s processed and presented to the user on screens.
The powerful combination of local processing and advanced graphics capability enables a customizable, high level of interaction between user and edge device.
10. Developing an edge application is complex and time-consuming, and it requires an abundance of highly skilled, expensive resources.
Developing edge-computing devices is certainly challenging because of the increased hardware complexity, the need for more features in the firmware, and the changes in the development flow to reach higher productivity.
A multitude of toolsets are available on the market, though, which help the developer overcome the barriers to achieving high quality and efficiency during the development process. These tools facilitate fast builds and automated builds, and they support testing and delivery with both static- and dynamic-analysis capability.
The complexity of the project will dictate the exact tools required. However, a typical set for a basic software project (Fig. 3) would include a visual editor, a GNU Compiler Collection (GCC) and associated build tools such as GNU Debugger (GDB) for debugging and finalizing the binary, and Secure Copy Protocol (SCP) for copying the file to a networked end device.
3. A typical toolset for a software project would include support for the Edit, Build, Debug, and Deploy phases. (Source: Essentials of Edge Computing by NXP)
Choosing the right process paired with the right tools will ensure the consistent development of high-quality applications within budget and time constraints.
11. Development cycles for edge-computing applications are lengthy, compromising time to market.
Rapid time to market is essential in today’s fast-paced IoT market and all players in the ecosystem are supporting their products with tools that aimed to compress timescales and budgets. SoC manufacturers provide development kits and modules to enable rapid prototyping and evaluation, operating-system variants such as embedded Linux ease real-time development, and cloud providers offer tools such as AWS and Azure to support rapid cloud connectivity.
As the spectrum of IoT applications expands, these tools enable the developer to focus on the specifics of the application, abstracting the technical details of functionalities such as security and connectivity to packaged solutions that can be easily integrated into the final product.