Introduction to Unit Testing in LabVIEW with Caraya

New to Caraya and want to lean how to create unit test cases for your LabVIEW project with JKI’s latest unit test framework? This introductory video from JKI’s Tomi Maila helps you to get started with Caraya by showing how to convert your debug code into a unit test case and how to add comprehensive test coverage for your project by composing unit test hierarchies.

Visit the Caraya GitHub page to get Caraya or learn more.

Posted in Caraya, LabVIEW, Open Source | Leave a comment

Caraya – A New Take On LabVIEW Unit Testing


How many times you have had good intentions to write unit tests for your LabVIEW project but when the time came you had more pressing fires to put out? Or how often have you created a small debug VI to test your software but never created a unit test to cover the same functionality?

JKI is excited to announce Caraya, a new experimental open source assertion and unit testing framework for LabVIEW. It takes a whole new approach to unit testing; your VI is your test. Caraya allows you to convert your manual test VIs you use for debugging into unit test cases with nearly no effort. Even running the tests is easy, just run the test case VI. Caraya significantly lowers the barrier for developers to write unit tests leading into improved overall code quality in real-world projects where developers don’t always have the luxury to write unit test cases first.


Excited? So are we! Visit the Caraya GitHub page to get Caraya or learn more.

Learn More »

Posted in Caraya, Community, Company News, JKI Software Products, LabVIEW, Open Source | Tagged , , , , | Leave a comment

JKI’s Highlights From NIWeek 2015

Wow! What a fantastic NIWeek. It may be over but our team at JKI is still reeling from the flurry of information and innovation jam-packed into an amazing week in Austin. From new NI embedded product lines to the launch of LabVIEW 2015 (which promises to help developer “write code faster; write faster code”) to technical sessions, social events, and inspiring keynotes.

Here are some of our favorite moments and take-aways from NIWeek 2015:

JKI Won two NI Engineering Impact Awards!

We shared two NI Engineering Impact Awards with our customer Primus Power, first in the Energy category award and then the Community’s Choice award! It was validating for our team that both NI and the community recognized the technical challenges that we were able to conquer in order to use LabVIEW and the NI cRIO platform to bring this impactful project to life. Read our award-winning paper, “Controlling Zinc-Flow Batteries and Switch-Mode Power Regulation for Megawatt-Scale Energy Storage.”

LabVIEW 2015

LabVIEW 2015

The latest version of LabVIEW is focused on speed and productivity improvements. It has (lots of new features):

Faster project load and application build timesLabVIEW 2015 promises to help “write code faster. write faster code.”  – This is something we are excited to put to the test.  At JKI, we use LabVIEW to help scientists and engineers get their products to market quickly, so the ability to write/built code faster adds tons of business value to JKI’s customers.

Right-click Plug-in Framework (inspired by the JKI Right-click Framework and Darren Nattinger’s ideas a long time ago) allowing users to create new LabVIEW features programmed in LabVIEW, available directly from the right mouse-click in LabVIEW – very cool!

Shrink Block Diagrams (remove diagram whitespace) – Helps you write cleaner code by removing extra block diagram space.  Since LabVIEW coding style is VERY important to the JKI team, this feature is a real pleaser. It’s an idea that’s been around for a long time, so we’re glad to finally see it in LabVIEW.

Hyperlinks in code comments (free labels) – Now your hyperlinks are clickable and open in the browser.  This will help you link to documentation, issue trackers, and other references on the web in your code. Very cool!

Also check out Christina Rogers’ favorite features in LabVIEW 2015 for more goodies.

NI’s expanding embedded product lines

I was especially excited to see Jamie Smith announce some new embedded product lines:

NI 793XR Controller for FlexRIO

Controller for FlexRIO

This product will allow us to leverage the power of the FlexRIO boards without the need of a PXI chassis. We believe many projects that require high-speed control on an FPGA will be able to leverage this new product.

Single-Board RIO with the Xilinx Zynq System-on-a-chip

cRIO Single-Board Controllers

These single-board RIOs bring the power of the CRIO-9068 (NI Linux Realtime) to a more embeddable form factor. If that’s not exciting, we don’t know what is!

NI Wireless Test System (WTS)


What excites me a lot about the new NI WTS product is that it really brings home the idea that the software is the instrument — this is a huge step for virtual instrumentation (since I’ve long felt that NI dropped the ball on this a long time ago) and will have a huge impact on how engineers think about boxed instruments.

The Future of LabVIEW, the Industrial Internet of Things (IoT), and Big Analog Data

Big Analog Data


