Operations | Monitoring | ITSM | DevOps | Cloud

August 2023

Integrating Memfault With AWS IoT Core and ExpressLink

In the dynamic realm of embedded systems, the right combination of hardware and software components can transform the development process and empower engineers to build robust and efficient solutions. This article explores a streamlined device-to-cloud embedded design utilizing the STM32G0 Nucleo board from STMicroelectronics, an AWS IoT ExpressLink module from Espressif, AWS IoT Core for secure MQTT communication, and Memfault for remote debugging.

Securing Firmware Updates With AES Encryption

Connected devices require a secure point-to-point channel to ensure that there is no possibility of exposing important data for the integrity of an embedded system. This is especially true when we talk about over-the-air (OTA) software updates, where the new firmware has a long way to go before reaching its destination and being installed by our bootloader. In this publication, we will explore a simple method to encrypt the firmware using the AES algorithm, using open-source libraries in Python.

Debugging Android Devices

All hardware devices experience bugs and need debugging. Android devices in specific are exceptionally complex with several hundred gigabytes of source code, dozens of components, and wide range of uses. In this article we will explore the different facilities and tools available to debug Android based devices and produce robust systems that can handle a wide range of applications from smart fridges, to payment terminals, and of course mobile phones.

Percentiles Aggregation for Custom Metric Charts | Memfault Feature Highlights

In this feature video, we walk you through our new percentiles aggregation for custom metric charts. Percentiles aggregation lets users easily understand how data collected on device condition metrics breaks down across their fleet, allowing for easier prioritization and more confident decisions.

Bulk Issue Merge Functionality | Memfault Feature Highlights

Previously, merging issues on Memfault's platform was a manual process. As the number of issues increased, the process became more time-consuming. To make it easier, we've introduced new bulk issue merge functionality. This functionality lets you select a software type and use filters to limit the list of issues. You can then either bulk-select all issues or be specific about which ones you choose.

A Modern C Development Environment

Sometimes, C/C++ projects have a long development cycle. When working on such a project, it can be easy to take our development environment for granted, and forget about the effort invested in its bring-up. The build environment works like magic, the test framework is neatly integrated, and the CI/CD pipeline relieves us of tedious, repetitive tasks.