RKH - State Machine Framework Icon

RKH - State Machine Framework

State machine framework for reactive embedded systems

5.0 Stars (2)
14 Downloads (This Week)
Last Update:
Download rkh_v1.1.2.rar
Browse All Files



RKH is a generic, flexible, modular, highly portable, ANSI-C compliant, and open-source development tool for implementing hierarchical state machines based on modern state machine concepts. This modern techniques are used to give an abstract description of the dynamic behavior of a system in a substantial manner.

The RKH not implements neither entire UML specs. nor entire Statechart specs. Instead, the RKH intention is to support just enough basic concepts of that powerful tools to facilitate the reactive-system modeling holding a solid, and efficient implementation. Broadly speaking, the RKH implementation has been designed from the ground up to be used in 8-bits platforms but can be easily adapted to 16 or 32-bits platforms.

RKH - State Machine Framework Web Site


  • State machines representation is based on state table.
  • Representing a state machine with RKH is intuitive, and easy.
  • Reflects the state diagram without obfuscation.
  • The RKH application are highly maintainable.
  • Easy to integrate with any event queuing and dispatching mechanism.
  • Useful in embedded systems.
  • The most of the RKH implementation is independent of any particular CPU, OS, or compiler.
  • Flexible and user-configurable code generation.
  • Very small footprint.
  • Include a dispatching event mechanism based on active object's priority.
  • Include a queue module
  • Include a software timer module.
  • Include a fixed-size memory block module.
  • Include a native tracing tool.
  • Support hierarchically nested states, and flat state machines.
  • Support multiple state machines.
  • Support junction, branch and history (shallow and deep) pseudostates
  • Support compound transitions with guards.
  • Support submachine state
  • Support entry and exit actions.
  • Implement the traditional transition sequence.
  • Include mechanism for deferring events.
  • Support event dispatching with parameters.
  • Support dynamic events.
  • Support a easy way to use events with arguments.
  • Support systems-friendly assertion macros like assert, allege, error, require, and ensure.
  • Support local, internal and completion transitions
  • Provide the test harness to develop based on test
  • Support final state


User Ratings

ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
Write a Review

User Reviews

  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    I use RKH on several projects. I can guarantee it is a great tool for embedded systems development.

    Posted 06/14/2013
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    Rkh-reactivesys is wonderful! Thanks.

    Posted 05/11/2013
Read more reviews

Additional Project Details


English, Spanish

Intended Audience

Healthcare Industry, Education, Telecommunications Industry, Developers, Agriculture, Automotive

Programming Language

C++, C



Thanks for helping keep SourceForge clean.

Screenshot instructions:
Red Hat Linux   Ubuntu

Click URL instructions:
Right-click on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Briefly describe the problem (required):

Upload screenshot of ad (required):
Select a file, or drag & drop file here.

Please provide the ad click URL, if possible:

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks