• Robust OTA Updates For Linux Devices, the Easy Way

    This guide will walk you through all the steps necessary to build a bespoke variant of Debian with over-the-air update support, including delta updates, integrated with Memfault. Following this guide, you will also install a full system update via Memfault to your custom system running in a VM or on a Raspberry Pi. To follow this guide you only need a working Docker installation on either Linux or macOS. End-to-end this guide should take less than 30 minutes to complete, so let’s get started.

  • What we've been reading in February (2025)

    Here are the articles, videos, and tools that we’ve been excited about this February.

  • The Android Developer's Journey into Hardware Observability

    In this article, I walk through how the growth of internal observability tooling for an AOSP device might look like, and the variety of pitfalls one might encounter as they scale from 1s to 10s to 1000s of Android devices in the field, based off my experience talking to AOSP developers and teams, and personally as an Android app developer working on AOSP hardware.

  • Why std::this_thread::sleep_for() is broken on ESP32

    A curious bug appearing after upgrading to IDF v5 led me into a deep dive of how std::this_thread::sleep_for() is implemented on the ESP32. I discuss how the IDF implements pthreads and newlib to provide C++ threading functionality. The results are surprising: a simple 10 millisecond sleep was killing performance, but only in the new version of IDF due to an interaction between libstdc++ and usleep().

  • Linux Coredumps (Part 1) - Introduction

    In this article, we’ll start by taking a look at how a Linux coredump is formatted, how you capture them, and how we use them at Memfault.

  • What we've been reading in January (2025)

    We hope your year is off to a great start! January has been an exciting month for Interrupt — we launched Interrupt Live, a new series where our co-founder and host, Tyler Hoffman, sits down with Interrupt contributors to share their insights and stories. We’d love for you to tune in — see more details here!

    Here are the articles, videos, and tools that we’ve been excited about this January.

  • Monitoring a Low-Power Wireless Network Based on Smart Mesh IP

    This blog post provides a practical tutorial demonstrating a simple APM solution for low-power devices. The solution leverages Zephyr RTOS on an nRF52, and SmartMesh IP on an Analog LTC5800 which can accommodate an arbitrary number of wireless motes. The motes can send a set of performance metrics at certain heartbeat intervals via a framework provided by Memfault. The framework is scalable and allows the creation of a customized group of metrics.

  • Introducing Interrupt Live - Meet the Minds Behind Interrupt

    After nearly seven years of Interrupt contributions, we’ve decided to take this conversation to the next level. Introducing Interrupt Live: a YouTube Live series where we sit down with Interrupters to hear more about their origin stories, engineering journeys, and the unique challenges that inspired their contributions. If you’ve ever wanted to hear directly from the engineers behind your favorite Interrupt posts, now’s your chance.