QP state machine framework for Arduino

In my opinion, Mr. Samek's book is well worth the money. "Hierarchical state machines" are an excellent solution to a class of problems often encountered in Arduino projects. While Mr. Samek didn't introduce hierarchical state machines to the world his implementation is elegant, powerful, safe, and easy to maintain.

In my case, I couldn't wait for an "Arduino port" and created a simplified variant (QHsm with a shallow event queue). But, even that, has allowed me to quickly build bug free easy to maintain applications.

The big draw-back is the additional Flash requirements. My simple applications would very likely fit into 4k (or maybe even 2K). QHsm pushes them from 6K to just under 8K.