Skip to content
Branch: master
Go to file

Latest commit


Failed to load latest commit information.
Latest commit message
Commit time
Oct 25, 2017
Dec 23, 2013
Oct 25, 2017
Oct 25, 2017

An arduino library for implementing a finite state machine.


Other than the examples included in the library, the following pages might be useful to you:


If you'd like to contribute to arduino-fsm please submit a pull-request on a feature branch.


  • Bitcoin: 1HnqohdK1d6gwDc7bT6LPPkmUFAXczEJKp


2.2.0 - 25/10/2017

  • Add on_state() handler to states
  • New run_machine() method to invoke machine execution (includes a check_timed_transitions() call)
  • New timed_switchoff.ino example sketch to ilustrate new on_state() and run_machine() funcionality
  • Corrections:
  • make_transition() correctly initialices timed transitions start milliseconds (make_transition() is now a fsm method)
  • Initial state on_enter() handler is now correctly executed on fsm first run
  • Removed Serial.println(now); trace in Fsm.cpp
  • Correct initialization of m_num_timed_transitions

2.1.0 - 21/11/2015

  • Add timed transitions

2.0.0 - 03/09/2015

  • Remove AUTHORS files: too much hassle to maintain
  • Add
  • Add keywords.txt
  • Remove name attribute from state
  • Use int for transition event instead of string

1.0.0 - 24/12/2013

  • Initial release.
You can’t perform that action at this time.