I’m a first-year engineering student on the IIT Bombay Mars Rover team.
I kept losing days to the same ROS2 issues: DDS
discovery failures, UFW silently blocking UDP, clock drift causing
handshake failures, nodes not visible across devices even when ping worked.
Built a diagnostic CLI that catches all of this in one command:
pip install ros2forge
rosforge doctor
It checks: ROS2 install, RMW/DDS config, ROS_DOMAIN_ID, network
interfaces, multicast, UFW/iptables rules, DDS port availability,
NTP sync, daemon health, and peer reachability (ICMP + UDP 7400).
Every failure comes with the exact fix command.
Also includes rosforge scaf: scaffolds a complete workspace
(DDS config, install scripts, node boilerplate) from an interactive prompt.
GitHub: GitHub - emphiasarmlorn/ros2forge: ROS2 workspace scaffolder + multi-machine diagnostics toolkit · GitHub
Would love feedback from people who’ve hit these issues.
1 Like
Thanks for making a tool that helps avoid some of these issues.
You say it’s “Free” in the title but for software the canonical way to make that happen is to apply a license to it.
Without a license technically all rights are reserved by default.
If you’d like an overview please take a look at: https://choosealicense.com/
In the Open Robotics community the most common license is Apache-2.0
Slightly related have you considered contributing these as additional checks to ros2doctor ? There’s some introduction how to use it at Using ros2doctor to identify issues — ROS 2 Documentation: Rolling documentation
And there’s documentation how to add new python entry points to your python package such that ros2doctor will find them and run them on your system: Add New Checks
3 Likes
Thanks a lot for the response! I’ll definitely look into ros2doctor as well as the license details you pointed out.