embedded-fault-debug

Solid

Use when embedded firmware crashes, traps, faults, resets unexpectedly, jumps to default handlers, corrupts stack, or executes invalid instructions

AI & Automation 22 stars 2 forks Updated 1 weeks ago MIT

Install

View on GitHub

Quality Score: 79/100

Stars 20%
45
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Embedded Fault Debug ## Overview Use this skill to preserve crash evidence and find the first failing instruction. The agent should read architecture-specific fault state before reset, map addresses to symbols, and separate root cause from secondary symptoms. ## When To Use Use this skill when: - Firmware hits HardFault, BusFault, UsageFault, trap, illegal instruction, default handler, watchdog reset, assert, or panic. - The board resets unexpectedly or hangs after a repeatable action. - The user has a register dump, fault log, crash PC, stack dump, watchdog event, or GDB backtrace. Do not use this skill when the target cannot yet connect or flash; use `mcu-flashing-debug` first. ## First Questions Ask for: - Architecture/chip family and toolchain. - Exact symptom and whether it is reproducible. - Register dump, backtrace, fault/trap registers, assert log, or reset reason. - ELF/MAP file that matches the running image. - Whether the target has been reset since the fault. ## Workflow 1. Preserve state. Do not reset or reflash until fault registers, PC, LR/RA, SP, and stack frame are captured. 1. Confirm image-symbol match. Ensure the ELF/MAP file matches the firmware currently running on target. 1. Identify the faulting address. Map PC, exception return address, `mepc`, stacked PC, or return address to a symbol and source line. 1. Classify the cause. Separate invalid memory access, illegal instruction, stack overflow, alignment, bus/peripheral acces...

Details

Author
easyzoom
Repository
easyzoom/aix-skills
Created
3 months ago
Last Updated
1 weeks ago
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category