Skip to main content

April 2025

See the health of individual devices at a glance

We have updated the device Overview page to now include a snapshot of that device's Vitals for the filtered time period. The Device Vitals visualizations give both technical and non-technical users a quick and easy way to understand the health and performance of that device without needing to track each metric individually on the timeline.

The overview will automatically display data for the Device Vitals being collected in your project and can be filtered to show performance over a specific time range using the date picker. If you want more guidance on how to start collecting Device Vitals for your project, take a look at our technical documentation.

General

  • Introduced "Device Vitals" tiles on the device detail page's "Overview" tab for projects collecting Device Vital core metrics, enhancing visibility into key device performance indicators.
  • Organization Authentication Tokens can now be restricted to specific projects, enhancing security by allowing access only to designated projects.
  • Updated Dashboard Filters to display specific Cohort or Hardware Version descriptions, enhancing clarity over the previous "Filtered Devices" label.

MCU

[1.23.1] - 2025-04-17

🐛 Fixed

  • Modify the test command used in our public CircleCI job, to work around an issue with CircleCI's v2 container runtime, which uses cgroupv2 instead of cgroupv1.

[1.23.0] - 2025-04-16

📈 Added

  • General:
    • Improved support for run time tracking on FreeRTOS kernel version v11 and later, by adding compile-time checks for possible configuration issues.
    • Add reboot reason decoding for the NXP RW61x chip series, using the PMU.SYS_RST_STATUS register to determine the reset reason. Add the file at ports/nxp/rw61x/pmu_reboot_tracking.c to your project to make use of it!
    • Add reboot reason decoding for the SiLabs SiWx91x chip series. This implementation supports Power On Reset, Pin Reset, and Software Reset causes only. Please reach out if you are interested in other reset reasons. Add the file at sdk/embedded/ports/silabs/wiseconnect/siwx91x/siwx91x_reboot_tracking.c to your project to make use of it.
    • Add an implementation of memfault_reboot_reason_get() for the STM32H5xx series of MCUs, using the RCC-RSR register to determine the reset reason. Add the file to your project to make use of it!
  • ESP-IDF:
    • Add 2 new out-of-box metrics:
      • spi_flash_chip_id : the 24-bit RDID value of the SPI flash chip, for example "c84017" = GigaDevice GD25Q64 8MiB
      • esp_chip_revision : the ESP32 chip and revision, for example esp32c6-0.0 or esp32s3-0.2
    • For ESP-IDF v5.5 and later, enable ggdb3 by default for enhanced debugging. This is controlled with the Kconfig CONFIG_MEMFAULT_GGDB3.
    • Set the User-Agent to MemfaultSDK/<version> when sending HTTP requests to Memfault.

🛠️ Changed

  • General:
    • Updated the internally used clang-format version to 20.1.0, latest at time of writing. This resulted in a few minor format changes in the SDK.
  • Zephyr:
  • nRF-Connect SDK:
    • Update the nRF-Connect SDK examples to use the latest nRF-Connect SDK version, v2.9.1.
    • Update the nRF91 example to enable the DATETIME subsystem, to tag SDK event and log data with timestamps once the network connection is activated.
  • ESP-IDF:
    • Update the prv_panic_safe_putstr() implementation to perform better on modern ESP-IDF versions (>=4.4.0). This function is used to output local prints during panic handling.
    • Add a Kconfig CONFIG_MEMFAULT_DATA_CHUNK_HANDLERS_CUSTOM to allow overriding memfault_esp_port_data_available() and memfault_esp_port_get_chunk(). If other MCUs are forwarding data to an ESP32 for transport, enable this option and provide definitions to handle additional sources. By default, these functions only check the local device for available chunks.

🐛 Fixed

  • ESP-IDF:
    • Correctly print the initial delay and period in seconds for the periodic upload task. Previously, this info log print was using the value in milliseconds.

Android

v4.15.1 - April 16, 2024

Improvements

  • Fix an exception when parsing batterystats files with lines that have trailing commas.

Linux SDK Updates

**1.20.0 - 2025-04-10**

This release adds support for log filtering as well as a few bug fixes. Check out the logging docs for more information on log filtering!

Added

  • Added support for log message filtering. This feature gives you the ability to exclude log lines that are spammy or contain potentially sensitive information from being uploaded to Memfault.
  • Added built-in logs-to-metric rules that increment counter metrics when a systemd_restarts or oomkill event is detected. These are widely applicable to most Linux distros, and represent a good base for metric collection

Fixed

  • Fixed a problem where large HRT files could take a long time to write. This was due to the file writer not being buffered.
  • Fixed a race condition that caused the journald cursor to not be written. This would lead to the journald log collector capturing duplicate log lines if memfaultd is restarted.
  • Fixed a problem where daily heartbeats were being saved when they were not enabled.

Removed

  • Combined the regex feature with the logging feature to simplify feature management as log filtering and matching based on regexes becomes a key part of our logging offering.

CLI

[1.6.0] - 2025-04-23

Add support for uploading ELF files without DWARF debug info.