LGDXRobot2 ROS 2 is an integration software for the LGDXRobot2 utilising ROS 2 ecosystem, especially navigation with the NAV2 stack. Also, it offers Docker images with ready-to-use ROS 2 environment on a web interface.
The project aims to support the latest ROS 2 LTS release (see the ROS 2 Support Policy).
- LGDXRobot2 Design: (GitLab | GitHub)
- LGDXRobot2 MCU: (GitLab | GitHub)
- LGDXRobot2 ChassisTuner: (GitLab | GitHub)
- LGDXRobot2 ROS 2: (GitLab | GitHub)
- Homepage
- Documentation
- Issue boards on both GitLab and GitHub
- If you are looking to manage multiple robots and logistics tasks, please visit LGDXRobot Cloud (Another project).
- If you are looking to use ROS 2 in a web browser on a single robot, please visit Docker Installation for LGDXRobot2 (This project).
The solution consists of the following packages:
lgdxrobot2_agent: LGDXRobot2 hardware integration for ROS 2 and LGDXRobot Cloud.lgdxrobot2_bringup: LGDXRobot2 launch files.lgdxrobot2_description: LGDXRobot2 visualisation package.lgdxrobot2_msgs: LGDXRobot2 ROS 2 interfaces.lgdxrobot2_navigation: LGDXRobot2 Nav2 stack integration.
- Install ROS 2 (refer to the ROS 2 Support Policy for the supported versions).
- The packages are hosted in a self-hosted repository, install this package to add the repository and the public key.
curl -L -s -o /tmp/lgdxrobot-apt-source.deb https://packages.lgdxrobot.uk/lgdxrobot-apt-source.deb
sudo dpkg -i /tmp/lgdxrobot-apt-source.deb
sudo apt update
rm -f /tmp/lgdxrobot-apt-source.deb- Install the packages. This will also install the required dependencies, including the Nav2 stack.
sudo apt install lgdxrobot2-udev \
ros-${ROS_DISTRO}-lgdx-rplidar-c1 \
ros-${ROS_DISTRO}-lgdxrobot2-*docker run -d \
--name lgdxrobot2 \
-e PUID=1000 \
-e PGID=1000 \
-p 3000:3000 \
-p 3001:3001 \
lgdxrobot/lgdxrobot2-desktop:latestVisit http://localhost:3000 to access the web interface. If the terminal is closed, you can right-click the desktop to relaunch it from the menu.
More information on Docker: https://lgdxrobot.uk/lgdxrobot2/docs/ros2/installation-docker/
Please refer to the ROS 2 Support Policy for the recommended system configurations.
Clone the project and run the following commands:
mkdir -p ~/lgdx_ws/src
cd ~/lgdx_ws/src
git clone https://gitlab.com/lgdxrobotics/lgdxrobot2-rplidar-c1.git -b $ROS_DISTRO
git clone https://gitlab.com/lgdxrobotics/lgdxrobot2-ros2.git -b $ROS_DISTRO
cd ..
# Install build dependencies
rosdep update
rosdep install --from-paths src --ignore-src -y
# Ensure that interfaces is in the system
colcon build --packages-select lgdxrobot2_msgs --symlink-install
source install/setup.bash
colcon build --symlink-installFirst, configure the permissions for the hardwares.
curl -L -s -o rplidar.rules https://gitlab.com/lgdxrobotics/release-strategy-front/-/raw/main/lgdxrobot2-udev/usr/lib/udev/rules.d/99-rplidar.rules
curl -L -s -o lgdxrobot2.rules https://gitlab.com/lgdxrobotics/release-strategy-front/-/raw/main/lgdxrobot2-udev/usr/lib/udev/rules.d/99-lgdxrobot2.rules
sudo mv rplidar.rules /etc/udev/rules.d
sudo mv lgdxrobot2.rules /etc/udev/rules.d
sudo service udev reload
sudo service udev restartThen, source the setup files for the ROS 2 workspaces.
source ~/lgdx_ws/install/setup.bashThis project is licensed under the MIT Licence.
S. Macenski, T. Foote, B. Gerkey, C. Lalancette, W. Woodall, “Robot Operating System 2: Design, architecture, and uses in the wild.”, Science Robotics vol. 7, May 2022.
S. Macenski, A. Soragna, M. Carroll, Z. Ge, “Impact of ROS 2 Node Composition in Robotic Systems”, IEEE Robotics and Autonomous Letters (RA-L), 2023.
S. Macenski, F. Martín, R. White, J. Clavero. The Marathon 2: A Navigation System. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2020.
S. Macenski, T. Moore, DV Lu, A. Merzlyakov, M. Ferguson, From the desks of ROS maintainers: A survey of modern & capable mobile robotics algorithms in the robot operating system 2, Robotics and Autonomous Systems, 2023
S. Macenski, M. Booker, J. Wallace, Open-Source, Cost-Aware Kinematically Feasible Planning for Mobile and Surface Robotics,
Kim, S., Isla, D., Hejtmánek, L., et al., Selkies-GStreamer, (2024), GitHub repository, https://github.com/selkies-project/selkies-gstreamer
This project has been developed and is supported in part by the National Research Platform (NRP) and the Cognitive Hardware and Software Ecosystem Community Infrastructure (CHASE-CI) at the University of California, San Diego, by funding from the National Science Foundation (NSF), with awards #1730158, #1540112, #1541349, #1826967, #2138811, #2112167, #2100237, and #2120019, as well as additional funding from community partners, infrastructure utilization from the Open Science Grid Consortium, supported by the National Science Foundation (NSF) awards #1836650 and #2030508, and infrastructure utilization from the Chameleon testbed, supported by the National Science Foundation (NSF) awards #1419152, #1743354, and #2027170. This project has also been funded by the Seok-San Yonsei Medical Scientist Training Program (MSTP) Song Yong-Sang Scholarship, College of Medicine, Yonsei University, the MD-PhD/Medical Scientist Training Program (MSTP) through the Korea Health Industry Development Institute (KHIDI), funded by the Ministry of Health & Welfare, Republic of Korea, and the Student Research Bursary of Song-dang Institute for Cancer Research, College of Medicine, Yonsei University.

