rs_driver is a low-level, portable C++14 library developed by RoboSense Technology and released under the BSD-3-Clause license. It forms the core of the entire RoboSense SDK ecosystem — rslidar_sdk (the ROS/ROS 2 wrapper) and rs_perception and other RoboSense perception products are built on top of it.
The library has no external dependencies beyond the standard C++ library and optionally libpcap (for .pcap replay). It receives MSOP and DIFOP packets over UDP, decodes them into LidarPointCloudMsg and delivers them via a callback. Supported models: RS-LiDAR-16, RS-LiDAR-32, RS-Helios-16P, RS-Helios-5515, RS-Bpearl, RS-Ruby, RS-Ruby Plus, RS-LiDAR-M1, RS-LiDAR-M2, RS-LiDAR-M3, RS-LiDAR-E1.
Configuration is done via an RSDriverParam struct in code or a YAML file (when used through rslidar_sdk). Parameters include: sensor IP/port, return mode (single/dual), motion compensation, time sync (GPS $GPRMC + 1PPS or PTP IEEE 1588), FOV blanking angles and external calibration files.
rs_driver is used directly in ROS-free projects (autonomous vehicles, embedded systems, C++ applications on Jetson). It can be included via CMake FetchContent or as a git submodule. rslidar_sdk, rs_perception and other RoboSense packages depend on it as a submodule.
An SDK (Software Development Kit) is a curated set of libraries, interfaces, tools, sample code, and documentation intended for building applications and integrating with a specific hardware device, platform, or service. In robotics, an SDK typically exposes device control, telemetry, sensor access, configuration, and execution functions, significantly reducing the time-to-first-integration for developers targeting a specific robot or platform.
A Driver is a software layer responsible for communication with a specific hardware device or component. In robotics, drivers enable support for sensors (LiDARs, cameras, IMUs), actuators, motor controllers, grippers, and other modules at the hardware or low-level OS layer. They abstract device-specific protocols (USB, CAN, UART, EtherCAT) and expose a standardised interface to the middleware or application layer above.
GitHub: ~400+ stars (RoboSense-LiDAR/rs_driver); submodule of rslidar_sdk and rs_perception
Ubuntu 24.04 LTS 'Noble Numbat' — supported until April 2029. The host for ROS 2 Jazzy.
100 Mbps or Gigabit Ethernet NIC; optionally libpcap for .pcap replay.
License family: Permissive