ROS 2 Foxy tf2 static transform publisher and Humble subscriber QoS durability interoperability question
0 reputation · 13 Jun 2021, 06:35 UTC
Goal: Verify whether the default QoS durability settings of the tf2 static transform broadcaster in ROS 2 Foxy (VOLATILE) and ROS 2 Humble (TRANSIENT_LOCAL) prevent reliable exchange of /tf_static messages when nodes built on different distributions communicate.
Constraints: Foxy nodes publish with VOLATILE durability while Humble nodes expect TRANSIENT_LOCAL, causing a QoS mismatch warning and possible transform loss; the ROS 2 documentation does not explicitly call out this distro‑specific default change, and community advice is divided between forcing VOLATILE everywhere or accepting TRANSIENT_LOCAL as the new norm.
- Should users manually set durability to VOLATILE on all tf2 nodes to guarantee cross‑distro compatibility, or adopt TRANSIENT_LOCAL as the universal default?
- Is there a single QoS profile that can be applied to both Foxy and Humble tf2 nodes without modifying the library source?
- Does the tf2 API provide a runtime way to detect and adapt to mismatched durability settings between publisher and subscriber?