Sign In

JKI State Machine Objects (SMO) by JKI - Toolkit for LabVIEW Download

JKI State Machine Objects is an easy-to-use yet powerful object-oriented framework for LabVIEW.

* 12 ↓3,336
ReleasedNov 13, 2017
Publisher JKI
License BSD
LabVIEW VersionLabVIEW>=13.0
Operating System Windows, Mac, and Linux
Project links Homepage   Repository  


The JKI State Machine Objects (SMO) for LabVIEW is an easy-to-use yet powerful object-oriented framework, based on the JKI State Machine. It is the very same framework that is used by the JKI team in our everyday project work, and is the result of years of refinement by our team of LabVIEW experts.

Get the Source Code:
All the source code is available on our GitHub repository ( where you can download the framework and make your own changes. You can also download the built package.

Discuss by Asking Questions & Presenting Your Ideas:
The JKI SMO NI Community Group ( is a great place to have discussions about your ideas and feedback.

Release Notes (Nov 13, 2017)

[Fix: 40] onProcessStart( ) has been moved to the process thread to be symmetrical with onProcessStop( ).
[Fix: 41] onStopped, onStarted and onProcessStopped methods must require overrides to call parent.
[Fix: 42] Process now resets call-parent state when process terminates, to prepare process for consistent restart conditions, if requested.
[Fix: 43] onProcessStopped now symmetrical with onProcessStart, in Process thread.
[Feature: 45] Create method now allows a dependency to be declared as shared without specific ownership.
[Fix: 46] dependencies are now stopped during the onStopped callback, not onStop.
[Fix: 47] LaunchDependency method, called during onStart, is split in two parts: one that creates the dependency and takes ownership on creation (in a non-reentrant method to disallow concurrent creations), the second to start the dependency which is reentrant to allow recursive calls.

Recent Posts

online training
I'd sure be interested in a comprehensive online course on how to use JKI SMOs. One thing I especi…

by James Carmody, 1 year, 3 months ago, 1 , 3
Getting Started with JKI SMO Framework
Learn how to create your first State Machine Objects (SMO) class in this short tutorial by JKI. Enj…

by Javier Ruiz, 1 year, 3 months ago, 0 , 4