-
Notifications
You must be signed in to change notification settings - Fork 48
Description
Describe the bug
I have two computers connected with zenoh over a direct 1Gb/s link.
One of the two computers, Nvidia Jetson Orin, processes data from a high-resolution camera (1920x1200) at a high rate. While the communication works correctly when not using the pub_max_frequencies parameter, I only need to send the camera images to computer2 at a lower rate for logging purposes.
Setting the downsampling parameter to pub_max_frequencies: ["/zed_node/left_raw/image_raw_color=5"] breaks the communication, and I'm unable to ros 2 topic echo /zed_node/left_raw/image_raw_color on computer2 anymore. Furthermore, the following message appears after approximately 1 minute:
2024-12-29T19:03:50.353380Z ERROR net-0 ThreadId(10) zenoh_transport::unicast::universal::tx: Unable to push non droppable network message to d7712787afec5bd3e3db3a79c943e8b5. Closing transport!
To investigate a little further, I tested my setup with a small ROS string message. I changed the subsampling parameter to pub_max_frequencies: [".*/chatter=5"] and started a new publisher at 100 Hz with
ros2 topic pub /chatter std_msgs/msg/String "data: 'hello from jetson'" -r 100Computer2 shows correctly that the /chatter topic receives messages at 5 Hz.
To reproduce
To reproduce the expected behavior with a small message:
- Add
pub_max_frequencies: [".*/chatter=5"]to your ros2dds plugin config - start a new publisher at 100 Hz with
ros2 topic pub /chatter std_msgs/msg/String "data: 'hello from jetson'" -r 100- On a connected computer2,
ros2 topic hz /chattershould report 5 Hz
To reproduce the failing behavior with large messages:
- Add
pub_max_frequencies: ["/your_camera_topic=5"]to your ros2dds plugin config. - Start a camera driver publishing large messages on the topic
/your_camera_topic - Observe that no messages pass to computer2
System info
- Platform: Ubuntu 22
- System: Nvidia Jetson Orin
zenoh-bridge-ros2dds --version: v1.1.0