DDS AutoDiag¶
AI-powered diagnostics for ROS 2: find out why your nodes can't talk, see every broken connection, and let AI guide the fix. Every AI change is checked against your live system first.
The problem¶
Topics show up in ros2 topic list, but no data arrives. RViz stays empty. Two containers see each other's nodes
but never exchange a message. The cause is usually one of a dozen settings: a QoS mismatch, a different
ROS_DOMAIN_ID, a discovery range, the RMW implementation, or shared memory between containers. Finding it by
hand costs hours.
DDS AutoDiag checks all of them in seconds, explains what it found, and tells you exactly what to change.
What you get¶
-
Rule-based diagnosis
23 checks for QoS, domains, discovery range, RMW and distro mismatches, DDS XML, shared memory between containers and more. Every finding comes with evidence, a next step and official documentation where one applies.
-
Live topic inspection
Publishers, subscribers and their QoS for any topic, incompatibilities highlighted, and a one-shot message sample that proves data actually arrives.
-
Configure RViz with AI
Describe the view you want. The AI plans the displays, AutoDiag validates them against live topics and TF, adds the QoS fixes it diagnosed, and applies only what you confirm. With Undo.
-
Grounded AI assistant
A RAG pipeline over curated official ROS 2, DDS and Docker docs. Answers stream in, cite real sources and remember the conversation. Local (Ollama) or Claude, ChatGPT and Gemini.
-
Compare hosts & containers
Put two robots, PCs or containers side by side, from redacted snapshot files or a token-protected live collector, and see exactly what differs.
-
Safe by design
Never restarts, reconfigures or publishes anything on its own; only the
demoyou start publishes, on/autodiag_demo/*. Loopback by default, token login, DNS-rebinding protection, strict CSP, and keys that never reach the browser.
What's included¶
| Core | Diagnosis (CLI and dashboard) · live topic QoS inspection · RViz2 panel |
| AI add-ons (optional) | Grounded assistant · Configure RViz with AI |
| Extras | Host and container comparison · reports · redacted snapshots · Docker and systemd |
| Experimental | Native C++ endpoint checker · previous UI at /legacy |
Experimental features may change or be removed before 1.0.
Three ways to use it¶
dds-autodiag doctor # is this machine ready?
dds-autodiag check # diagnose this host
dds-autodiag inspect /scan # endpoints, QoS, incompatibilities
Scriptable, with --json output and CI-friendly exit codes. Command line guide
Overview, topics, hosts, transport (this host vs the loaded peer), tools (tool check, live rule check, live pair) and the AI assistant in one place. Dashboard guide
Panels → Add New Panel → rviz_autodiag_panel → AutoDiag. Health, topic QoS, the diagnosis graph, AI assistant and Configure RViz, right next to your visualization. RViz2 panel guide
How it fits together¶
All interfaces talk to one local server. It probes your system read-only, runs the rule engine, and only reaches out to an AI model when you ask it to. Read the architecture