Skip to content

Software

RAFCON

By DLR-RM, from github.com/DLR-RM/RAFCON (opens in a new tab)

  • Middleware
  • Tool
  • EPL-1.0

RAFCON is a Python tool for building robot programs as hierarchical state machines, with a graphical editor and debugging support, or by generating them through an API.

Facts

GitHub stars
213read on 6 Nov 2026
Last update
18 Sept 2026Newest commit on master
Maintenance
Activea commit in the last 90 days
Difficulty
Intermediate
Hardware it needs, as the project states it
Python >=3.9, pip and pdm; tested under Ubuntu 24.04 with GTK 3 and Cairo system libraries installed.

Checked on GitHub on 6 Nov 2026.

Licenses

Code
EPL-1.0 (opens in a new tab)

Read by Robotheca from LICENSE.md (opens in a new tab) at commit 9c51f96 (opens in a new tab), on 16 Oct 2026. A license text Robotheca's reader does not know: a person at Robotheca set it on 9 Nov 2026.

Commercial use
Yes

Overview

What it does: Robotheca's summary

  • Represents robot programs as hierarchical state machines with concurrent state execution.
  • Provides a graphical user interface for creating state machines and IDE-like debugging.
  • State machines can also be generated programmatically through RAFCON's API.
  • Written in Python, extendable with plugins, and independent of specific hardware and middleware.
  • State machines can be shared and reused as libraries stored as JSON strings in text files.
  • Can be used with ROS2, as described in a tutorial in the documentation.

Written by Robotheca from the project's README (opens in a new tab) at commit 9c51f96, not by its creator.

The README

Read the README on GitHub (opens in a new tab)

Files and versions

Facts read at commit 9c51f96

Robotheca never hosts the code: each link goes to the creator's own page.

Use it

How to install it, in the creator's words: The project's website (opens in a new tab)

Robotheca doesn't review code. Read it before running it.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.