pyocd/pyOCD
Open source Python library for programming and debugging Arm Cortex-M microcontrollers observed · 2026-08-28
Health v2 · maintenance only
91/100
- Activity 94
- Release rhythm 82
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: 34
- age_days: 4695
- days_rel: 43
- days_push: 40
- n_releases_24m: 12
Adoption not part of the score
1449 stars · 556 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
pyOCD is an open-source Python library and command-line tool for programming and debugging Arm Cortex-M microcontrollers across a wide range of debug probes (CMSIS-DAP, ST-Link, J-Link, and more). It supports 70+ built-in devices plus nearly any Cortex-M target via CMSIS Device Family Packs, and offers a GDB server, flash programming, RTT/SWO streaming, and a Python API for automation.
Use cases
- flash firmware onto a Cortex-M microcontroller from the command line
- debug embedded firmware with gdb or an IDE like VS Code
- erase or program MCU flash in a CI pipeline
- inspect and control a microcontroller interactively from a Python REPL
- stream Segger RTT output over any debug probe
- share a debug probe over TCP/IP for remote debugging
- build custom automated test tools for embedded targets using the Python API
When to choose
- you need to program or debug Arm Cortex-M devices cross-platform from Python or the CLI
- you want GDB server support with many probe types (CMSIS-DAP, ST-Link, J-Link)
- you need scripted/automated flash programming and target control for CI or test tooling
- you want broad device support via Open-CMSIS-Pack
When to avoid
- you are debugging non-Cortex-M architectures such as Cortex-A/R or RISC-V
- you need a graphical flashing tool with no command-line involvement
- your probe is unsupported and no vendor driver plugin exists
Facets
library · maturity active
developer-tools cli sdk testing embedded-systems developer-tools hardware python windows cross-platform cli cortex-m arm debug-probe gdbserver flash-programming cmsis-dap jlink stlink cmsis-packs rtt firmware-flashing command-line linux macos
6 sources
- readme: https://github.com/pyocd/pyOCD · fetched 2026-08-28 · 25669cfc29e1
- homepage: https://pyocd.io · fetched 2026-08-29 · 5b5f361124ff
- site_page: https://pyocd.io/docs · fetched 2026-08-29 · 7144467a22bb
- site_page: https://pyocd.io/docs/installing · fetched 2026-08-29 · 6e3dcea714c9
- site_page: https://pyocd.io/docs/index · fetched 2026-08-29 · b3683e65a340
- registry_pypi: https://pypi.org/pypi/pyocd/json · fetched 2026-08-29 · 68352e474a6b
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| pyocd/pyOCD | main | 91 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem