No version for distro humble showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro kilted showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro lyrical showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro rolling showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro ardent showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro bouncy showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro crystal showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro eloquent showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro dashing showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro galactic showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro foxy showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro iron showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro lunar showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro jade showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro indigo showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro hydro showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro kinetic showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro melodic showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange

No version for distro noetic showing jazzy. Known supported distros are highlighted in the buttons above.

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-05
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

SMACC2 test state machine for cl_px4_mr multirotor client

Maintainers

  • Brett Aldrich

Authors

No additional authors.

State Machine Diagram

(diagram pending first run)

Description

Test state machine for the cl_px4_mr PX4 multirotor client library in Gazebo. Demonstrates the continuous pattern behaviors with timer-driven state exits: wait for readiness, arm, takeoff to 5m, cruise along the entry heading with sinusoidal altitude for 30 s (CbSineAltitudeCruise, ±1.5 m at 20 m wavelength — 3 sine cycles), hold position while sweeping the heading sinusoidally for 30 s (CbYawScan, ±0.6 rad at 6 s period — 5 sweep cycles), return to base, and land. Both pattern behaviors are continuous — they never post success; a 30 s CbTimerCountdownOnce in the second orthogonal (EvTimer) drives each transition, and each behavior restores its base reference (entry altitude / base heading) on exit.

Uses two orthogonals:

  • OrPx4 - cl_px4_mr::ClPx4Mr client for all PX4 vehicle control
  • OrTimer - cl_ros2_timer::ClRos2Timer for timed 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_3

Operating Instructions

Requires four processes running simultaneously:

Terminal 1 - PX4 SITL:

cd ~/workspaces/PX4-Autopilot
make px4_sitl gz_x500

Terminal 2 - XRCE-DDS Agent:

ros2 run micro_ros_agent micro_ros_agent udp4 -p 8888 2>&1 | tee /tmp/xrce_agent.log

Terminal 3 - QGroundControl (required for GCS heartbeat so PX4 allows arming) Follow the installation instructions found here: https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html

And then navigate to the appropriate directory and launch it from the terminal:

./QGroundControl-x86_64.AppImage

Terminal 4 - State Machine:

source install/setup.bash
ros2 launch sm_cl_px4_mr_test_3 sm_cl_px4_mr_test_3.launch.py

Mission Flow

State Mode State Behavior Action
StWaitForReady MsDisarmedOnGround CbTimerCountdownOnce(5) Wait 5 seconds for system readiness
StArmPx4 MsArmedOnGround CbArmPX4 Arm vehicle (5 retries, force-arm after 2)
StTakeoff MsTakeoff CbTakeOff(5.0) Enable offboard mode, climb to 5m
StGoToWaypoint1 MsInFlight CbGoToLocation(10, 0, -5) Fly to waypoint at (10, 0) NED
StOrbitLocation MsInFlight CbOrbitLocation(10, 0, 5, 5, 0.5, 3) Orbit 3x around waypoint, r=5m
StReturnToBase MsInFlight CbGoToLocation(0, 0, -5) Return to origin
StLand MsLanding CbLand Land and wait for auto-disarm
StLanded MsLanded (none) Mission complete

Log File Locations

Component Location
State Machine (ROS 2) ~/.ros/log/ (latest node log: sm_cl_px4_mr_test_3_node_*.log)
PX4 SITL (.ulg) ~/workspaces/PX4-Autopilot/build/px4_sitl_default/rootfs/log/
micro_ros_agent /tmp/xrce_agent.log (when launched with tee redirect above)

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.

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sm_cl_px4_mr_test_3 at Robotics Stack Exchange