LabJack | Measurement & Automation

Free Shipping for U.S. Orders $150+   |   5-year Warranty   |   Try Our Devices & Support for 60 Days, Risk Free  |   50 of 54 Products In-Stock Now

Simple C++ Symbol Visibility Demo

This post gives a demonstration/test of the dangers of using default visibility for symbols in C++ shared libraries. It briefly walks through why and how to use the -fvisibility=hidden compilation flag along with __attribute__((__visibility__("default"))) in symbol declarations.

LJM Timing Functions

Data acquisition often needs to be done at regular and precise intervals. It can also be important to check how long it took an operation to complete. For these purposes, LJM 1.1700 added the following functions:

Power over Ethernet (PoE) and LabJack

Power over Ethernet (PoE) standards celebrates 15 years of official adoption by IEEE 802.3af in 2018, and is just as relevant today as ever. Mainstream adoption of PoE devices has driven down costs of switches, splitters and  injectors combined with an exploding number of PoE capable/compatible devices. This has offered expanded opportunities to not only established industrial processes but also experiments, prototypes and projects on a shoestring budget.

PoE offers innovators a variety of creative applications to the world of data acquisition (DAQ). Recently, LabJack performed thorough product testing to better serve those clients wishing to utilize PoE for their upcoming deployments. Using one of a variety of  inexpensive splitters/adapters our Ethernet capable LabJacks (T7 family, T4, & UE9 Family) can be used with PoE, eliminating the need for nearby AC power. Using Cat 6 cable, PoE can reliably transmit power and data 100 meters/328 feet. The benefits of PoE are already well documented. LabJack engineers have tested 3rd party switches, injectors and splitters, in conjunction with LabJacks so you can incorporate PoE into your next LabJack project with confidence.

Power over Ethernet (PoE) compatible Modbus TCP LabJack DAQ devices

LabJack T4

Product Announcement

Updated 12/21/2017

We are excited to introduce our newest multifunction DAQ device, the LabJack T4. The T4 is a low cost USB and Ethernet DAQ device that is compatible with Modbus TCP/UDP, making it suitable for a wide range of industrial automation, logging and control applications. The LabJack T4 is officially released and for sale!

Low Cost Ethernet DAQ


T4: $245

  • Lowest cost Modbus TCP Ethernet DAQ device. Also supports USB communication.
  • 4 dedicated high voltage analog inputs (±10V, 12-bit resolution)
  • 8 configurable low voltage analog inputs (0-2.5V, 12-bit resolution) that can function as digital I/O lines
  • 8 dedicated digital I/O lines (EIO4-EIO7 and CIO0-CIO3)
  • Multiple timers and counters (Pulse Timing, PWM Output, Quadrature Input, ...)
  • Digital I/O lines support SPI, I2C, 1-Wire, and UART (Master modes only)
  • 2 Analog Outputs (10-bit, 0-5 volts)

T7, Raspberry Pi 3, and Cloud9

Raspberry Pi 3, LCD Screen, and LabJack T7

Combining the processing power from today's latest single board computers with LabJack's DAQ devices allow for some really cool projects. The T-series' built-in Lua Scripting feature allows for the T4/T7/T7-Pro to operate as a standalone device, but sometimes projects require more processing power. The Raspberry Pi 3 has a quad-core ARMv8 CPU, WiFi, Ethernet, and Bluetooth 4.1 but is missing industrial strength, precision, and calibrated analog inputs which you get when you connect a T7. This tutorial will hopefully help some of our customers get started with the Raspberry Pi and the T-series devices as well as introduce existing Raspberry Pi users to the idea of using Cloud9 as a remote IDE that is introduced by the BeagleBone Black. Developing directly on a Raspberry Pi can sometimes be slow as you don't have access to modern web-browsers and it usually takes up one of your monitors. With Cloud9 running locally on the Raspberry Pi you can simply navigate to the device's IP address and code away!

To learn more, please continue to the full App-Note: T7, Raspberry Pi 3, and Cloud9.

