Kipling | LabJack
« Close

Datasheets and User Guides

App Notes

Software & Driver



Kipling Overview

Kipling is a configuration and utility application for the T4 and the T7/T7-Pro. It is a cross-platform program which uses LJM for device communication. It provides basic test, configuration, and firmware upgrade functionality in a graphical interface.

System Requirements

Kipling is supported on Windows, macOS, and Linux.


  • Supported: Windows Vista and later
  • Supported: 32-bit or 64-bit


  • Supported Platforms: Intel/AMD x86 processors. Kipling does not support ARM platforms such as the Raspberry Pi or other common SBCs.
  • Supported: 32-bit, 64-bit
  • Supported: Distributions such as Ubuntu 14 and newer should work. For more details, see Kipling Linux support.
  • Customers have experienced issues with Ubuntu 18.04. See the Kipling troubleshooting page for instructions on how to debug Kipling and get it to start.


  • Supported: macOS 10.9 (Mavericks) and later


Kipling is installed with the T4, T7 and Digit Installation packages.


To launch:

  • Linux: Run the terminal command labjack_kipling or /opt/labjack_kipling/Kipling.
  • Windows: Use the Start menu.
  • macOS: Launch from the Applications folder, or use Spotlight.

When Kipling first starts a splash screen will appear and go through several steps of extracting ".zip" files located in the installation files directory to a temporary persistent files directory (see the troubleshooting section for details). After the splash screen disappears, a main window will appear and devices will be discovered using the LJM library's device searching functions. During this time, Kipling queries uses the DNS service to resolve to an IP address which is then queried with TLS v1.2 to check whether or not the program is up to date as well as querying for firmware file links.

Text size: To change the text size:

  • Windows: Hold ctrl and scroll the mouse scroll wheel
  • macOS: Hold cmd and control and scroll the mouse wheel
  • Linux: Hold ctrl and meta and scroll the mouse wheel


If Kipling is not starting properly please go to the troubleshooting section.

Program Highlights

Device Selection

Kipling features a simple device selection process that makes it easy to see a device's connectivity options and provides immediate information about each found device.

Program Usability

T-series devices are multifunction DAQ units that have a lot of built-in features. Kipling simplifies usage by being fast and organized. Kipling formats information so that it is both easy to understand and easy to find.

Analog Input Functionality

T-Series devices are highly capable devices with a multitude of analog features. Kipling makes them easy to learn about, configure, and use. Explore the device's extended features through a graphical interface. (Analog extended features simplify reading thermocouples/thermistors, RMS, and other readings.)

Register Matrix Control

The register matrix screen gives full control to configure any part of the device. Pin important registers and configure useful settings to be used on device power-on.

Device Scripting

Write, run, and debug Lua scripts that execute on-board the device, independently from a computer. Lua script examples are built into the program—they provide a great place to start exploring functionality.

Device Updating

LabJack is dedicated to making quality data acquisition and control devices. In order to do this we release device updates with new features, bug fixes, and more. Kipling makes updating firmware simple.

Screen Shots


I tried yesterday to install the windows standalone version on a windows 7 ultimate computer as administrator and was unable to install the program. And endless list of subprograms that violated the security regulations. Today I installed the kipling with the windows installer and no problems. The new version is much better than the old version that is in the windows installer package of 49,9 MB. Especially when you have a screen where you have enlarged the font size.   


We can publish the source code for the splash screen if you want, it is just not published anywhere.  Unfortunately, it doesn't measure the progress of unpacking the nw files.  The currently implemented splash screen simply checks for the number of running nw.exe processes and exits when this number reaches two.  We haven't found a way to measure the absolute progress of unpacking the nw files but would really like to be able to do that in our splash screen.

Yes, I would like to check your code for splash screen.

I was following this discussion but seems that there is no a solution for measure the startup progress, until now.

If I found a good solution I will back and share with you.

Thank you.



I just bought a T7 LabJack and I was wondering how to manually configure a FIO to analog. For example, using a U3-HV you will do something like "lj.configAnalog(u3.FIO1)". 

Note: I'm using python

I just tried the current version (3.0.0) of Kipling for Linux 64bit on my Linux Mint 17 (equiv. to Ubuntu 14.04). I got as far as starting Kipling. It recognized my new T7 but froze with the following output shown in console:

[10941:1210/235259:INFO:CONSOLE(143)] ""Critical Error:" "TypeError"", source: file:///tmp/.org.chromium.Chromium.XzcDUh/presenter.js (143)

[10941:1210/235259:INFO:CONSOLE(144)] ""When Loading File:" "device_selector.js"", source: file:///tmp/.org.chromium.Chromium.XzcDUh/presenter.js (144)

[10941:1210/235259:INFO:CONSOLE(145)] ""Error Contents:" {}", source: file:///tmp/.org.chromium.Chromium.XzcDUh/presenter.js (145)


We'll be releasing a new 64-bit Linux version of Kipling to address this as soon as possible. Thanks for the error report!

I've got no success using Kipling 3 on Ubuntu 12.04 64-bit. I updated my LJM library and unpacked Kipling. It starts just fine, but the top third of the screen is covered with a big orange error message:

Critical Error Encountered Loading Module: device_selector.html
Error: TypeError
When Loading File: device_selector.js
Full Path To File: /tmp/.org.chromium.Chromium.A6wN0x/static/js/device_selector.js
Error Contents: TypeError: Cannot read property '0' of undefined
Check console.log for more info.
Consider using to debug file

I can select the device though, and a flurry of activity happens on the console when I do so (it seems it dumps the whole ljm_constants file), but when I click on »Continue«, the orange box stays, there's a message »devices connected. / Select Devices« in the lower-left corner, but other than that, there's nothing on the screen.

We'll be releasing a new 64-bit Linux version of Kipling to address this as soon as possible. Thanks for the error report!

We are currently trying to re-work the lower level parts so that we can upgrade to the latest version of node-webkit and fix some of our distribution issues.  Unfortunately the project depends on a library that doesn't support the version of node that the newer node-webkit provides so it has taken a substantial amount of effort.  This issue will hopefully get resolved upon completion of the aforementioned task which will hopefully get finished at the end of the month.


How do you install Kipling in Linux Mint or Ubuntu?

I have had no luck.


Kipling is built using the node-webkit (renamed to nw.js) project.  The current version of Kipling should run if the node-webkit binaries run on your computer.

Please e-mail us at [email protected] with further questions.

If you run the download's kipling binary in a terminal (./kipling) and are getting a "error while loading shared libraries: cannot open shared object file: No such file or directory" or similar message (note that double clicking the kipling binary will not display the message and the application will not run), this is probably related to removal the libudev0 library on certain newer Linux distributions which the version of node-webkit we currently have in our release requires. In this case, before sending us that email first in a terminal try the appropriate command below that creates a link to and see if that helps with Kipling starting:


64-bit Linux

sudo ln -s /lib/x86_64-linux-gnu/ /lib/x86_64-linux-gnu/


32-bit Linux

sudo ln -s /lib/i386-linux-gnu/ /lib/i386-linux-gnu/


The node-webkit discussion where this solution and others can be found is here: