Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

Repo symbol

l3cam_ros repository

l3cam_ros

Repository Summary

Checkout URI https://github.com/beamaginelidar/l3cam_ros.git
VCS Type git
VCS Version master
Last Updated 2025-05-26
Dev Status DEVELOPED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
l3cam_ros 1.0.2

README

l3cam_ros

This package is an ROS driver for the L3Cam device manufactured by Beamagine. The driver relies on the library libL3Cam 0.1.18 provided by Beamagine as part of the L3Cam SDK. For more info on the L3Cam check the L3Cam User Manual.

If you are looking for this package for ROS2, go to the l3cam_ros2 package.

This package is supported only on Linux systems and has only been tested with ROS noetic on an Ubuntu 20.04 system.

Installation

Dependencies

First, you will need to install the L3Cam SDK.

Download the package from Beamagine’s L3Cam SDK 0.1.18 release repository and install the required package depending on your hardware architecture:

sudo dpkg -i <PACKAGE>

ROS Driver

Clone this repository in your catkin workspace (e.g. catkin_ws) and build:

cd ~/catkin_ws/src && git clone https://github.com/beamaginelidar/l3cam_ros
catkin_make

Access Permission

You will need to give permission to the cfg files.

cd ~/catkin_ws/src/l3cam_ros/cfg
chmod a+x Network.cfg Lidar.cfg Polarimetric.cfg Rgb.cfg Thermal.cfg AlliedWide.cfg AlliedNarrow.cfg

Operational Advice

Jumbo frames

You will need to enable jumbo frames on your ethernet adapter by increasing the MTU (Maximum Transmission Unit) on the network interface attached to the camera.

A jumbo frame is an Ethernet frame that is larger than 1500 bytes. Most Ethernet adapters support jumbo frames, however it is usually turned off by default. Please note in order to set a 9000 byte packet size on the camera, the Ethernet adapter must support a jumbo frame size of 9000 bytes or higher.

You can check what your current MTU setting is by running the following command:

ifconfig | grep mtu

You should increase the MTU to 9000 to allow jumbo frames. If you use Network Manager, this can be done by opening the network interface settings and editing the “MTU” box under the “Identity” tab.

See the “Linux host configuration” section of the L3Cam User Manual for full details.

Receive Buffer Size

It is also recommended to increase your network default and maximum receive buffer size.

You can check what your current buffer size is:

sudo sysctl 'net.core.rmem_max'
sudo sysctl 'net.core.rmem_default'

Update the buffer size with the following commands:

sudo sh -c "echo 'net.core.rmem_default=268435456' >> /etc/sysctl.conf"
sudo sh -c "echo 'net.core.rmem_max=268435456' >> /etc/sysctl.conf"
sudo sysctl -p

Port usage

libL3Cam uses the following ports for streaming and communications:

PROTOCOL PORT CONFIGURATION
TCP 6000 (L3CAM) Fixed
UDP 6050 (LIDAR) Fixed
UDP 6060 (Allied Wide, Polarimetric) Fixed
UDP 6020 (Allied Narrow, RGB) Fixed
UDP 6030 (LWIR) Fixed
RTSP 5040 (LIDAR) Reconfigurable
RTSP 5030 (Allied Wide, Polarimetric) Reconfigurable
RTSP 5010 (Allied Narrow, RGB) Reconfigurable
RTSP 5020 (LWIR) Reconfigurable

TCP is used internally by libL3Cam and is transparent to the user. However, the system host must have the required port available.

Launch

l3cam

To run the l3cam_ros driver, launch the l3cam.launch file specifying (if wanted) if the stream launch file, the configure launch file, rviz (for visualization GUI) and rqt_reconfigure (for dynamic reconfigure GUI) have to be launched too. By default, the values are as follows:

```

File truncated at 100 lines see the full file