Company: Percepio AB
Category: Internet of Things Product of the Year
As more projects move to the Internet of Things, the challenges of embedded code become more obvious. With millions of devices out in the field in all kinds of conditions, bugs in the embedded code are not just more likely to show up at one time or another, they also have the potential to cause significant economic and reputational damage.
This is where Percepio DevAlert, a cloud-based monitoring service for IoT device developers, brings tremendous value. DevAlert provides instant awareness of real-world issues in the device software—even when deployed in the field—and visual trace diagnostics for rapid resolution. This enables a DevOps-style development process with continuous improvement, where organizations can diagnose and fix problems before many users are affected or learn from real-world usage and update their products to meet their customers’ needs. As a result, the device works consistently, helping build vendor reputation and loyalty.
Even the best developers cannot anticipate all the problems that may occur, and so the code is rarely perfect at the first release. It is common to have some missed bugs, occasional delays and performance issues, or features that are difficult for users to understand. The DevAlert Firmware Monitoring (DFM) client makes it easy to spot and report such problems, along with any condition that is observable in the device software. The report is sent to the development team within seconds of the problem first occurring. Once the reported issue has been fixed, updated software can be distributed to all connected devices.
This process can be used both in system testing in the lab and in customer deployment and provides automatic real-world feedback to the developers. The diagnostics includes a compact software trace from Percepio Tracealyzer, containing a timeline of software events just before the issue was reported. The context provided by Tracealyzer’s visual trace diagnostics and exploration is often crucial to understanding and fixing the problem.
The DevAlert cloud service, a fully managed service hosted by Percepio, complements the DFM client. The cloud service is responsible for classification, statistics and sending out notifications to developers, and one of its main features is to detect duplicate alerts to make sure that only alerts not previously seen trigger a developer notification.
The DevAlert cloud service is based on Amazon Web Services (AWS) serverless technology. It scales to very large device fleets and the design has been reviewed by AWS to ensure that it is consistent with current best practices.
Security and privacy have been key elements of DevAlert from the beginning. Sensitive data, such as the recorded software traces, are kept in the customer’s cloud account at all times and can only be viewed by the device developers. The DevAlert cloud service receives only anonymous meta-data needed to classify and gather statistics on the reported alerts; this info is also available for the device developers through our DevAlert web portal.
Furthermore, as DevAlert leverages the available cloud storage, communication links and protocols, any data it collects is protected in the same way as our customers’ regular application data and thereby just as secure.
Percepio DevAlert supports devices running FreeRTOS or Azure ThreadX RTOS. The cloud service currently runs on AWS IoT Core, but support for other cloud vendors can be added.
The immediate awareness, remote diagnostics and other technical functionalities DevAlert provides translate on the business side into higher customer satisfaction, better product reviews and better sales. This also reduces liability risks and the costs for customer support, returns, and debugging of customer issues.