Support and Documentation

Using a Thermocouple with the T8


Overview

The T8 excels at thermocouple measurements with its 24-bit analog to digital converters (ADCs), built-in amplification, and channel-to-channel isolation. The 24-bit sigma-delta ADCs also filter 50/60 Hz noise, which is a common problem in thermocouple applications. A single T8 can measure up to 8 thermocouples.

See Selecting the Right Hardware to compare solutions for 8+ thermocouple measurements.

Resolution

The voltage range for a type K thermocouple is -10.8 mV at -270 °C to +54.89 mV at 1372 °C. This equates to an output of roughly 40 µV/°C. The corresponding temperature resolution when using a T8 is described in Table 1.

Table 1: Approximate Type K Thermocouple Measurement Resolution Using the T8.

Resolution Index

Noise Free (°C)

Effective (°C)

8

0.3 °C

0.05 °C

16

0.075 °C

0.0125 °C

In-depth Breakdown: From Appendix A-3-3-2 of the T8 User's Guide, the typical device resolution at resolution index 8 and ±0.15V range is ≈12 μV noise-free and 2.0 μV effective.

12 µV / 40 (µV/°C) = 0.3 °C noise-free from a type K thermocouple.

At resolution index 16 the device resolution is ≈3.0 μV noise-free and 0.5 μV effective. 

Most temperature samples (1 standard deviation) are expected to fall within the effective resolution value.

Real thermocouple signals could be affected by external noise sources that result in worse resolution than the values detailed above.

Air temperature tends to fluctuate naturally. What looks like noise in a thermocouple measurement could be real temperature changes.

Accuracy

What's the difference between resolution and accuracy?  See the Resolution and Accuracy App Note.

Table 2: Approximate Type K Thermocouple Measurement Accuracy Using the T8.

Range Setting (V)

Accuracy (°C)

Temperature Range (°C)

± 0.075 V

±0.475 °C

-270 to 1372 °C

± 0.036 V

±0.333 °C

-270 to 860 °C

In-depth Breakdown: From Appendix A-3-3-1 of the T8 User's Guide, the T8 is calibrated to an absolute accuracy of ±19 µV at the ±0.075 V range. This value corresponds to around ±0.475 °C for a type K thermocouple (19 µV / 40 µV/°C).

Higher accuracy can be achieved by using a higher T8 range setting. Note that this could limit the measurable temperature range. The ±0.036 V range setting has an accuracy of ±13.3 µV. This value corresponds to around ±0.333 °C for a type K thermocouple (13.3 µV / 40 µV/°C).

There are other sources of error in a thermocouple system. In particular, any error in cold junction temperature measurement is reflected as error in the thermocouple temperature.

Tutorial: T8 and Type K Thermocouples

Follow these instructions to connect a Type K thermocouple to a LabJack T8 and acquire readings using Kipling. The “Going Further” section provides guidance for other software options.

1. Go through the T8 Quickstart Tutorial.

2. Connect the Thermocouple to an Analog Input.

This tutorial will use AIN0 on the T8. Connect the thermocouple as shown below:

  • Thermocouple+ to AIN0+

  • Thermocouple- to AIN0-

P1110586.jpeg
Thermocouple Connected to T8 AIN0

Other LabJack devices such as the T7 require you to refer thermocouples to device GND, often by connecting a resistor from the AIN to GND. This ground reference connection is not required on the T8 due to the isolated analog input design.

3. Run Kiplingand Connect to the T8

Connect the T8 to your computer via USB, then click Refresh Devices in Kipling. Click the Green USB button to open the T8.

Screenshot 2026-07-21 093227.png


4. Configure the Analog Input Channels in Kipling

Wizard Configuration (Easiest Method)

The easiest way to configure AIN is with the wizard in Kipling. Go to the Analog Inputs tab, press the + button for AIN0, and set Extended Feature (EF) to TypeK Thermocouple. Set Range to -0.075 to 0.075 V.

We recommend using the smallest range setting that will work for your measurements. The ±0.075V range setting is suitable for the full temperature range of most thermocouple types.

Screenshot 2026-07-21 093518.png

Register Configuration (Alternate Method)

Alternatively, the AIN can be configured by directly setting T8 registers. This method is useful if you eventually intend to do the AIN configuration programmatically.

  1. Navigate to the Register Matrix tab in Kipling.

  2. Add AIN0_RANGE and AIN0_EF_INDEX to the active registers list. To do so, search for each register using the search bar. When the register appears in the search results, click on the check mark to the left of the register name to add it to the active register list.

  3. Set AIN0_RANGE to 0.075 to use the ±0.075 V range setting and set AIN0_EF_INDEX to 22 to configure the type K thermocouple measurement feature (AIN_EF). To do so, click on the "write mode" button for both AIN0_RANGE and AIN0_EF_INDEX in the active registers section, update each register value, then click the “write” button for each register. The “write mode” button looks like a small pencil icon under the VALUE column.

