00
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

01

System boundary

Trace only the relevant path.

3 nodes
  1. 01heartbeat timer
  2. 02default callback group
  3. 03/heartbeatOUT
02

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.

03

Verification

Pass more than the visible symptom.

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