|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| as2_platform_mavlink |
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| as2_platform_mavlink |
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| as2_platform_mavlink |
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| as2_platform_mavlink |
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| as2_platform_mavlink |
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| as2_platform_mavlink |
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_examples mavros_extras mavros_msgs |
ROS Distro
|
Package Summary
| Version | 2.16.0 |
| License | GPLv3 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | ros2 |
| Last Updated | 2026-09-27 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for mavros.
The full ROS API of every plugin (topics, services, parameters) is documented in the plugin reference and the generated plugin pages.
This package provides the optional plugins:
-
3dr_radio,adsb,camera,cam_imu_sync,cellular_status,companion_process_status,debug_value,distance_sensor,esc_status,esc_telemetry,fake_gps,gimbal_control,gps_input,gps_rtk,gps_status,guided_target,hil,landing_target,log_transfer,mag_calibration_status,mocap_pose_estimate,mount_control,obstacle_distance,obstacle_distance_3d,odom,onboard_computer_status,open_drone_id,optical_flow,play_tune,px4flow,rangefinder,sim_state,terrain,trajectory,tunnel,vfr_hud,vibration,vision_pose_estimate,vision_speed_estimate,wheel_odometry.
See the plugin reference for how to load and configure each plugin.
Changelog for package mavros_extras
2.16.0 (2026-09-27)
- Merge pull request #2308 from webzuweb/fix/gimbal-control-frame-id-race fix(gimbal_control): guard frame_id/tf_frame_id against data race
- gimbal_control: fix uncrustify
- fix(gimbal_control): guard frame_id/tf_frame_id against data race The frame_id and tf_frame_id std::string members are written from parameter callbacks on the plugin node executor and read from MAVLink message handlers on the UAS executor, with no common synchronization. This is a C++ data race (undefined behavior) when parameters change while gimbal messages arrive. Take the existing shared_timed_mutex mu for writes (s_unique_lock) and copy the frame names under a shared lock (s_shared_lock) before use. Fixes #2301
- Merge pull request #2261 from Daniiiil1/codex/fix-fake-gps-ned-velocity Fix fake GPS velocity frame and COG units
- extras: move fake GPS velocity/course helpers to frame_tf Move calculate_velocity_ned() and course_over_ground_cdeg() into the generic mavros::ftf helpers and drop the fake_gps_utils.hpp shim and its dedicated test target. The fake GPS velocity and course tests now live in the existing libmavros-frame-conversions test.
- Merge pull request #2289 from mavlink/check-cbg plugins: fix cmd/command service deadlocks and const shared_ptr deprecation warnings
- extras: use const shared_ptr in servo_state_publisher callbacks rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. Both robot_description_cb and rc_out_cb only read the received messages.
- extras: use const shared_ptr in tunnel callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. ros_callback only reads the received message.
- extras: use const shared_ptr in play_tune callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. The tune callback only reads the received message.
- extras: use const shared_ptr in gimbal manual control callback rclcpp deprecates non-const shared_ptr subscription callbacks in favor of ConstSharedPtr. manager_set_manual_control_cb was the only gimbal callback still taking a non-const pointer; it does not modify the message.
- extras: run mount configure in a dedicated callback group (fix #2286) The throwaway cmd/command client lands in the node default MutuallyExclusive group. Because configure_srv also ran in that group, mount_configure_cb blocked on future.get() while the client response callback could never be scheduled, deadlocking the ~/configure service. Bind configure_srv to its own callback group so the caller and the client response run in disjoint groups.
- Fix fake GPS test dependency
- Fix fake GPS NED velocity and course
- Contributors: Daniil Mordanov, Vladimir Ermakov, webzuweb
2.15.1 (2026-08-22)
- extras: fix mount diagnostic clock source
- extras: fix HIL_GPS over-scaling and expose id/yaw (fix #2090)
- Merge pull request #2260 from mavlink/fix-deprecations Fix deprecations
- mavros: fix deprecated subscription callback signatures rclcpp deprecates callbacks taking non-const std::shared_ptr<MessageT>. Convert topic subscription callbacks to MessageT::ConstSharedPtr, and the Mavlink router/UAS bus to MessageT::UniquePtr (matching the zero-copy make_unique publisher).
- docs: restructure node docs and refresh links Move mavros README content into docs/ (connection URLs, frames, nodes, troubleshooting), reduce package READMEs to GitHub overviews, add mermaid diagrams, and refresh docs.ros.org references to Lyrical.
- Contributors: Vladimir Ermakov
2.15.0 (2026-08-08)
-
Merge pull request #2259 from mavlink/docs-refresh docs: refresh, refactor extractor
-
cog: re-generate all
-
docs: refresh subpackage READMEs
- mavros: point the API docs link at readthedocs/plugin reference instead of the dead wiki.ros.org page; fix ROS1 roslaunch examples to ros2 launch; note that up-to-date install instructions live in the readthedocs guide.
- mavros_extras: link to the full plugin reference.
- libmavconn: link to the docs and API reference.
- mavros_msgs: add the missing README (message/service overview + API links).
- test_mavros: mark the ROS1-era SITL hand-tests as historical.
-
docs: remove redundant topic repetitions in plugin docs
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras mavros_msgs test_mavros |
ROS Distro
|
Package Summary
| Version | 1.21.1 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-12-12 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for [mavros][mr].
ADSB
Publish/subscribe to the location and information of an ADS-B vehicle.
cam_imu_sync
Publish camera trigger data for synchronisation of IMU and camera frames.
debug_value
Subs/Pubs debug msgs from and to the FCU.
distance_sensor
Publish DISTANCE_SENSOR message data from FCU or connected sensors in companion computer.
fake_gps
Sends fake GPS from local position estimation source data (motion capture, vision) to FCU.
gps_input
Send GPS_INPUT messages to the FCU.
gps_status
Publish GPS_RAW and GPS_RTK messages from FCU.
gps_rtk
Sends the RTCM messages to the FCU for the RTK Fix.
log_transfer
Expose firmware functionality, that is related to log transfer
mocap_pose_estimate
Send motion capture pose estimate to FCU. Currently, not used by the FCU.
Data can be send via vision_position plugin.
obstacle_distance
Send obstacle distance report to the FCU.
odom
Send odometry to FCU from another estimator.
px4flow
Publish OPTICAL_FLOW_RAD data from FCU or PX4Flow module.
rangefinder
Publish RANGEFINDER message data from FCU sensors in companion computer.
trajectory
Receive planned path from the FCU and send back corrected path (collision free, smoothed) to the FCU.
wheel_odometry
File truncated at 100 lines see the full file
Changelog for package mavros_extras
1.21.1 (2025-12-12)
- extras: fix misprint
- extras landing_target: fix #2080 fov vector init
- Contributors: Vladimir Ermakov
1.21.0 (2025-09-08)
- regenerate all
- Contributors: Vladimir Ermakov
1.20.1 (2025-05-05)
1.20.0 (2024-10-10)
- Add missing std_srvs dependency
- add param to odom plugin
- add frame_id parameter
- Fix compile error when compiling with gcc 13 The error is: src/plugins/mag_calibration_status.cpp:64:22: error: ‘bitset’ is not a member of ‘std’
- Contributors: EnderMandS, Michal Sojka, Roland Arsenault
1.19.0 (2024-06-06)
1.18.0 (2024-03-03)
- [camera plugin] Fix image_index and capture_result not properly filled
- Fix missing semi-colon
- GPS_STATUS Plugin: Fill in available messages for ROS1 legacy Filled in available fields in GPS_RAW_INT & GPS2_RAW messages p.s. seems GPS2_RAW more complete than original GPS_RAW_INT
- Contributors: Beniamino Pozzan, Seunghwan Jo
1.17.0 (2023-09-09)
- Merge pull request #1865 from scoutdi/warnings Fix / suppress some build warnings
- mavros_extras: Fix some init order warnings
- Suppress warnings from included headers
- Contributors: Morten Fyhn Amundsen, Vladimir Ermakov
1.16.0 (2023-05-05)
- Merge pull request #1817 from lucasw/pluginlib_hpp use hpp instead of deprecated .h pluginlib headers
- use hpp instead of deprecated .h pluginlib headers
- Contributors: Lucas Walter, Vladimir Ermakov
1.15.0 (2022-12-30)
- Merge pull request #1811 from scoutdi/debug-float-array Implement debug float array handler
- Implement debug float array handler Co-authored-by: Morten Fyhn Amundsen <<morten.f.amundsen@scoutdi.com>>
- Merge pull request #1807 from scoutdi/fix-bitwise-comparison mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1808 from scoutdi/fix-sequence-point-warning mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1805 from scoutdi/fix-latlon-check mavros_extras: Fix buggy check for lat/lon ignored
- mavros_extras: Fix buggy check for lat/lon ignored
- Contributors: Morten Fyhn Amundsen, Sverre Velten Rothmund, Vladimir Ermakov
1.14.0 (2022-09-24)
- Merge pull request #1780 from snktshrma/master guided_target: accept position-target-global-int messages
- plugins: add guided_target to accept offboard position targets Update guided_target.cpp Update guided_target.cpp Update mavros_plugins.xml Update CMakeLists.txt Added offboard_position.cpp Update apm_config.yaml Update offboard_position.cpp Update offboard_position.cpp Rename offboard_position.cpp to guided_target.cpp Update CMakeLists.txt Update mavros_plugins.xml Update apm_config.yaml Update guided_target.cpp
- Merge pull request #1744 from amilcarlucas/pr_gimbal_diagnostics_fixes mount_control.cpp: detect MOUNT_ORIENTATION stale messages
- mount_control.cpp: detect MOUNT_ORIENTATION stale messages correct
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| cmake_modules | |
| catkin | |
| mavros | |
| roscpp | |
| geometry_msgs | |
| mavros_msgs | |
| sensor_msgs | |
| std_msgs | |
| std_srvs | |
| visualization_msgs | |
| urdf | |
| tf | |
| tf2_eigen |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| test_mavros |
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 1]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras mavros_msgs test_mavros |
ROS Distro
|
Package Summary
| Version | 0.17.5 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | indigo-devel |
| Last Updated | 2017-02-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
mavros extras
Some extra plugins and nodes for mavros.
px4flow
Plugin for mavros. Publish OPTICAL_FLOW_RAD data.
image_pub
Plugin for mavros, publish images from mavlink device.
gcs_image_bridge
Variation of gcs_bridge that additionally sends image stream to GCS.
mocap_pose_estimate
Plugin for mavros, to send mocap data to FCU. Currently, not used by the FCU.
Data can be send via vision_position plugin.
px-ros-pkg replacement
Use roslaunch mavros_extras px4flow.launch for that.
Changelog for package mavros_extras
0.17.5 (2017-02-07)
0.17.4 (2016-06-23)
0.17.3 (2016-05-20)
0.17.2 (2016-04-29)
0.17.1 (2016-03-28)
- ran uncrustify
- fixed typos
- use CUBE_LIST for faster rendering
- limit track size
- use local variable
- fixed indentation
- added rc modes
- moved rc to rc_override_control()
- replaced tabulations with spaces (4)
- introducing RC modes
- fixed
- quality added
- added visualization for local setpoints
- Contributors: Joey Gong, francois
0.17.0 (2016-02-09)
- rebased with master
- ran uncrustify
- removed duplicate include
- use MarkerArray for vehicle model
- Updated frame transformations and added odom publisher to local position plugin
- Contributors: Eddy, francois
0.16.6 (2016-02-04)
- extras: uncrustify
- added tf
- comments
- configurable vehicle model
- Contributors: Vladimir Ermakov, francois
0.16.5 (2016-01-11)
0.16.4 (2015-12-14)
0.16.3 (2015-11-19)
0.16.2 (2015-11-17)
0.16.1 (2015-11-13)
0.16.0 (2015-11-09)
- gcs_bridge #394: enable both UDPROS and TCPROS transports
- extras fix #392: add additional subscription for PoseWithCovarianceStamped
- Contributors: Vladimir Ermakov
0.15.0 (2015-09-17)
- extras #387: fix header stamp in joint_states
- extras fix #387: SSP node done.
- extras #387: subscriber works, node almost done
- extras #387: load URDF
- extras #387: initial import of servo_status_publisher
- Contributors: Vladimir Ermakov
0.14.2 (2015-08-20)
- extras: fix catkin lint warnings
- Contributors: Vladimir Ermakov
0.14.1 (2015-08-19)
0.14.0 (2015-08-17)
- extras: gcs node: replace deprecated copy function
- extras: scripts: use API from mavros module
- package: remove not exist dependency
- extras: vibration: Fix message include
- extras: px4flow: Fix message include
- extras: cam_imu_sync: Fix message include
- extras: update package description
- msgs: deprecate mavros::Mavlink and copy utils.
- msgs #354: move all messages to mavros_msgs package.
- opencv 3.0/2.4 header compatibility
- fix orientation empty error
- Contributors: Vladimir Ermakov, andre-nguyen, v01d
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| cmake_modules | |
| catkin | |
| image_transport | |
| cv_bridge | |
| mavros | |
| roscpp | |
| geometry_msgs | |
| mavros_msgs | |
| sensor_msgs | |
| std_msgs | |
| visualization_msgs | |
| urdf | |
| tf |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| test_mavros |
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 1]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras mavros_msgs test_mavros |
ROS Distro
|
Package Summary
| Version | 0.17.5 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | indigo-devel |
| Last Updated | 2017-02-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
mavros extras
Some extra plugins and nodes for mavros.
px4flow
Plugin for mavros. Publish OPTICAL_FLOW_RAD data.
image_pub
Plugin for mavros, publish images from mavlink device.
gcs_image_bridge
Variation of gcs_bridge that additionally sends image stream to GCS.
mocap_pose_estimate
Plugin for mavros, to send mocap data to FCU. Currently, not used by the FCU.
Data can be send via vision_position plugin.
px-ros-pkg replacement
Use roslaunch mavros_extras px4flow.launch for that.
Changelog for package mavros_extras
0.17.5 (2017-02-07)
0.17.4 (2016-06-23)
0.17.3 (2016-05-20)
0.17.2 (2016-04-29)
0.17.1 (2016-03-28)
- ran uncrustify
- fixed typos
- use CUBE_LIST for faster rendering
- limit track size
- use local variable
- fixed indentation
- added rc modes
- moved rc to rc_override_control()
- replaced tabulations with spaces (4)
- introducing RC modes
- fixed
- quality added
- added visualization for local setpoints
- Contributors: Joey Gong, francois
0.17.0 (2016-02-09)
- rebased with master
- ran uncrustify
- removed duplicate include
- use MarkerArray for vehicle model
- Updated frame transformations and added odom publisher to local position plugin
- Contributors: Eddy, francois
0.16.6 (2016-02-04)
- extras: uncrustify
- added tf
- comments
- configurable vehicle model
- Contributors: Vladimir Ermakov, francois
0.16.5 (2016-01-11)
0.16.4 (2015-12-14)
0.16.3 (2015-11-19)
0.16.2 (2015-11-17)
0.16.1 (2015-11-13)
0.16.0 (2015-11-09)
- gcs_bridge #394: enable both UDPROS and TCPROS transports
- extras fix #392: add additional subscription for PoseWithCovarianceStamped
- Contributors: Vladimir Ermakov
0.15.0 (2015-09-17)
- extras #387: fix header stamp in joint_states
- extras fix #387: SSP node done.
- extras #387: subscriber works, node almost done
- extras #387: load URDF
- extras #387: initial import of servo_status_publisher
- Contributors: Vladimir Ermakov
0.14.2 (2015-08-20)
- extras: fix catkin lint warnings
- Contributors: Vladimir Ermakov
0.14.1 (2015-08-19)
0.14.0 (2015-08-17)
- extras: gcs node: replace deprecated copy function
- extras: scripts: use API from mavros module
- package: remove not exist dependency
- extras: vibration: Fix message include
- extras: px4flow: Fix message include
- extras: cam_imu_sync: Fix message include
- extras: update package description
- msgs: deprecate mavros::Mavlink and copy utils.
- msgs #354: move all messages to mavros_msgs package.
- opencv 3.0/2.4 header compatibility
- fix orientation empty error
- Contributors: Vladimir Ermakov, andre-nguyen, v01d
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| cmake_modules | |
| catkin | |
| image_transport | |
| cv_bridge | |
| mavros | |
| roscpp | |
| geometry_msgs | |
| mavros_msgs | |
| sensor_msgs | |
| std_msgs | |
| visualization_msgs | |
| urdf | |
| tf |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| test_mavros |
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 1]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras |
ROS Distro
|
Package Summary
| Version | 0.8.6 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | hydro-devel |
| Last Updated | 2015-03-04 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
mavros extras
Some extra plugins and nodes for mavros.
px4flow
Plugin for mavros. Publish OPTICAL_FLOW data.
image_pub
Plugin for mavros, publish images from mavlink device.
gcs_image_bridge
Variation of gcs_bridge that additionally sends image stream to GCS.
px-ros-pkg replacement
Use roslaunch mavros_extras px4flow.launch for that.
Changelog for package mavros_extras
0.8.6 (2015-03-04)
0.8.5 (2014-11-04)
0.8.4 (2014-11-03)
0.8.3 (2014-11-03)
- 0.8.2
- prepare minor release 0.8.2 for hydro
- Contributors: Vladimir Ermakov
0.8.2 (2014-11-03)
0.8.1 (2014-11-02)
- mavconn #161: Fix headers used in mavros. Add readme.
- Update repo links. Package moved to mavlink organization.
- Contributors: Vladimir Ermakov
0.8.0 (2014-09-22)
- Revert "Update package.xml format to REP140 (2)." This reverts commit 81286eb84090a95759591cfab89dd9718ff35b7e. ROS Hydro don't fully support REP140: rospack can't find plugin descriptions. Fix #151.
- Added arming/disarming for att mode.
- Added arming and disarming via mavteleop.
- extras: mocap: Fix param/topic namespace. Fix #150.
- extras: launch: Use includes. Fix #144.
- Update package.xml format to REP140 (2). Fix #104.
- extras: launch: Fix typos.
- extras: launch: Add teleop launch script.
- extras: mavteleop: Dirty implementation of position control mode. Issue #133.
- extras: mavteleop: Implement velocity setpoint control. Issue #133.
- extras: mavteleop: Implement attitude control mode. Issue #133.
- extras: Use cmake modules. Issue #139.
- Update doxygen documentation. Add split lines in UAS, and make UAS.connection atomic. Add rosdoc configuration for mavros_extras.
- scripts: mavsetp: corrected msg API; mavteleop: added prefix to rc override
- scripts: Initial import mavteleop Now it's just proof of concept. Implemented only RC override of RPYT channels. Issue #133.
- node: Catch URL open exception. Also update connection pointer type.
- Contributors: Nuno Marques, Tony Baltovski, Vladimir Ermakov
0.7.1 (2014-08-25)
- plugins: Change UAS FCU link name. Reduce smart pointer count, that hold fcu link object.
- Plugins: finish moving plugins
- Closes #122, closes #123; plugins: move mocap & vision plugins to extras, change vision plugins name
- launch: Add example launch for #103.
- extras: image_pub: Update plugin API.
- extras: px4flow: Update plugin API.
- plugins: disable most of plugins
- extras: init ctor
- extras: Fix package URLs
- test: temporary travis hack (manually download latest mavlink deb)
- Update readme
- Contributors: Nuno Marques, Vladimir Ermakov
0.7.0 (2014-08-12)
- move exras to subdirectory, #101
- Contributors: Vladimir Ermakov, M.H.Kabir
Package Dependencies
| Deps | Name |
|---|---|
| image_transport | |
| cv_bridge | |
| mavlink | |
| mavros | |
| roscpp | |
| sensor_msgs | |
| catkin |
System Dependencies
Dependant Packages
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 50]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras mavros_msgs test_mavros |
ROS Distro
|
Package Summary
| Version | 1.21.1 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-12-12 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for [mavros][mr].
ADSB
Publish/subscribe to the location and information of an ADS-B vehicle.
cam_imu_sync
Publish camera trigger data for synchronisation of IMU and camera frames.
debug_value
Subs/Pubs debug msgs from and to the FCU.
distance_sensor
Publish DISTANCE_SENSOR message data from FCU or connected sensors in companion computer.
fake_gps
Sends fake GPS from local position estimation source data (motion capture, vision) to FCU.
gps_input
Send GPS_INPUT messages to the FCU.
gps_status
Publish GPS_RAW and GPS_RTK messages from FCU.
gps_rtk
Sends the RTCM messages to the FCU for the RTK Fix.
log_transfer
Expose firmware functionality, that is related to log transfer
mocap_pose_estimate
Send motion capture pose estimate to FCU. Currently, not used by the FCU.
Data can be send via vision_position plugin.
obstacle_distance
Send obstacle distance report to the FCU.
odom
Send odometry to FCU from another estimator.
px4flow
Publish OPTICAL_FLOW_RAD data from FCU or PX4Flow module.
rangefinder
Publish RANGEFINDER message data from FCU sensors in companion computer.
trajectory
Receive planned path from the FCU and send back corrected path (collision free, smoothed) to the FCU.
wheel_odometry
File truncated at 100 lines see the full file
Changelog for package mavros_extras
1.21.1 (2025-12-12)
- extras: fix misprint
- extras landing_target: fix #2080 fov vector init
- Contributors: Vladimir Ermakov
1.21.0 (2025-09-08)
- regenerate all
- Contributors: Vladimir Ermakov
1.20.1 (2025-05-05)
1.20.0 (2024-10-10)
- Add missing std_srvs dependency
- add param to odom plugin
- add frame_id parameter
- Fix compile error when compiling with gcc 13 The error is: src/plugins/mag_calibration_status.cpp:64:22: error: ‘bitset’ is not a member of ‘std’
- Contributors: EnderMandS, Michal Sojka, Roland Arsenault
1.19.0 (2024-06-06)
1.18.0 (2024-03-03)
- [camera plugin] Fix image_index and capture_result not properly filled
- Fix missing semi-colon
- GPS_STATUS Plugin: Fill in available messages for ROS1 legacy Filled in available fields in GPS_RAW_INT & GPS2_RAW messages p.s. seems GPS2_RAW more complete than original GPS_RAW_INT
- Contributors: Beniamino Pozzan, Seunghwan Jo
1.17.0 (2023-09-09)
- Merge pull request #1865 from scoutdi/warnings Fix / suppress some build warnings
- mavros_extras: Fix some init order warnings
- Suppress warnings from included headers
- Contributors: Morten Fyhn Amundsen, Vladimir Ermakov
1.16.0 (2023-05-05)
- Merge pull request #1817 from lucasw/pluginlib_hpp use hpp instead of deprecated .h pluginlib headers
- use hpp instead of deprecated .h pluginlib headers
- Contributors: Lucas Walter, Vladimir Ermakov
1.15.0 (2022-12-30)
- Merge pull request #1811 from scoutdi/debug-float-array Implement debug float array handler
- Implement debug float array handler Co-authored-by: Morten Fyhn Amundsen <<morten.f.amundsen@scoutdi.com>>
- Merge pull request #1807 from scoutdi/fix-bitwise-comparison mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1808 from scoutdi/fix-sequence-point-warning mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1805 from scoutdi/fix-latlon-check mavros_extras: Fix buggy check for lat/lon ignored
- mavros_extras: Fix buggy check for lat/lon ignored
- Contributors: Morten Fyhn Amundsen, Sverre Velten Rothmund, Vladimir Ermakov
1.14.0 (2022-09-24)
- Merge pull request #1780 from snktshrma/master guided_target: accept position-target-global-int messages
- plugins: add guided_target to accept offboard position targets Update guided_target.cpp Update guided_target.cpp Update mavros_plugins.xml Update CMakeLists.txt Added offboard_position.cpp Update apm_config.yaml Update offboard_position.cpp Update offboard_position.cpp Rename offboard_position.cpp to guided_target.cpp Update CMakeLists.txt Update mavros_plugins.xml Update apm_config.yaml Update guided_target.cpp
- Merge pull request #1744 from amilcarlucas/pr_gimbal_diagnostics_fixes mount_control.cpp: detect MOUNT_ORIENTATION stale messages
- mount_control.cpp: detect MOUNT_ORIENTATION stale messages correct
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| cmake_modules | |
| catkin | |
| mavros | |
| roscpp | |
| geometry_msgs | |
| mavros_msgs | |
| sensor_msgs | |
| std_msgs | |
| std_srvs | |
| visualization_msgs | |
| urdf | |
| tf | |
| tf2_eigen |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| test_mavros |
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 1]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras mavros_msgs test_mavros |
ROS Distro
|
Package Summary
| Version | 1.21.1 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-12-12 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for [mavros][mr].
ADSB
Publish/subscribe to the location and information of an ADS-B vehicle.
cam_imu_sync
Publish camera trigger data for synchronisation of IMU and camera frames.
debug_value
Subs/Pubs debug msgs from and to the FCU.
distance_sensor
Publish DISTANCE_SENSOR message data from FCU or connected sensors in companion computer.
fake_gps
Sends fake GPS from local position estimation source data (motion capture, vision) to FCU.
gps_input
Send GPS_INPUT messages to the FCU.
gps_status
Publish GPS_RAW and GPS_RTK messages from FCU.
gps_rtk
Sends the RTCM messages to the FCU for the RTK Fix.
log_transfer
Expose firmware functionality, that is related to log transfer
mocap_pose_estimate
Send motion capture pose estimate to FCU. Currently, not used by the FCU.
Data can be send via vision_position plugin.
obstacle_distance
Send obstacle distance report to the FCU.
odom
Send odometry to FCU from another estimator.
px4flow
Publish OPTICAL_FLOW_RAD data from FCU or PX4Flow module.
rangefinder
Publish RANGEFINDER message data from FCU sensors in companion computer.
trajectory
Receive planned path from the FCU and send back corrected path (collision free, smoothed) to the FCU.
wheel_odometry
File truncated at 100 lines see the full file
Changelog for package mavros_extras
1.21.1 (2025-12-12)
- extras: fix misprint
- extras landing_target: fix #2080 fov vector init
- Contributors: Vladimir Ermakov
1.21.0 (2025-09-08)
- regenerate all
- Contributors: Vladimir Ermakov
1.20.1 (2025-05-05)
1.20.0 (2024-10-10)
- Add missing std_srvs dependency
- add param to odom plugin
- add frame_id parameter
- Fix compile error when compiling with gcc 13 The error is: src/plugins/mag_calibration_status.cpp:64:22: error: ‘bitset’ is not a member of ‘std’
- Contributors: EnderMandS, Michal Sojka, Roland Arsenault
1.19.0 (2024-06-06)
1.18.0 (2024-03-03)
- [camera plugin] Fix image_index and capture_result not properly filled
- Fix missing semi-colon
- GPS_STATUS Plugin: Fill in available messages for ROS1 legacy Filled in available fields in GPS_RAW_INT & GPS2_RAW messages p.s. seems GPS2_RAW more complete than original GPS_RAW_INT
- Contributors: Beniamino Pozzan, Seunghwan Jo
1.17.0 (2023-09-09)
- Merge pull request #1865 from scoutdi/warnings Fix / suppress some build warnings
- mavros_extras: Fix some init order warnings
- Suppress warnings from included headers
- Contributors: Morten Fyhn Amundsen, Vladimir Ermakov
1.16.0 (2023-05-05)
- Merge pull request #1817 from lucasw/pluginlib_hpp use hpp instead of deprecated .h pluginlib headers
- use hpp instead of deprecated .h pluginlib headers
- Contributors: Lucas Walter, Vladimir Ermakov
1.15.0 (2022-12-30)
- Merge pull request #1811 from scoutdi/debug-float-array Implement debug float array handler
- Implement debug float array handler Co-authored-by: Morten Fyhn Amundsen <<morten.f.amundsen@scoutdi.com>>
- Merge pull request #1807 from scoutdi/fix-bitwise-comparison mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1808 from scoutdi/fix-sequence-point-warning mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1805 from scoutdi/fix-latlon-check mavros_extras: Fix buggy check for lat/lon ignored
- mavros_extras: Fix buggy check for lat/lon ignored
- Contributors: Morten Fyhn Amundsen, Sverre Velten Rothmund, Vladimir Ermakov
1.14.0 (2022-09-24)
- Merge pull request #1780 from snktshrma/master guided_target: accept position-target-global-int messages
- plugins: add guided_target to accept offboard position targets Update guided_target.cpp Update guided_target.cpp Update mavros_plugins.xml Update CMakeLists.txt Added offboard_position.cpp Update apm_config.yaml Update offboard_position.cpp Update offboard_position.cpp Rename offboard_position.cpp to guided_target.cpp Update CMakeLists.txt Update mavros_plugins.xml Update apm_config.yaml Update guided_target.cpp
- Merge pull request #1744 from amilcarlucas/pr_gimbal_diagnostics_fixes mount_control.cpp: detect MOUNT_ORIENTATION stale messages
- mount_control.cpp: detect MOUNT_ORIENTATION stale messages correct
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| cmake_modules | |
| catkin | |
| mavros | |
| roscpp | |
| geometry_msgs | |
| mavros_msgs | |
| sensor_msgs | |
| std_msgs | |
| std_srvs | |
| visualization_msgs | |
| urdf | |
| tf | |
| tf2_eigen |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| test_mavros | |
| clover |
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 1]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]
Messages
Services
Plugins
Recent questions tagged mavros_extras at Robotics Stack Exchange
|
mavros_extras package from mavros repolibmavconn mavros mavros_extras mavros_msgs test_mavros |
ROS Distro
|
Package Summary
| Version | 1.21.1 |
| License | GPLv3 |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/mavlink/mavros.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-12-12 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Vladimir Ermakov
Authors
- Vladimir Ermakov
- Amilcar Lucas
mavros extras
Some extra plugins and nodes for [mavros][mr].
ADSB
Publish/subscribe to the location and information of an ADS-B vehicle.
cam_imu_sync
Publish camera trigger data for synchronisation of IMU and camera frames.
debug_value
Subs/Pubs debug msgs from and to the FCU.
distance_sensor
Publish DISTANCE_SENSOR message data from FCU or connected sensors in companion computer.
fake_gps
Sends fake GPS from local position estimation source data (motion capture, vision) to FCU.
gps_input
Send GPS_INPUT messages to the FCU.
gps_status
Publish GPS_RAW and GPS_RTK messages from FCU.
gps_rtk
Sends the RTCM messages to the FCU for the RTK Fix.
log_transfer
Expose firmware functionality, that is related to log transfer
mocap_pose_estimate
Send motion capture pose estimate to FCU. Currently, not used by the FCU.
Data can be send via vision_position plugin.
obstacle_distance
Send obstacle distance report to the FCU.
odom
Send odometry to FCU from another estimator.
px4flow
Publish OPTICAL_FLOW_RAD data from FCU or PX4Flow module.
rangefinder
Publish RANGEFINDER message data from FCU sensors in companion computer.
trajectory
Receive planned path from the FCU and send back corrected path (collision free, smoothed) to the FCU.
wheel_odometry
File truncated at 100 lines see the full file
Changelog for package mavros_extras
1.21.1 (2025-12-12)
- extras: fix misprint
- extras landing_target: fix #2080 fov vector init
- Contributors: Vladimir Ermakov
1.21.0 (2025-09-08)
- regenerate all
- Contributors: Vladimir Ermakov
1.20.1 (2025-05-05)
1.20.0 (2024-10-10)
- Add missing std_srvs dependency
- add param to odom plugin
- add frame_id parameter
- Fix compile error when compiling with gcc 13 The error is: src/plugins/mag_calibration_status.cpp:64:22: error: ‘bitset’ is not a member of ‘std’
- Contributors: EnderMandS, Michal Sojka, Roland Arsenault
1.19.0 (2024-06-06)
1.18.0 (2024-03-03)
- [camera plugin] Fix image_index and capture_result not properly filled
- Fix missing semi-colon
- GPS_STATUS Plugin: Fill in available messages for ROS1 legacy Filled in available fields in GPS_RAW_INT & GPS2_RAW messages p.s. seems GPS2_RAW more complete than original GPS_RAW_INT
- Contributors: Beniamino Pozzan, Seunghwan Jo
1.17.0 (2023-09-09)
- Merge pull request #1865 from scoutdi/warnings Fix / suppress some build warnings
- mavros_extras: Fix some init order warnings
- Suppress warnings from included headers
- Contributors: Morten Fyhn Amundsen, Vladimir Ermakov
1.16.0 (2023-05-05)
- Merge pull request #1817 from lucasw/pluginlib_hpp use hpp instead of deprecated .h pluginlib headers
- use hpp instead of deprecated .h pluginlib headers
- Contributors: Lucas Walter, Vladimir Ermakov
1.15.0 (2022-12-30)
- Merge pull request #1811 from scoutdi/debug-float-array Implement debug float array handler
- Implement debug float array handler Co-authored-by: Morten Fyhn Amundsen <<morten.f.amundsen@scoutdi.com>>
- Merge pull request #1807 from scoutdi/fix-bitwise-comparison mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1808 from scoutdi/fix-sequence-point-warning mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a sequence point warning
- mavros_extras: Fix a comparison that shouldn't be bitwise
- Merge pull request #1805 from scoutdi/fix-latlon-check mavros_extras: Fix buggy check for lat/lon ignored
- mavros_extras: Fix buggy check for lat/lon ignored
- Contributors: Morten Fyhn Amundsen, Sverre Velten Rothmund, Vladimir Ermakov
1.14.0 (2022-09-24)
- Merge pull request #1780 from snktshrma/master guided_target: accept position-target-global-int messages
- plugins: add guided_target to accept offboard position targets Update guided_target.cpp Update guided_target.cpp Update mavros_plugins.xml Update CMakeLists.txt Added offboard_position.cpp Update apm_config.yaml Update offboard_position.cpp Update offboard_position.cpp Rename offboard_position.cpp to guided_target.cpp Update CMakeLists.txt Update mavros_plugins.xml Update apm_config.yaml Update guided_target.cpp
- Merge pull request #1744 from amilcarlucas/pr_gimbal_diagnostics_fixes mount_control.cpp: detect MOUNT_ORIENTATION stale messages
- mount_control.cpp: detect MOUNT_ORIENTATION stale messages correct
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| cmake_modules | |
| catkin | |
| mavros | |
| roscpp | |
| geometry_msgs | |
| mavros_msgs | |
| sensor_msgs | |
| std_msgs | |
| std_srvs | |
| visualization_msgs | |
| urdf | |
| tf | |
| tf2_eigen |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| test_mavros |
Launch files
- launch/px4_image.launch
-
- fcu_url [default: serial:///dev/ttyACM0:57600]
- gcs_url [default: udp://@]
- tgt_system [default: 1]
- tgt_component [default: 1]
- launch/px4flow.launch
-
- fcu_url [default: serial:///dev/ttyACM0:921600]
- gcs_url [default: ]
- tgt_system [default: 81]
- tgt_component [default: 50]
- launch/teleop.launch
-
- teleop_args [default: -att]