feature article
Subscribe Now

When the Bugs Find You

Percepio’s DevAlert Notifies You When Something’s Rotten in Denmark

“All I was doing was trying to get home from work.” – Rosa Parks

Bugs are an inevitability, but they’re especially embarrassing when your customer finds them before you do. All things being equal, it would be better if your devices notified you of a bug instead of your customers calling to complain that their shiny and expensive new device just tipped over. 

Once you confirm that the bug is real, the next steps are finding and fixing it, and then somehow updating all the affected devices in the field. No small task, but one that many of us have lived through. 

Given that many new products are connected to “the cloud” in some manner, it seems like we could use that connection for remote diagnosis and notification, right? Wish granted. Tiny software vendor Percepio has created just such a toolkit that allows remote devices in the field to send us text alerts when they hiccup, and then follow up with diagnostic traces that we can analyze at our desks. It’s about the most helpful and cooperative that a failing device can be. 

Sweden-based Percepio is just now rolling out DevAlert, an add-on to its existing debugging tools that creates a back channel from devices to their developers. The idea is that developers get notified the moment a device detects that something’s wrong. What you do after that depends on how serious or widespread you judge the problem to be. Information is power, and DevAlert aims to put that control in developers’ hands. 

DevAlert consists of three parts. First, there’s the firmware on the device itself, along with a RAM buffer for trace data. This is an internal health monitor that maintains a ring buffer of relevant event data. You get to decide the size of the buffer and what qualifies as an “event.” The buffer can be as small as 4KB, and Percepio says even that is enough to store “a few hundred to a few thousand” events, which might translate into milliseconds or seconds of real time. 

The second part is Amazon’s AWS IoT Core cloud service. This is where the magic happens. Afflicted devices send their alerts and trace data up to AWS, where Percepio’s own software analyzes and classifies the reports. If the reported event is deemed anomalous – that is, it’s a potential bug – it sends a notification directly to the contact person, usually someone on the development team. The total flight time is just a few seconds, about the same as for any text message or email.  

Just as important, DevAlert filters out redundant reports of the same (or substantially the same) bug, so that you’re not inundated with reports from devices in the field all complaining of the same thing. It still stores those reports. They’re not lost. They’re just not all forwarded directly to you in a flurry of redundant “help me!” pleas. 

The third leg of DevAlert’s stool is the client-side diagnostic GUI, called Tracealyzer. Percepio has been selling Tracealyzer for years and, naturally, considers it an ideal debugging tool for real-time tracing. Tracealyzer is very graphically rich and relies on visualization rather than tables of numbers or source code listings to help make anomalous behavior stand out from mundane routines.  

For now, DevAlert is specific to AWS and two operating systems, FreeRTOS (owned by Amazon) and ThreadX (now owned by Microsoft). “Support for other RTOSes is available on demand,” says Percepio, and could be spun up on request “in a matter of weeks.” 

DevAlert is sold as an annual subscription service rather than a one-off product purchase. Pricing varies with the number of notifications you expect to receive. 

Shipping with bugs – or rather, knowingly shipping with known bugs – is the new normal. “We’ll fix it in the next firmware release” seems to be the first thing new product managers learn to say. With that in mind, an early-warning system like DevAlert seems prudent. Its communication is all one-way, but by sending helpful diagnostic data nearly in real time, developers can get a head start on analyzing problems as they occur. Sending out over-the-air firmware updates and appeasing cranky customers are different problems. 

Leave a Reply

featured blogs
Oct 20, 2020
Voltus TM IC Power Integrity Solution is a power integrity and analysis signoff solution that is integrated with the full suite of design implementation and signoff tools of Cadence to deliver the... [[ Click on the title to access the full blog on the Cadence Community site...
Oct 19, 2020
Have you ever wondered if there may another world hidden behind the facade of the one we know and love? If so, would you like to go there for a visit?...
Oct 16, 2020
Another event popular in the tech event circuit is PCI-SIG® DevCon. While DevCon events are usually in-person around the globe, this year, like so many others events, PCI-SIG DevCon is going virtual. PCI-SIG DevCons are members-driven events that provide an opportunity to le...
Oct 16, 2020
[From the last episode: We put together many of the ideas we'€™ve been describing to show the basics of how in-memory compute works.] I'€™m going to take a sec for some commentary before we continue with the last few steps of in-memory compute. The whole point of this web...

Featured Paper

Four Ways to Improve Verification Performance and Throughput

Sponsored by Cadence Design Systems

Learn how to address your growing verification needs. Hear how Cadence Xcelium™ Logic Simulation improves your design’s performance and throughput: improving single-core engine performance, leveraging multi-core simulation, new features, and machine learning-optimized regression technology for up to 5X faster regressions.

Click here for more information about Xcelium Logic Simulation

featured paper

Designing highly efficient, powerful and fast EV charging stations

Sponsored by Texas Instruments

Scaling the necessary power for fast EV charging stations can be challenging. One solution is to use modular power converters stacked in parallel. Learn more in our technical article.

Click here to download the technical article

Featured Chalk Talk

MCU32 Graphics Overview

Sponsored by Mouser Electronics and Microchip

Graphical interfaces add a whole new dimension to embedded designs. But, designing a full-blown graphics interface is a major challenge for most embedded systems designers. In this episode of Chalk Talk, Amelia Dalton and Kurt Parker from Microchip Technology explain how you can add a modern graphics user interface to your next embedded design without a big learning curve.

Click here for more information about Microchip Technology MPLAB® X Integrated Development Environment