# armink/CmBacktrace

Advanced fault backtrace library for ARM Cortex-M series MCU | ARM Cortex-M 系列 MCU 错误追踪库

Repository: https://github.com/armink/CmBacktrace
Canonical: https://ross.abutalabs.com/products/cmbacktrace
Language: C
License: MIT
License Family: permissive
Topics: backtrace, arm, cortex-m, dump, callstack, fault, hardfault
Last push: 2026-05-21T14:11:06+00:00

## Health v2 (maintenance only)
Score: 76/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 83, release rhythm 52, longevity 100
- inputs: {"age_days": 3537, "days_push": 104, "days_rel": 104, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2160, forks 736 (observed 2026-08-28T04:06:20.755713+00:00)

## What it is
CmBacktrace is an open-source C library for ARM Cortex-M microcontrollers that automatically diagnoses faults (Hard Fault, Bus Fault, etc.) and outputs the function call stack at the error site. It works bare-metal or with RTOSes like RT-Thread, FreeRTOS, and UCOS, and integrates with addr2line for precise code location.

## Use cases
- debug hardfault crashes on cortex-m mcu
- print function call stack after firmware crash
- automatically diagnose fault register causes on arm cortex-m
- capture backtrace in embedded c firmware
- locate crash code line in rt-thread or freertos application
- get current call stack on bare metal mcu

## When to choose
- developing firmware on ARM Cortex-M0/M3/M4/M7 and need fast fault diagnosis
- you want automatic fault cause analysis instead of manually decoding fault registers
- you need call stack output on bare metal or RTOS-based projects with IAR, KEIL, or GCC

## When to avoid
- targeting non-ARM or non-Cortex-M architectures
- working on Linux/desktop applications rather than embedded firmware
- you need source-level debugging only via an attached debugger without runtime fault handling

## Facets
- artifact type: library
- maturity: stable
- function: error-handling, developer-tools, logging
- domain: embedded-systems, developer-tools
- platform: embedded, c
- tags: backtrace, cortex-m, hardfault, fault-diagnosis, call-stack, rtos, mcu, debugging, arm

## Member repositories
- armink/CmBacktrace (main) score 76

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:20.755713+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:50:17.493243+00:00, confidence not recorded.
  - readme: https://github.com/armink/CmBacktrace (fetched 2026-08-28T04:06:20.755713+00:00, sha d431a56f9269)
- Data as of 2026-08-30T08:39:29.467469+00:00.