Dr T. (NI’s CEO) made it clear to everyone that the future is made up of distributed systems of devices controlling and taking measurements on our world. This Industrial Internet of Things (IoT) will produce a WHOLE LOT of data — LabVIEW and NI will be ready for that and will be helping lead the revolution.

LabVIEW Runtime Engine in Javascript (in the browser) — Omid Sojoodi showed a demo of LabVIEW running in the browser and said “Porting LabVIEW Runtime Engine to JavaScript… We’re working on it!” That’s very exciting and will help keep LabVIEW very relevant.

Asynchronous Data Wires – Jeff’s wires are actually in LabVIEW 2015, but you’ll need to dig around for them. These are going to be enormously powerful, I predict. If you’ve got lots of systems on the industrial internet, my guess is that you’ll want to connect them with asynchronous wires 😉

@jim.kring and Jeff K at #NIWeek talking about grid storage and #LabVIEW FPGA

A photo posted by JKI (@jkisoftware) on

LabVIEW is IoT Ready! – Jeff Kodosky also had some inspiring things to say about the Industrial IoT. He said, “The industrial IoT is about connecting machines and systems to improve reliability, productivity, and safety” and “LabVIEW is Industrial IoT Ready!”  Well, at JKI we’re very excited about that :)

Mickey McManus talking about the evolving technology and culture: Thursday morning keynote speaker, Mickey McManus delivered such an inspiring speech about the changes we see in how technology and people come together. To watch the video goto NIWeek 2015 Keynote Presentations (then click >> Thu Aug, 6th >> Mickey McManus)

JKI’s NIWeek Presentations and Social Activites

JKI’s Presentations: Javier Ruiz, Tomi Maila and Jim Kring all presented during NIWeek 2015 on a variety of topics including grid energy storage, the JKI State Machine Objects and Actor Framework. Learn more about each of these topics here:

@jim.kring kicking off his session on #LabVIEW State Machine. #niweek

A photo posted by JKI (@jkisoftware) on

JKI’s Social Media Contest: By far, we had one of the best social media contests in JKI’s history, where we asked attendees to snap a creative picture of the JKI logo at NIWeek and share it, with the most creative and fun picture winning a Microsoft Surface3.  This giveaway contest generated a lot of buzz during NIWeek and it was tough to narrow down a winner. Hollice Dickens stole our “hearts” with her winning photo that beautifully captured our message. Check out all of the amazing entries at #iheartjki


Wrapping it Up

I could really go on and on about all the inspiring things I saw at NIWeek and great conversations I had with wonderful LabVIEW community members. I’m truly in awe of the amazing NI platform and LabVIEW community and consider myself lucky to be a part of it.

Posted in NIWeek | Tagged , , | Leave a comment

EasyXML Source Code on GitHub (BSD Open Source License)

EasyXML XML to Cluster

We are happy to announce that the JKI EasyXML Toolkit for LabVIEW has been released under an the BSD open source license on GitHub, here:

Currently, only the source code is on GitHub and we haven’t released the built package yet. That’s coming, since there are some performance and other improvements we’re working on.

If you’re interested in contributing, please Contact JKI.

Posted in EasyXML | Tagged , , , , | 1 Comment

JKI’s Unofficial Guide to Fun at NIWeek 2015

Once again, NIWeek is upon us. You’ve got your schedule almost dialed in. You know which technical sessions you’ll be attending (all three of the JKI sessions, of course!) and what booths you must visit but still aren’t sure about what other fun events are not to be missed. Well, we’re here to help! Check out our “unofficial” guide to NIWeek fun in Austin:

Sunday, August 2

Ginger Man @ 8pm – For the early birds who arrive in Austin before NIWeek officially kicks off, check out Champion Rendezvous at the Ginger Man beginning at 8pm. This informal pre-conference gathering is a great place to meet folks and share a few drinks before things really get crazy at the conference.

Monday, August 3

Prepare for the CLA Exam @ 1-3pm – From 1-3pm take the Certified LabVIEW Architect Prep Course at Booth 3 on the expo floor. While you’re at it, you might want to read up on How to Pass the CLD/CLA Exam the JKI Way and Why LabVIEW Certification Matters.


Party in the Expo Hall @ 5:30pm – The NIWeek Kick Off Happy Hour kicks off at 5:30 in the Expo Hall. Free beverages for all! Access to Monday’s sessions are limited though, so be sure to check your badge to see if you are special enough to join this soiree.

Tuesday, August 4

med_gallery_3_487146NI Community Party @ 5pm – Enjoy another night of free food, beer, and music on NI at the Community Block Diagram Party and Happy Hour in the Expo hall! The festivities begin at 5pm.

