ArduPilot / ArduPilot/ardupilot

DDS: Validate ROS_DOMAIN_ID environment is the same as DDS_DOMAIN_ID

Open
#28,046 0 comments 0 reactions 0 assignees View on GitHub
Enhancement ROS
Dominant language
C++
Stars
15.9k
Forks
21.4k
Avg merge
3d 17h
Merged PRs (30d)
119

Description

## Feature request

**Is your feature request related to a problem? Please describe.**

If someone sets the ROS_DOMAIN_ID and it doesn't match their DDS_DOMAIN_ID, they can't communicate with the vehicle over DDS

**Describe the solution you'd like**

In `sitl.launch.py` , use [pymavlink to read the DDS_DOMAIN_ID param](https://www.ardusub.com/developers/pymavlink.html#read-and-write-parameters), and issue a warning if it doesn't match the environment variable ROS_DOMAIN_ID

**Describe alternatives you've considered**

The wiki explains this, but people miss it from time to time

**Platform**
[ x ] All
[ ] AntennaTracker
[ ] Copter
[ ] Plane
[ ] Rover
[ ] Submarine

**Additional context**

Contributor guide

Open the contributing guide

Research direction

Start by reading sitl.launch.py and the linked pymavlink parameter-reading documentation to understand the existing launch flow and DDS_DOMAIN_ID lookup. Verify how ROS_DOMAIN_ID is obtained from the environment. Done means SITL warns when the two values differ, without changing behavior when they match.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
robotics
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.