<story><title>Show HN: µFSM – A state chart library for embedded applications</title><url>https://github.com/jonpe960/ufsm/tree/ufsm-0.1.0</url></story><parent_chain></parent_chain><comment><author>aylons</author><text>Very nice! Anything that allows something more sophisticated than switch:case in embedded systems are welcome! Also, state machines are way too often overlooked as a proper model for embedded systems architecture. My guess is that proper implementation may become hard (specially if you want to nest them), and there are lots of hardware engineers doing firmware.&lt;p&gt;In my case, when I want to use a state machine for a project, I usually go with  Quantum Leaps [1] tools. 
Nowadays their website seems cluttered and management-focused, but the tech is solid and the tools are very robust.&lt;p&gt;They also distribute a book [2] on how to use the model using their framework as an example, and I even implemented my version of it as an exercise years ago.&lt;p&gt;It does not have (or did not, I haven&amp;#x27;t checked in the last few years) a tool to translate from XMI to their framework, but they have a freeware to draw the chart. Frankly, I have not even used it: I draw the state machine using some editor and it is easy enough to translate to code and maintain. Maybe not the best, but up until now, very nice to deal with the limited complexity of most embedded systems.&lt;p&gt;[1] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.state-machine.com&amp;#x2F;doc&amp;#x2F;concepts#HSM&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.state-machine.com&amp;#x2F;doc&amp;#x2F;concepts#HSM&lt;/a&gt;
[2] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.state-machine.com&amp;#x2F;psicc2&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.state-machine.com&amp;#x2F;psicc2&amp;#x2F;&lt;/a&gt;</text></comment>
<story><title>Show HN: µFSM – A state chart library for embedded applications</title><url>https://github.com/jonpe960/ufsm/tree/ufsm-0.1.0</url></story><parent_chain></parent_chain><comment><author>slig</author><text>A must read for anyone interested &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;statecharts.github.io&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;statecharts.github.io&amp;#x2F;&lt;/a&gt; Also I highly recommend to check out `xstate` TypeScript library. It&amp;#x27;s a breeze to work with it.</text></comment>