Reserve caseProadvancedCallback groups

The heartbeat stalls while diagnostics run

Keep the 20 Hz /heartbeat ticking on its MultiThreadedExecutor while a heavy /run_diagnostics service runs, without slowing diagnostics.

Pairs with Topics and message flow in ROS 2 Systems Debugging. Read the concept first, then diagnose it here.

Unlock this lab with Pro

Operator report

/heartbeat ticks steadily until /run_diagnostics is called, then freezes for ~3 s until diagnostics finish.

Ubuntu 24.04, ROS 2 Jazzy, Python and C++ nodes, browser telemetry workspace

System boundary

Trace only the relevant path.

heartbeat timerdefault callback group/heartbeat

How this lab works

You diagnose it — no command list.

Open the repair workspace and gather your own evidence in a real terminal. No diagnostic commands are handed to you — finding the fault is the exercise. Stuck? Progressive hints unlock inside the workspace.

Verification

Your repair must pass more than the visible symptom.

  • Heartbeat gap under load stays below 600 ms
  • Diagnostics service still completes successfully
  • Hidden regression behavior
  • Root cause explanation