SMACC – State Machine Asynchronous C++
An Event-Driven, Asynchronous, Behavioral State Machine Library for real-time ROS (Robotic Operating System) applications written in C++
Menu
Skip to content
Theory
Target Robot Platforms
Behavioral vs Protocol State Machines
The Synthesis of SMACC
Comparisons
Statechart vs MSM
SMACC vs Behavior trees
Coroutines
Concepts
Intro to Substate Objects
Orthogonals
Event Model
Clients
Client Behaviors
Hierarchical States
Threading Model
Exceptions
Tutorials
Getting Started
Naming Convention
SMACC States
Transitions
Order of Function Calls
State Reactors
Using ROS Parameters to define State Behavior
Resources
ROS Answers
Finer Points
Rules for Good SMACC Programming
History State Declaration Order
On creating clients
SMACC Viewer
SMACC Viewer
SMACC RViz Plugin
GitHub
GitHub Repo
Robots
Gallery
YouTube
News
ROS Discourse – SMACC Announcement
ROS Developers Podcast #74
ROS Discourse – MGI Announcement
Clients