Package Summary

Tags No category tags.
Version 0.1.1
License BSD Clause 3
Build type AMENT_CMAKE

Repository Summary

Checkout URI
VCS Type git
VCS Version main
Last Updated 2023-12-11
CI status No Continuous Integration
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS2 integration package which offers the maliput API through the ROS2 service interface.

Additional Links

No additional links.


  • Agustin Alba Chicar


No additional authors.


Maliput ROS


This package contains a ROS2 node query server to answer information about the RoadNetwork. It relies on the maliput plugin infrastructure to load all the backend information so specific parameters are parsed from a YAML file and its path is passed as a runtime parameter (maliput_yaml_path).

For a full overview of Maliput capabilities please visit

The purpose of this package and node in particular is to assist agents in their route planning as well as assiting with the kinematics of the road. At the moment, the package offers only geometry related queries, once the rule API is also exposed agents will be able to access more sophisticated queries.

API Documentation

The ROS2 node exposes many services and topics that belong to the LifeCycleNode. Please refer to the documentation to properly handle those. The following, just focuses on the available service calls which are listed below:

  • /branch_point: looks for a maliput::api::BranchPoint by its ID.
  • /derive_lane_s_routes: derives all paths from a maliput::api::RoadPosition to another, filtering Lanes whose length is bigger than a maximum threshold.
  • /eval_motion_derivatives: evaluates the motion derivatives at maliput::api::RoadPosition and scales it by a certain maliput::api::IsoLaneVelocity.
  • /find_road_positions: finds all maliput::api::RoadPositionResult in radius distance from a maliput::api::InertialPosition.
  • /junction: looks for a maliput::api::Junction by its ID.
  • /lane: looks for a maliput::api::Lane by its ID.
  • /lane_boundaries: computes the maliput::api::Lane boundaries at a given maliput::api::RoadPosition.
  • /road_geometry: responds the maliput::api::RoadGeometry configuration.
  • /segment: looks for a maliput::api::Segment by its ID.
  • /to_road_position: maps a maliput::api::InertialPosition into a maliput::api::RoadPosition.
  • /to_inertial_pose: maps a maliput::api::RoadPosition into a maliput::api::InertialPosition and the maliput::api::Rotation there.


Getting Started page is a good place for starting to see the Maliput's capabilities.

For this package in particular, simply execute the following after successfully building the package and sourcing the environment.

ros2 launch maliput_ros --show-args

It should display all the available arguments. Then, make sure you have maliput_malidrive installed in your system and you can launch the sample as follows:

ros2 launch maliput_ros maliput_yaml_path:=/home/$USER/maliput_ws_focal/src/ros2_maliput/maliput_ros/resources/maliput_malidrive_plugin.yml

It should launch the node which loads the plugin and builds a RoadNetwork for TShapeRoad.xord.


Supported platforms

Ubuntu Focal Fossa 20.04 LTS.

Source Installation on Ubuntu


sudo apt install python3-rosdep python3-colcon-common-extensions


  1. Create colcon workspace if you don't have one yet.
    mkdir colcon_ws/src -p

  1. Clone this repository in the src folder
    cd colcon_ws/src
    git clone

  1. Install package dependencies via rosdep
    export ROS_DISTRO=foxy

    rosdep update
    rosdep install -i -y --rosdistro $ROS_DISTRO --from-paths src

  1. Build the package
    colcon build --packages-up-to maliput_ros

**Note**: To build documentation a `-BUILD_DOCS` cmake flag is required:
    colcon build --packages-select maliput_ros --cmake-args " -DBUILD_DOCS=On"

For further info refer to Source Installation on Ubuntu

For development

It is recommended to follow the guidelines for setting up a development workspace as described here.


Please see CONTRIBUTING page.




Changelog for package maliput_ros

0.1.1 (2023-04-17)

  • Adds READMEs to the packages. (#24)
  • Sample lane s route (#21)
  • Routing service (#20)
  • Road position services (#19)
  • Refactor tests to scale build time (#18)
  • Adds branch point service (#17)
  • Adds lane service (#16)
  • Add get segment service (#15)
  • Add get junction service (#14)
  • Add tests to ROS node (#10)
  • Create maliput ros node (#8)
  • Create maliput_ros package (#7)
  • Contributors: Agustin Alba Chicar

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found


No message files found.


No service files found


No plugins found.

Recent questions tagged maliput_ros at Robotics Stack Exchange