LJM Processing Examples

With the help of one of our customers, LabJack now has Processing examples for the LJM library that use a T7.

Processing is a high-level programming language designed to help students, artists, designers, researchers, and hobbyists create visually appealing drawings, illustrations, and applications.  It is a cross-platform application which pairs well with LJM, allowing examples written in Processing to run on Windows, Mac OS X, GNU/Linux, and even the Raspberry Pi.  A .zip file containing the LJM Processing examples can be found on the Processing Example Code/Wrappers page.  A screen shot of the example program running on Windows is below:

T7 DAQ via LJM and Processing

Windows - Example LabJack Installer

If you have an application that incorporates LJM-supported devices and you want to deploy to Windows machines, LabJack now has an example installer that you can use with minimal changes:

By modifying windows_example_installer, you can easily create your own installer, whether it's for internal or external use. The GitHub link above has all the technical details, so start reading to begin.

Screen Casting and Lua Script Tutorials

LabJack has always wanted to look into making short video tutorials to educate our customers with using our devices. These are the first of our tutorial videos, you can also watch the videos on YouTube.

Please send us an e-mail to [email protected] if you like this idea, found the videos to be helpful, or if you want us to make more of these videos. Any constructive criticism is welcome.

Kipling 3.1

We are pleased to announce that we are releasing Kiplingv3.1 featuring:

  • Improved start time and splash screen
  • Improved Device Selector
  • Improved Module Navigation
  • MUCH better error handling and reporting
  • Improved register matrix that now remembers the registers you have selected.
  • Improved lua script editing that remembers what script you last had open.
  • New project repository

Splash Screen

Kipling now starts a lot faster and has a responsive splash screen!

Improved Device Selector

It is now easier and faster to open multiple devices. You don't have to wait for a device to finish being opened to be able to open a second device.

Improved Module Sidebar

It is now easier to transition from selecting devices to controlling devices. After selecting a device modules show up instantly.

Improved Error Handling

Kipling handles and displays device errors by displaying them in the upper right corner of the screen making them much easier and less intrusive.

More Error Handling

Because of error-handling improvements devices can be disconnected and reconnected with out locking up/freezing the program! Yay! This is great news to our WiFi customers that have connectivity issues.

Register Matrix Improvements

The register matrix is an important module because it pretty much exposes all of the device's features. It is now easier to search for registers, add/remove them, and edit them. When editing registers that report an IP address the 32bit integer gets automatically converted into an IP address string! More importantly, you can navigate away from the register matrix and when you come back your selected registers will still be there.

Lua Scripting

Developing lua scripts for the T7/T7-Pro is much easier than before. There updated examples, the editor & console stay "fit" to your screen size, and thanks to the error-handling improvements as well as T7 firmware improvements lua script errors that once plagued kipling are no longer there.

T7 in a stirling engine dynamometer

This is a good example of how LabJack devices are used in the wild. Martin Beck, an engineer working with VE Engineers in Germany, employed the T7-PRO for data acquisition within a dynamometer. The dynamometer is used to measure the output from a stirling engine.

Signals Acquired

  • Eight (8) temperatures through Type K Themocouples. Directly connected to T7-PRO´s CB37 board without further amplification. Sample rate = 1 Hz. CJ compensation via LM34CAZ.
  • Torque, ±50 Nm. Output of torque-gauge ±10V. Directly connected to LabJack T7-PRO. Sample rate = 1 kHz.
  • Absolute internal pressure, 0-20 bar abs. Output of pressure transducer 0-10V. Directly connected to LabJack. Sample rate = 1 kHz.
  • Crankshaft angle and velocity. Incremental encoder with quadrature output. 360 tics per rev max. 36 kEdges per sec. Directly connected to LabJack. Counter is quadrature counter. Sampling of Counter value with 1 kHz. Resetting of counter through inductive initiator.

T7-PRO in the dyno electronics enclosure

A view of the electronics enclosure on the side of the engine/dyno.