Hello everyone,
I am currently integrating an Ouster LiDAR with ROS using the provided sensor.launch
file, but I am running into persistent connection and packet issues. I’d like to check if anyone has experienced something similar, or if there are known fixes.
System Setup
-
Sensor model: Ouster OS1 (Ethernet connection)
-
ROS version: Noetic
-
Ouster ROS driver:
ouster_ros
(nodelet-based) -
Network configuration:
-
Sensor hostname:
192.168.80.55
-
PC (UDP destination):
192.168.80.70
-
LiDAR port:
7502
-
IMU port:
7503
-
Launch File Snippet
<arg name="sensor_hostname" default="192.168.80.55"/>
<arg name="udp_dest" default="192.168.80.70"/>
<arg name="lidar_port" default="7502"/>
<arg name="imu_port" default="7503"/>
<arg name="lidar_mode" default="1024x10"/>
<arg name="timestamp_mode" default="TIME_FROM_INTERNAL_OSC"/>
Observed Errors
- In ROS log:
[ERROR] [..]: maximum number of allowed errors from sensor::poll_client() reached, performing self reset..
- With
tcpdump
:
UDP, bad length 12544 > 1472 (port 7502, LiDAR packets)
UDP, length 48 (port 7503, IMU packets - looks normal)
- ROS nodelets eventually reset, and data is not stable.
What I’ve Tried
-
Verified IP addresses and subnet mask (both sensor and PC are reachable by ping).
-
Ensured
lidar_port
andimu_port
match between sensor and driver. -
Disabled ModemManager and added user to
dialout
group. -
Suspect this may be related to MTU size or GRO/LRO offloading on the NIC, but not sure how best to configure for Ouster packets.
Questions
-
Has anyone seen the
bad length > 1472
issue with Ouster LiDAR UDP packets? -
Should the NIC MTU be set to 9000 (jumbo frames) or forced to 1500?
-
Is it recommended to disable GRO/LRO offloading for reliable operation?
-
Are there known “safe” defaults for
timestamp_mode
,lidar_mode
, andudp_profile_lidar
to avoid packet mismatches?
Any advice, especially from those who have resolved similar poll_client()
timeout/reset issues, would be greatly appreciated!
Thanks in advance.