Screenshot 2026-07-21 101542.png

6. Log Data with LJLogM

Close Kipling and then open the device in LJLogM.

7. Configure a Thermocouple Measurement

The T8 can be set up to collect and convert temperature readings automatically using the thermocouple AIN_EF, or can be manually converted from a plain voltage measurement from within LJLogM.

AIN_EF Method:

Ensure that AIN0_EF_READ_A is in the Names column for row0. This will configure LJLogM to measure the AIN0 thermocouple temperature in row0, reported in the Value column. From here, skip to step 9.

Manual Method:

Ensure that AIN0 is in the Names column for row0. This will have LJLogM measure AIN0 in row 0, which is configured to measure the thermocouple voltage as described in the previous steps. Continue to step 7.

The AIN_EF method is always recommended. The manual method should only be applied if you eventually plan to use LJStreamM/stream-mode acquisition, or if you are in the unusual situation that you must create a custom conversion formula.

8. Configure a CJC Measurement (Applies Only to the Manual Method)

The AIN0 terminal should be the thermocouple cold junction. The temperature at the AIN0 terminal should be found to do cold junction compensation. Replace the register name in the Names column of row1 with TEMPERATURE0_CAPTURE to read the temperature of the AIN0 terminal. See the Internal Temp Sensor section of the T-series datasheet for more information about the device temperature registers.

9. Apply Scaling Equations (Applies Only to the Manual Method)

The scaling equation column can be used to convert a thermocouple voltage to temperature.  See the Scaling Equations description in the LJLogUD/LJLogM documentation. The equation for a type K thermocouple measurement in row0 is:
y=TCVoltsToTemp[K:a:b]                             // degrees K
y=TCVoltsToTemp[K:a:b]-273.15                 // degrees C
y=1.8*(TCVoltsToTemp[K:a:b])-459.67      // degrees F

... where K means Type K thermocouple, a is the raw value measured in row0 (the raw thermocouple voltage), and b is the the raw value measured in row1 (cold junction temperature in Kelvin).  The TCVoltsToTemp function supports B, E, J, K, N, R, S and T type thermocouples.

The scaling equation variables are a-p corresponding to row0-row15. For example, row4 corresponds to scaling variable e. The scaling equation variables should be adjusted based on the row where the thermocouple voltage is measured.

10. Check the Thermocouple Temperature and Troubleshoot if Necessary

After finishing the steps above, you should see the thermocouple temperature reported in the Scaled column of row0. If the measurements appear faulty, see our thermocouple application note Troubleshooting Tips section.

11. [Optional] Configure Additional Thermocouples in Kipling.

Repeat steps 2-5 for any additional thermocouples you want to configure on other AIN channels.

12. [Optional] Configure Settings as Power-Up Defaults

Most AIN settings such as the input ranges and thermocouple measurement features can be saved so that they are automatically applied when the T8 is powered on. To configure power-up defaults using Kipling, go to the Power-Up Defaults tab and follow the instructions on the page to save "Current Device Settings" as the power-up defaults. See Device Configurations in the T-Series Datasheet for more information.

Power-up default settings only apply to device registers and their associated features. These settings are separate from LJLogM. LJLogM settings such as #Channels, Names, etc. are saved automatically when you exit LJLogM.

13. [Optional] Add Additional Thermocouple Measurements in LJLogM

This step assumes that you configured >1 thermocouple measurements in step 11. If you are only measuring one thermocouple, skip this step.

Repeat steps 7-10 for each new thermocouple measurement you configured except replace the regular AIN# register in LJLogM with AIN#_CAPTURE. This will take the new AIN measurement(s) simultaneously with the AIN0 measurement. For example, set the LJLogM row2 Names column to AIN1_CAPTURE to get the raw thermocouple voltage of a thermocouple on AIN1. Also change # Channels in LJLogM to reflect the number of rows you want to take measurements from.

14. Save Data to File

Once you are getting all thermocouple readings that you want in LJLogM, you can start logging data to file by clicking the small Write to File radio button. This will save data as a tab delimited ASCII file with a timestamp in the first column. See the LJLogUD & LJLogM Timestamps page for additional information.

Going Further

The T8 is compatible with multiple thermocouple types including B, C, E, J, K, N, R, T, and S. For an up-to-date list, look at section 14.1.1 Thermocouple which is in the AIN/AIN_EF section of the T-Series Datasheet. If another thermocouple type is required for your application let us know.

Additional Notes

  • The AIN_EF are incompatible with stream mode acquisition, so the manual/traditional measurement method mentioned in the tutorial above would be required when using stream mode.

  • If you intend to do programmatic control, note that we have examples in various languages such as C, Python, and LabVIEW.

  • If you intend to do programmatic control and if you are using the manual thermocouple measurement method mentioned in the tutorial above, note that the LJM TCVoltsToTemp function can be used to handle the voltage to temperature conversion.