# Livox ROS Driver ### Run livox ros driver livox_ros_driver is a new ros package, which is designed to gradually become the standard driver package for livox devices in the ros environment. The driver offers users a wealth of options when using different launch file. There is *bd_list* arg in each launch file. All Livox LiDAR units in your LAN will be connected automatically in default. e.g. ``` roslaunch livox_ros_driver livox_lidar_rviz.launch ``` If you want to connect to the specific LiDAR uint(s) only, please add the broadcast code into command line. e.g. ``` roslaunch livox_ros_driver livox_lidar_rviz.launch bd_list:="broadcast_code1&broadcast_code2&broadcast_code3" ``` Features of *.launch* files are listed as below: | launch file | features | | ------------------------- | ------------------------------------------------------------ | | *livox_lidar_rviz.launch* | Connect to Livox LiDAR units
Publish pointcloud2 format point cloud
Automatically load rviz | | livox_hub_rviz.launch | Connect to Livox Hub units
Publish pointcloud2 format point cloud
Automatically load rviz | | livox_lidar.launch | Connect to Livox LiDAR units
Publish pointcloud2 format point cloud | | livox_hub.launch | Connect to Livox Hub units
Publish pointcloud2 format point cloud | | livox_lidar_msg.launch | Connect to Livox LiDAR units
Publish livox custom format point cloud | | livox_hub_msg.launch | Connect to Livox Hub units
Publish livox custom format point cloud | Livox custom msg format: ``` Header header # ROS standard message header uint64 timebase # The time of first point uint32 point_num # Total number of pointclouds uint8 lidar_id # Lidar device id number uint8[3] rsvd # Reserved use CustomPoint[] points # Pointcloud data ``` pointcloud format: ``` uint32 offset_time # offset time relative to the base time float32 x # X axis, unit:m float32 y # Y axis, unit:m float32 z # Z axis, unit:m uint8 reflectivity # reflectivity, 0~255 uint8 line # laser number in lidar ```