Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged sm_cl_px4_mr_test_4 at Robotics Stack Exchange
Package Summary
| Version | 3.1.0 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2026-09-17 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
State Machine Diagram
Description
All tunables (altitudes, speeds, ring radius, pattern sizes, sine amplitude, loiter count, timeouts,
fallback backbone) live in mission_constants.hpp; every pattern’s parameter set is assembled once in
railway/pattern_params.hpp, which both the superstates and the planner read. Each plan node carries the
pattern centroid (the pin) and the pattern’s entry/exit points computed from those parameters, so transit
legs fly straight to where a pattern starts (a lawnmower corner, a figure-eight lobe tip) rather than to
its centre.
Uses one orthogonal:
-
OrPx4 -
cl_px4_mr::ClPx4Mrclient for all PX4 vehicle control (plusCbSleepForfor ground waits)
Build Instructions
First, source your ROS 2 installation.
source /opt/ros/jazzy/setup.bash
Then build with colcon build…
colcon build --packages-select cl_px4_mr sm_cl_px4_mr_test_4
Operating Instructions
PX4 SITL must home on the island (the default.sdf world’s spherical origin is 26.478999,
56.538333, ~18 m west of B0). Requires four processes, started in this order. The micro-ROS
agent must be running before the state machine starts: StConnectMicroROSAgent waits for the
agent’s node and for PX4 to report a healthy position estimate, then proceeds.
Terminal 1 - PX4 SITL:
cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500
Terminal 2 - QGroundControl (GCS heartbeat so PX4 allows arming)
./QGroundControl-x86_64.AppImage
Terminal 3 - micro-ROS agent (XRCE-DDS bridge to PX4):
ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log
Terminal 4 - State Machine (full mission):
source install/setup.bash
ros2 launch sm_cl_px4_mr_test_4 sm_cl_px4_mr_test_4.launch.py
Viewer Instructions
If you have the SMACC2 Runtime Analyzer installed then type…
ros2 run smacc2_rta smacc2_rta
If you don’t have the SMACC2 Runtime Analyzer click here.
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| cl_px4_mr | |
| px4_msgs | |
| rclcpp | |
| ament_index_cpp |