Skip to content

1.29.0

Latest
Compare
Choose a tag to compare
@memfault-bot memfault-bot released this 11 Sep 14:34

This is a minor release. Highlights:

  • Added 9 new built-in metrics for BLE devices for Zephyr projects 🎉
  • Added a session metrics API to deactivate a session
  • Fixed a bug where thread state was missing from small coredumps in ESP-IDF

📈 Added

  • General:

    • Add a new Session Metric API: MEMFAULT_METRICS_SESSION_RESET(), which can
      be used to deactivate an active session instead of ending it with
      MEMFAULT_METRICS_SESSION_END(). This will discard the metrics in the
      specified session.
  • nRF-Connect SDK:

    • Added an implementation for storing coredumps in RRAM, for SOCs that support
      it (nRF54L series for example). Enable with
      CONFIG_MEMFAULT_COREDUMP_STORAGE_RRAM=y. Requires a partition manager
      entry named memfault_coredump_partition.

    • Also added a coredump storage implementation for MRAM, specifically
      targeting the nRF54H series of devices. Enable with
      CONFIG_MEMFAULT_COREDUMP_STORAGE_MRAM=y. Requires adding a fixed partition
      entry named memfault_coredump_partition, for example via a devicetree
      overlay.

      For the nrf54h20dk_nrf54h20_cpuapp, the following sample overlay reduces
      the default size of the storage_partition and adds the necessary
      memfault_coredump_partition entry:

      &mram1x {
        partitions {
          storage_partition: partition@1a4000 {
            reg = <0x1a4000 DT_SIZE_K(20)>;
          };
          memfault_coredump_partition: partition@1b4000 {
            reg = <0x1a9000 DT_SIZE_K(20)>;
          };
        };
      };
    • Added example definition and usage of custom reboot reasons in the nRF9160
      app. These reboot reasons can be triggered with a new shell command:
      app reboot_custom <expected|unexpected>

🛠️ Changed

  • nRF-Connect SDK:

    • Moved the default statement setting CONFIG_MEMFAULT_HTTP_USES_MBEDTLS=n
      when CONFIG_NRF_MODEM_LIB=y into the Memfault SDK Kconfig file. This
      default currently exists in NCS in a symbol re-definition but will be
      removed in the next version of NCS (v3.2 expected).
  • Zephyr:

    • The default implementation of memfault_zephyr_get_device_id(), used to
      populate the Device Serial, will use the hwinfo_get_device_id() value by
      default if CONFIG_HWINFO is enabled. Previously this also required
      CONFIG_MEMFAULT_REBOOT_REASON_GET_HWINFO=y, and would default to
      {BOARD}-testserial when that was not enabled.

    • Add several new built-in BLE metrics:

      • bt_gatt_mtu_size
      • bt_connection_remote_info
      • bt_connection_event_count
      • bt_connection_interval
      • bt_connection_latency
      • bt_connection_timeout
      • bt_connection_rssi
      • bt_connected_time_ms
      • bt_disconnect_count

      These metrics are enabled by default when CONFIG_BT=y and
      CONFIG_BT_CONN=y.

  • ESP-IDF:

    • Support CONFIG_ESP_HTTPS_OTA_ENABLE_PARTIAL_DOWNLOAD optional HTTP client
      parameters in upcoming ESP-IDF v6
      (this change
      made them optionally declared).

    • Update the post-link steps to be compatible with upcoming ESP-IDF build
      changes for ESP-IDF > 5.5.

🐛 Fixed

  • ESP-IDF

    • Fixed a bug where some FreeRTOS symbols needed for thread awareness were
      missing from coredumps if the coredump storage was too small.