StateSmith
A state machine code generation tool suitable for bare metal, embedded and more. (by StateSmith)
Facts-about-State-Machines
I hold the opinion that state machines are underrated (by cpressey)
Our great sponsors
StateSmith | Facts-about-State-Machines | |
---|---|---|
16 | 9 | |
443 | 725 | |
5.9% | - | |
8.4 | 3.5 | |
about 19 hours ago | 5 months ago | |
C# | ||
Apache License 2.0 | - |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
StateSmith
Posts with mentions or reviews of StateSmith.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-08.
-
State machine library for portable embedded application (C++11)
I wrote StateSmith to be super portable. It has zero dependencies and avoids the heap. Works great with draw.io https://github.com/StateSmith/StateSmith/
-
Generating state machines from draw.io diagrams with StateSmith - my first real C# project :) Supports C#, C99, JS right now.
No worries. If you are just getting started with state machines, here's a page with some quick guidance and typical uses: https://github.com/StateSmith/StateSmith/wiki/App-Notes
-
StateSmith supports draw.io! Embedded state machines in style :)
Great suggestion! I added this issue to track it: https://github.com/StateSmith/StateSmith/issues/101
-
Embedded Systems Weekly #120
StateSmith StateSmith is a new cross-platform, free and open source tool for generating state machines. The author explains his motivation to develop a new library with this statement: "I couldn't find a state machine code generator that was suitable for low level embedded application use, had an attractive license, and was enjoyable to use." We all hope Adam Fraser-Kruck will continue to work on StateSmith and to maintain it.
-
I wrote StateSmith with embedded devs (like me) in mind. It compiles diagrams to FSM C or C++. Below sim uses arduino, but any platform works. Would you use it? Why/not? Feedback welcome!
PlantUML input is now supported in the dev branch. Two examples are updated to use it and they generate the same .c code as the yEd diagrams so it looks to be working well. Thanks for the suggestion!
-
If you deal in state machines, you might enjoy StateSmith. It compiles diagrams to C or C++ with zero dependencies. Free & opensource.
If speed is super important to your application, feel free to open an [issue](https://github.com/StateSmith/StateSmith/issues) so that you'll know when I start work on it.
-
I just released a free/opensource project that generates state machines from diagrams! Here's an arduino laser tag menu built with StateSmith.
Lots of documentation and examples at the repo: https://github.com/StateSmith/StateSmith/
Facts-about-State-Machines
Posts with mentions or reviews of Facts-about-State-Machines.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-09-30.
- Facts about State Machines
- Facts about state machines
-
Embedded Systems Weekly #120
Facts about State Machines When I was a student at the University, I had been introduced to FSMs and to Petri nets. Nobody emphasises how important these tools are (or I don't remember it) for a career in embedded systems. This article is a good introduction to the StateSmith tool, listed as well in this issue.
- RP2040 Synchronized stepper motors with PIO project
What are some alternatives?
When comparing StateSmith and Facts-about-State-Machines you can also consider the following projects:
PipelineC-Graphics - Graphics demos
RP2040_PIO_Steppermotors - Synchronized PIO Programs for stepper motors. 4 Motors possible.
tlsd - Generate (message) sequence diagrams from TLA+ state traces
xstate - Actor-based state management & orchestration for complex app logic.
sml - C++14 State Machine library