Generate production quality code from state diagrams created with Eclipse Papyrus#
SinelaboreRT generates readable and maintainable code from hierarchical UML state machines created with Eclipse Papyrus. It is suitable for embedded applications and for desktop/server software through additional language backends.
Key Features#
- Automated robustness checks before code generation
- No runtime environment needed
- Works with any CPU and with/without OS or RTOS
- Supports simulation, trace generation, and test-case workflows
Supported State Machine Elements#
The parser supports a practical subset of Papyrus elements:
- Hierarchical states
- Signal events with event name, guard, and action
- Initial and final pseudo states
- History states (deep, shallow)
- Choices and junctions
- Constraints
- Regions
In addition, class attributes and methods are mapped into generated state machine data and interfaces.

Quick Start#
Use the Papyrus microwave example from the examples folder, regenerate code from the model, and compile/run the sample to iterate quickly on changes.
Papyrus How-To#
- Opaque behavior not visible in the diagram: check Papyrus preferences and increase the number of lines shown for opaque behavior.
- Inner transition in a state: create a self-transition and set transition kind to
internal.