Panther Robot: Integrating RealSense D555 URDF and CycloneDDS Communication Issues

Hi Husarion Community,

I am currently working with a Panther robot equipped with an Intel RealSense D555. I am encountering two main issues regarding URDF integration and data communication.

1. URDF Configuration for D555

I am trying to add the D555 to my components.yaml file, but I cannot find the specific camera model name within the ros-components-description package or the standard camera configurations on your website (only D435 is found).

  • I have located the D555 CAD model on the official RealSense page.

  • I found a GitHub issue suggesting the use of the D585 URDF as a workaround, though it is currently untested for this setup.

Question: What is the recommended way to define the D555 in the Husarion component description to ensure it attaches correctly to the Panther’s TF tree?

2. CycloneDDS Warnings & Malformed Packets

When echoing the Color topic, I am seeing significant errors and warnings related to rmw_cyclonedds. I am receiving malformed packet errors and type hash failures:

1778070707.302948 [0]       recv: malformed packet received from vendor 1.48 length 80 state parse:shortmsg <52545053 02050130 4f981501 a5151bee 00000036 06013800 c7030000 c2030000 @80 > (note: maybe partially bswap'd)
1778070707.303046 [0]       recv: malformed packet received from vendor 1.48 length 80 state parse:shortmsg <52545053 02050130 4f981501 a5151bee 00000036 06013800 c7040000 c2040000 @80 > (note: maybe partially bswap'd)
1778070707.303084 [0]       recv: malformed packet received from vendor 1.48 length 80 state parse:shortmsg <52545053 02050130 4f981501 a5151bee 00000036 06013800 c7000200 c2000200 @80 > (note: maybe partially bswap'd)
[WARN] [1778070707.303784552] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'realsense/device-info' with type 'realdds::topics::raw::flexible' from USER_DATA '(null)'.
[WARN] [1778070707.303932484] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'realsense/D555_409122300110/notification' with type 'realdds::topics::raw::flexible' from USER_DATA '(null)'.
[WARN] [1778070707.303980573] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'realsense/D555_409122300110/metadata' with type 'realdds::topics::raw::flexible' from USER_DATA '(null)'.
[WARN] [1778070707.304022364] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'rt/realsense/D555_409122300110_Color' with type 'sensor_msgs::msg::dds_::Image_' from USER_DATA '(null)'.
[WARN] [1778070707.304062965] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'rt/realsense/D555_409122300110_Depth' with type 'sensor_msgs::msg::dds_::Image_' from USER_DATA '(null)'.
[WARN] [1778070707.304110906] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'realsense/D555_409122300110/control' with type 'realdds::topics::raw::flexible' from USER_DATA '(null)'.
[WARN] [1778070707.304157464] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'rt/realsense/D555_409122300110_Infrared_1' with type 'sensor_msgs::msg::dds_::Image_' from USER_DATA '(null)'.
[WARN] [1778070707.304508043] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'rt/realsense/D555_409122300110_Infrared_2' with type 'sensor_msgs::msg::dds_::Image_' from USER_DATA '(null)'.
[WARN] [1778070707.304607881] [rmw_cyclonedds_cpp]: Failed to parse type hash for topic 'rt/realsense/D555_409122300110_Motion' with type 'sensor_msgs::msg::dds_::Imu_' from USER_DATA '(null)'.

I saw an issue where fastdds is recommended you can find it here

3. Sequential frame_id Issue

Most critically, when I am able to receive frames, the frame_id appears to be acting as a sequence counter (incrementing with every frame) rather than a static link name:

header:
  stamp:
    sec: 8833
    nanosec: 739244000
  frame_id: '36'
height: 504
width: 896
encoding: yuv422_yuy2
is_bigendian: 0
step: 1792
data:
- 63
- 129
- 76
---
header:
  stamp:
    sec: 8833
    nanosec: 772577000
  frame_id: '37'
height: 504
width: 896
encoding: yuv422_yuy2
is_bigendian: 0
step: 1792
data:
- 57
- 129
- 75


Because the frame_id is dynamic, it is not mapping to a static link in the URDF, which breaks the TF tree.

4. Topic Availability (Only Color Streaming)

I can see several topics being published, but only the Color topic is successfully echoing data. The following topics produce no messages and result in warnings:

  • /realsense/D555_409122300110_Color (Works)

  • /realsense/D555_409122300110_Depth (No messages)

  • /realsense/D555_409122300110_Infrared_1 (No messages)

  • /realsense/D555_409122300110_Infrared_2 (No messages)

  • /realsense/D555_409122300110_Motion (No messages)

Questions:

  1. Has anyone encountered these rmw_cyclonedds malformed packet issues with the newer RealSense models?

  2. Is there a specific parameter in the RealSense ROS 2 driver to force a static frame_id (e.g., camera_color_optical_frame) instead of this sequential integer?

  3. Is there any issues on changing the rmw from cyclone to fastdds?

  4. How to change the camera namespace from realsense to robot1?

Best regards,