-
Hi there, We have a couple of machines on the same local subnet but running ROS 2 nodes on different DDS domains IDs. We've deployed a zenoh bridge on each machine to selectively bridge certain ROS 2 endpoints. Once we disconnected these machines from the internet, their systems clocks go out of sync. As a result the bridges start throwing errors about timestamps that are significantly out of sync. Wondering if there is a way to disable timestamp checking of zenoh packets? Or is it better to have one of the machines serve as an NTP server and have others sync with this machine? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
Hi @Yadunund, Short answer: Long answer: |
Beta Was this translation helpful? Give feedback.
-
Hi @JEnoch, Many thanks for the detailed response. Really appreciate it. There are some endpoints with TRANSIENT_LOCAL durability so I guess clock sync is the way to go. On a slightly unrelated note, The problem does not exist when I have 3 terminals on the same PC running the service/client nodes on different domain ids and have a zenoh bridge that bridges the service across these domains on localhost. The only difference in the zenoh config files between this test case and the one described above is the IP address in the I'm wondering if you have an explanation for this. Would PR eclipse-zenoh/zenoh-plugin-dds#108 fix this? |
Beta Was this translation helpful? Give feedback.
Hi @Yadunund,
Short answer:
currently the
zenoh-bridge-dds
are timestamping by default and there is no option to disable this.However, you can get rid of those logs about timestamps exceeding the delta by increasing the delta value.
For this, define such environment variable:
UHLC_MAX_DELTA_MS=86400000
. This means the log won't occur if the clock drift between your 2 system clocks is less than 1 day (86400000 milliseconds)Long answer:
zenoh-bridge-dds
requires timestamps and thus synchronised system clocks for a correct behaviour of TRANSIENT_LOCAL support.Lets consider your ROS 2 nodes on different domains IDs are publishing on the same topic with TRANSIENT_LOCAL QoS. If host A has a …