LAVA Community Party @ 7pm – Still hungry and craving some of that awesome Texas BBQ? Want to meet some of the most active and prominent LabVIEW community members?  Don’t miss the LAVA BBQ at the Scholz Beer Garden, beginning at 7.

Wednesday, August 5

LabVIEW Coding Challenge @ 5pm – Think you have the chops to be the fastest LabVIEW programmer? NIWeek wants to challenge you at the World’s Fastest LabVIEW Programmer Challenge in the Tech Theater. Put your speedy skills to the test and you may walk away with a trophy! The fun begins at 5pm.

Check out this cool video from the 2013 LabVIEW Coding Challenge

Every Night on Sixth Street – If a night on the town is more your thing, make sure you check out Sixth Street. Sixth Street is a historic street and also the entertainment district in Austin. The nine-block area is full of bars, restaurants and clubs, plenty of merriment to go around.


Not much of a scenester? We highly recommend checking out the Congress Avenue Bridge bats, via boat! Thousands (dare we say, millions?) of bats awaken at dusk and spread their dark little wings across the Austin night sky. It’s truly a sight to behold!


Thursday, August 6

If you’ve still got some energy left after an eventful week, here’s a quick list of fun places to check out in Austin before heading home:

Keep up with all of the NIWeek happening by following: #NIWeek. We’ll be tweeting live updates all week so be sure to follow us at @jkisoftware. Visit us at booth #534 and don’t miss our presentations! For more information on our events during NIWeek:

Posted in NIWeek | Tagged , , , , , | 5 Comments

[Webinar] Introduction to the Actor Model & Getting Started with the Actor Framework for LabVIEW

On Demand Webinar with LabVIEW Champion, Tomi Maila

If you are a frequent user of LabVIEW, then you’re probably already familiar with Actor Framework, the standard tool that has shipped out with LabVIEW for many years. Knowing how to maximize this tool though, is another story. The learning curve can be rather steep as it requires a paradigm shift in thinking on how to architect applications. We’ve created a new webinar with one goal in mind: to help users feel more familiar with the Actor Framework and actor model.


Join LabVIEW Champion and JKI partner, Tomi Maila in a 40-minute webinar as he introduces you to the fundamentals of the actor model for software development and how the actor model allows you to create robust and modular applications in an elegant way.

Tomi will take this theory into practice by showing how to create a simple actor-based application in LabVIEW using the Actor Framework. He will guide you through the basic components of the Actor Framework and how to effectively use them.

Join Tomi to learn:

  • What is the actor model for software development
  • How to architect applications using the actor model
  • How to launch and stop actors in the Actor Framework
  • How to add public methods to your actors

Duration: 40 minutes

Level: Intermediate

Watch Now!



Posted in Company News | Leave a comment

New Training Course: JKI State Machine for LabVIEW

Jim Kring CLA Summit Europe

Jim Kring, Founder of JKI, is a Certified LabVIEW Architect, co-author of LabVIEW for Everyone 3rd Edition, and respected thought-leader within the LabVIEW community. He is passionate about teaching and helping people to apply software engineering principles to their LabVIEW coding so they too can quickly create high-quality code for their impactful applications.

I’m excited to announce that JKI is now offering a hands-on training course on how to use the JKI State Machine (an easy-to-use yet powerful state machine template that’s made freely available to the LabVIEW community). It is the very same template that is used by the JKI team, nearly every day, and is the result of years of refinement by our team of LabVIEW™ experts.

This course is for anyone with a basic proficiency in LabVIEW who wants to create applications faster and write good, clean code (we’ll even send you home with some valuable project templates available exclusively to students of this course). The class is held at JKI’s headquarters in the San Francisco Bay Area and on-site at your company’s facilities.

What You’ll Get Out of this Course (Really, it’s Pretty Cool!)

  • Receive hands-on training from Jim Kring — he might even eat lunch with you and/or fix some bugs in your code!
  • Learn how to build scalable, maintainable software — these are the same code/techniques we use on all our projects at JKI!
  • Take home powerful LabVIEW project templates (available exclusively to students of this course) — your boss will think you’ve been working overtime and on weekends!
  • Learn how to Pass Your CLD / CLA Examsdo it the JKI Way!
  • Obtain a Course Completion Certificate from JKI — hang it on your cubicle wall, show it to your boss, and get that promotion you’ve been waiting for!
  • Get a complimentary signed copy of LabVIEW for Everyone — you can use as a monitor stand or even read it!

Click Here to Learn More About this Course and Sign Up Today

Posted in Company News, JKI State Machine, LabVIEW | Tagged , , , , , , | Leave a comment

