openpilot/docs/DEBUGGING_SAFETY.md
Vehicle Researcher c5d5c5d1f3 openpilot v0.10.1 release
date: 2025-10-24T00:30:59
master commit: 405631baf9685e171a0dd19547cb763f1b163d18
2025-10-24 00:31:03 -07:00

1.2 KiB

Debugging Panda Safety with Replay Drive + LLDB

1. Start the debugger in VS Code

  • Select Replay drive + Safety LLDB.
  • Enter the route or segment when prompted.

2. Attach LLDB

  • When prompted, pick the running replay_drive process.
  • ⚠️ Attach quickly, or replay_drive will start consuming messages.

Tip

Add a Python breakpoint at the start of replay_drive.py to pause execution and give yourself time to attach LLDB.

3. Set breakpoints in VS Code

Breakpoints can be set directly in modes/xxx.h (or any C file). No extra LLDB commands are required — just place breakpoints in the editor.

4. Resume execution

Once attached, you can step through both Python (on the replay) and C safety code as CAN logs are replayed.

Note

  • Use short routes for quicker iteration.
  • Pause replay_drive early to avoid wasting log messages.

Video

View a demo of this workflow on the PR that added it: https://github.com/commaai/openpilot/pull/36055#issue-3352911578