OpenOCD
OpenOCD is free software for debugging, in-system programming, and boundary-scan testing on embedded target devices through a debug adapter.
What OpenOCD is
OpenOCD is free software for debugging, in-system programming, and boundary-scan testing on embedded target devices through a debug adapter. It communicates with targets using JTAG or Serial Wire Debug (SWD), and can run as a server for GDB clients. Users can interact through Telnet or GDB; its Tcl interface is intended for machine control, and configuration files can include commands using its documented Tcl scripting API.
Listed target architectures include ARM, MIPS, RISC-V, Xtensa, ARC, AVR32, and others. The 0.12.0 release notes list support for Espressif ESP32, ESP32-S2, and ESP32-S3 cores, Raspberry Pi Pico RP2040, Zephyr, and a no-RTOS option. OpenOCD also lists remote debugging and exception breakpoints. It is available for Linux, macOS, Windows, and self-hosted setups. The project says it is packaged in popular operating-system repositories and provides access to its source repository. Community binary builds are identified for Windows, GNU/Linux, and macOS, but are unofficial. Linux setup usually needs a udev rule for debug-adapter access; Windows requires driver configuration for each peripheral.
Good
- Free, open-source software.
- Supports JTAG and SWD transports.
- Can serve GDB clients.
- Lists remote debugging and exception breakpoints.
- Available for Linux, macOS, and Windows.
Watch out
- Linux usually needs a udev rule for adapter access.
- Windows requires driver configuration for each peripheral.
- Community binary builds are unofficial.
Who it suits
OpenOCD suits developers working with embedded targets who need debugging, programming, or boundary-scan testing through a debug adapter. It may also fit teams that need GDB access, scripting, or support for the listed target architectures and RTOS options.
Verdict
OpenOCD covers debugging, programming, and boundary-scan work across a broad list of targets, with GDB and Tcl interfaces. Allow for host-specific setup, particularly adapter access on Linux and peripheral drivers on Windows.
Plans and prices
From OpenOCD's own pricing page, checked 7 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| OpenOCD | Free | Open-source software · distributed through operating-system packages or source code |
The facts
Each one read from OpenOCD's own pages, with the date it was checked.
What it does
- Command interfaces
- Users can interact with OpenOCD through Telnet or GDB, and its Tcl interface is intended as a machine interface.checked 7 Oct 2026
- Community
- The project describes itself as an active open-source project supported by software and hardware developers around the world.checked 7 Oct 2026
- Debug protocols
- The guide describes JTAG and Serial Wire Debug (SWD) adapter transports for communicating with targets.checked 7 Oct 2026
- GDB support
- OpenOCD can run as a server that accepts connections from GDB clients.checked 7 Oct 2026
- Host setup
- On Linux, running OpenOCD usually requires installing a udev rule to grant access to debug adapters; Windows requires driver configuration for each peripheral.checked 7 Oct 2026
- Installation
- The project says OpenOCD is packaged in popular operating-system repositories and also provides access to its source repository.checked 7 Oct 2026
- Purpose
- OpenOCD provides debugging, in-system programming, and boundary-scan testing for embedded target devices using a debug adapter.checked 7 Oct 2026
- Scripting
- OpenOCD configuration files can contain commands, and the guide documents a Tcl scripting API.checked 7 Oct 2026
- Security and compliance
- The official pages reviewed provide no security certification or compliance claim.checked 7 Oct 2026
- Supported targets
- The 0.12.0 release notes list support for Espressif ESP32, ESP32-S2, and ESP32-S3 cores and Raspberry Pi Pico RP2040.checked 7 Oct 2026
- Unofficial binaries
- The project page identifies community-provided binary builds for Windows, GNU/Linux, and macOS, and labels them unofficial.checked 7 Oct 2026
Where it runs
- RTOS
- The 0.12.0 release notes list support for Zephyr and a no-RTOS option.checked 7 Oct 2026
Alternatives to OpenOCD
- 1
LLDB
Free planAndroidiOSLinuxmacOS7.3Free plan - 2

IDA Pro
Free planLinuxmacOSWindows7.0From $1,099 a year - 3
PonyDebugger
Free planiOSWebmacOSSelf-hosted6.8Free plan - 4
pyOCD
Free planAPILinuxmacOSSelf-hosted6.8Free plan - 5
Perl Debugger
Free planLinuxmacOSWindows6.5Free plan - 6

Black Magic Debug
Free planLinuxmacOSWindows6.4Free plan