Grid-Scale Energy Storage Powered by LabVIEW

Primus Power is a leader in low-cost, grid-scale electrical energy storage solutions with a safe, scalable, distributed flow battery system that economically serves multiple storage applications. With patented innovations in chemistry, cell design and system engineering, the company’s products offer exceptional power density and portability at industry-low prices.
Having already developed a lab prototype using LabVIEW, Primus Power teamed up with us to help develop commercial systems for shipment to customers.

EnergyPod with 14 EnergyCells

EnergyPod with 14 EnergyCells

EnergyCell Battery

EnergyCell Battery

The Challenge: Creating a system to control the electrochemical process of an industrial zinc-flow battery and to regulate and synchronize the DC power of multiple zinc-flow batteries connected in series for delivery onto the AC power grid.

The Solution: Using LabVIEW and multiple CompactRIO controllers to develop a real-time distributed system to control multiple zinc flow-batteries and LabVIEW FPGA for high-speed control and regulation of their DC power to and from the AC power grid.

Want to learn how LabVIEW helps control a flow battery for industrial energy storage and see how Primus Power’s system works? Read the full case study, Controlling Zinc-flow Batteries and Switch-Mode Power Regulation for Megawatt-scale Energy Storage.

Primus Power Case Study Icon

Additional Images (click to enlarge)

Energy Storage Applications

Energy Storage Applications

EnergyPod System Architecture

EnergyPod System Architecture

Posted in Applications, Company News, JKI, LabVIEW | Tagged , , , , , , , , , , , | Leave a comment

Using the JKI State Machine to Interface LabVIEW FPGA Webinar

Recording of a webinar with Javier Ruiz

In this hands-on demo, Javier Ruiz, a Certified LabVIEW Embedded Systems Developer (CLED) and JKI Senior Project Engineer, will show you how to create real-time and desktop applications with the JKI State Machine for LabVIEW to interface with LabVIEW FPGA for high-speed measurement and control.

Watch this webinar to learn:

  • How to create a basic LabVIEW FPGA application
  • How to read and write signals using the FPGA
  • How to communicate between real-time and FPGA applications
  • How to interface to the FPGA directly from a remote computer
  • How to transfer high-speed measurement data using DMA

Using The JKI State Machine To Interface LabVIEW FPGA Webinar
Duration: 45 minutes

Level: Basic / Intermediate

Watch Now!


Posted in LabVIEW | Tagged , , | Leave a comment

Announcing the New “Magic Delay Fairy” Tool for LabVIEW

JKI is pleased to announce the release of the new Magic Delay Fairy Tool for LabVIEW,  a revolutionary new tool for LabVIEW developers working to solve some of the toughest system timing and synchronization challenges.

Here’s how this tool can help…

Some Bugs Need Fairy Power

Let’s say you have a bug in your code shows up as an intermittent problem. Often times, adding a perfectly timed delay into your code can cause the problem to go away… almost like magic.

.                                           DelayMagic Delay Fairy

For example, say you’re configuring an instrument’s voltage range (sending the “CONF:VOLT:RANG 0,10” command)  and then querying a measurement (sending “MEAS:VOLT?”). Sometimes the voltage is out of range and sometimes it’s not — the instrument gives you a beep, letting you know it’s not happy. In this situation, inserting a “magic” delay between your configuration and measurement steps might help.

Here’s a video that shows what we mean…

Before Magic Delay: Code is not working! :(

Before Magic Delays

After Magic Delays: Code is “working”! :)

Magic Delay After

How does this tool work?

The Magic Delay Fairy fixes race conditions in your code by inserting magical delays into your code that are specifically tuned using advanced magical algorithms to fix your race conditions. Don’t ask how it works, because it’s magic.

Warning! You may be so excited by this great tool, you may want to prance and frolic.


Act Now! Download and Install the JKI Magic Delay Fairy Today!

Download and Install the JKI Magic Delay Fairy using VIPM.

Special Thanks

Norm Kirchner for doing the magic fairy dance
– The guy whose face is on Norm’s presentation about the Magic Delay Fairy (we’ll update this description later)
Gavin Burnell for awesome Scripting Tools.
–  Brian Hoover and Yair on LAVA for help getting screen coordinates of GObject on Block Diagram
Darren Nattinger for making QuickDrop awesomeness
– OpenG for the Wait (ms) VI with error handling :)
– Everyone at JKI who contributed to this tool

Join The Discussion

What will you do with the JKI Magic Delay Fairy?  Will it save your project?  Your job?  Your life? Tell us in the comments below!

Posted in Company News | Tagged , , , | 2 Comments