SinelaboreRT Header Logo


It's better when it's simple!

User Tools

Site Tools


Modelling-Tool specific Intro

Getting started


Language Backends


Designers Toolbox

There are better ways to model state machines than using spread sheets!

In the past different μC manufacturers have published application notes about the benefit of using state machines for the design of embedded software. An example is the application note SLAA402 from Texas Instruments (TI). It suggests to generate source code based on a spread sheet table. Nowadays several affordable UML modeling tools are available supporting the efficient design of state machines in a graphical way. SinelaboreRT generates production quality source code from state diagrams created with many different UML tools. Give it a try!

Latest Changes


Latest News

October 2021 | New version 5.4.1

New Windows/Mac installer (thanks to Java 17) makes life easier for users who are not at ease with the command line. C++ backend now supports the ValidationCall parameter.

August 2021 | New version 5.3

Several usability improvements, bug fixes and new functions esp. in the built-in editor. Recommended for all users. A detailed change log is available in the Codegen Manual.

Jan.2021 | New version 5.2

| The first diagram with an init state, a normal state, a final state and a choice.. Complete rewritten built-in editor. Generate state diagram within minutes. Editor has full support for regions.

15.02.2020 | New version 4.1

This new version provides a backend for Lua. It is the first state machine code generator from UML state diagrams/machines to Lua. Lua is a lightweight, embeddable scripting language. It follows the approach described by Roberto Ierusalimschy in his book. More information is available here.

17.6.2019 | New version 3.7.4

This is a bug-fix version and recommended for all users. For users of the Cadifra tool connection points were added to keep oversight in complex diagrams more easy. Connection points are a well known concept in circuit diagram drawing tools. More details can be found in the sinelabore manual (Cadifra part).

2.5.2019 | New example for PIC users

This tutorial explains the use of state machines with the PIC16F18446 Curiosity Nano board. Go on reading ...

29.12.2017 | Sparx new EA Version

Tests of new EA version 13 were successful. If you find any flaws using the codegen with the new version send a bug report please.

20.9.2017 | QuickStart tutorial on how to use the code generator with Energia on GitHub

Energia is based on the Arduino IDE and is a great IDE for processors form Texas Instruments. The new example on GitHub shows the integration of code generated from the sinelabore code generator into the Energia IDE. What does the demo do: The flash frequency of the green LED on the MSP430FR5969 LaunchPad can be controlled. A minimal timer and queueing lib is used as basis to be prepared for much more challenging tasks. You will see the benefit of state machine modeling over direct coding. Take a look at the state diagrams and the generated code here! Or download the example and try it out yourself.

9.4.2017 | New version 3.7.1 with some small improvements

Recommended for all C# users and those who use the built in editor/simulator.

6.11.2016 | Code Generator Features for High-Availability and Safety Systems

There is a new article in the “Designers Toolbox” explaining the special features for for High-Availability and Safety Systems offered from the C-backend.

16.10.2016 | Generate Python Code from State Diagrams

With version 3.7 is is now possible to generate Python code. The state machine code is generated as a Python class. All relevant state machine features are available. Look into the manual for details. The fully working microwave oven code is available in the examples folder. It contains a TKinter GUI wich makes simulation and testing of the generated state machine even simpler.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
latest_news.txt · Last modified: 2021/11/13 14:32 by webmin