Data Acquisition and Control guide series


Kipling and other LabJack software

In this lesson, I will discuss the various software options that are available for the LabJack.

Hi, thanks for stopping by! Just letting you know that we are currently working on this page. You may notice incorrect links and lots of typos. We expect to buff and polish within a few days.

Let's have a look at the various software options that are available for the LabJack.

You can find the software options by going to the LabJack website


Kipling, LabJack's main software application.

In this course and guide, I will be using LabJack's main software application, called Kipling. It is available on macOS, Windows, and Linux.

Kipling is used to interact with the device, either graphically using this dashboard representation of the device or by interacting directly with the registers via the Modbus protocol layer (see below).

With Kipling, you can interact with LabJack's registers.

These registers are what control all of LabJack functions and store information that relate to the state of its ports. The Dashboard view simply provides a graphical user interface to interact with the registers. The Registers Matrix view allows you to do so directly.

The Lua Script Debugger in Kipling.

And there's also the Lua script debugger, which you can use to write and manage Lua scripts.

Later in this guide you can find articles where I focus on specific functionalities of Kipling (with a lot more information and demos in the course).

To install Kipling, go to the Download page for the T4 and T7 devices. Select your operating system, download the installation file, and install the application as you would with any other application.

LJLogM and LJStreamM

LJLogM and LJStreamM are apps specialising in data logging.

The LabJack software page for the T-series devices contain two other very useful software applications: LJLogM and LJStreamM. 

These applications are specialized to data logging. Your LabJack can stream data via the network or USB to LJLogM or LJStreamM, do some light processing (such as apply a scaling function to the raw data) then store the data in a text file such as a comma delimited file or tab delimited file. Then, you'll be able to use that file and continue with the data processing in an external application like a spreadsheet.

LJLogM (beta) showing a graph view of data captured by a LabJack T4.

The Kipling installed contains both logging applications, but you can also download them separately:

1. Download LJLogM.

2. Download LJStreamM.

I have recorded several lectures in this course where I demonstrate how to use the more advanced beta version of LJLogM (only available on Windows).

Example Code and Wrappers

LabJack example code and Wrappers

Because the LabJack T4 and the T7 are running a Modbus server and able to execute Lua scripts on the hardware, it is possible to interact with the device from a host computer via the Ethernet/Wifi or the USB interface.

LabJack has developed a number of very useful software wrappers that allow you to do that in a wide range of programing languages.

For example, there are wrappers for C/C++, LabVIEW, Python, Node.js, MATLAB, etc. In this course, I have provided lectures where I show you how you can use the Python LJM library and wrappers to allow you to write simple Python scripts that interact with the device via Modbus.

Another "cool" feature of LabJack Python scripts (or scripts written in any other supported language) is that they can interact with on-board Lua scripts. This is a very interesting capability that allows you to programmatically and remotely create onboard Lua LabJack applications using the language that you are more comfortable with, whether it's Python or C++.

There's a wide range of options here and all of them are equivalent in terms of what you can do with them and what kind of applications you can create for LabJack.

In the next lecture, I will introduce you to the LabJack Modbus registers, which consists the core of LabJack T-series device functionality.

"Data Acquisition and Control" series

Learn Data Acquisition and Control with LabJack

With this video course, you will learn how to use the LabJack device to perform data acquisition and control (DaQ) operations.

LabJack was designed to be robust and reliable, to work autonomously in harsh environments for a long period of time, and to have a lot of input/output ports able to connect to a huge range of sensors and actuators.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}