« Close

Datasheets and User Guides

App Notes

Software & Driver


Thermocouples (App Note)

Thermocouples Overview

If you are measuring in the range of -50 to +150 degrees C, consider using a silicon type temperature sensor, rather than a thermocouple.  See the "Temperature Sensors" application note.

Understand the difference between resolution and accuracy

The T7-Pro is the best device for thermocouples.  The U6 family has the same analog input quality as the T7, but does not have the ability to do the math in hardware (we do provide a UD driver function to handle the math in software).  The 24-bit converter available on the T7-Pro & U6-Pro provides higher resolution (at lower speeds), but perhaps more importantly with small thermocouple signals it also provides outstanding noise rejection.  The U3 with LJTick-InAmps is the least expensive way to get decent readings from thermocouples:

U3:  The U3 is a USB-only device that when combined with LJTick-InAmps provides the minimum cost solution for 4 or less thermocouples.  See the U3 Thermocouple Tutorial.

U6:  The U6 (or U6-Pro) is a USB-only device with much better analog inputs than the U3.  Thermocouples can be connected directly with better performance than the U3-LJTIA combination.  See the U6 Thermocouple Tutorial.

T7:  The T7 (or T7-Pro) has the same analog input system as the U6 (or U6-Pro), but provides Ethernet and USB connectivity (and also WiFi on the T7-Pro).  Also, on the T7 devices the AIN-EF system can be used to perform all thermocouple math in hardware so you can get direct readings of temperature.  See the T7 Thermocouple Tutorial.

UE9 & U12:  New applications should first consider the U3, U6, or T7 series devices.  The UE9-Pro is good with thermocouples, while the UE9 is okay providing a resolution of roughly 1 degree C.  The U12 can only resolve raw thermocouple voltages within 10s of degrees C, and thus generally requires an amplifier such as the EI-1040.


Silicon Type Sensors:

In the range from -50 to +150 degrees C, silicon temperature sensors are generally cheaper, easier to use, and more accurate, than other types of temperature sensors. With no or minimal extra components, they provide a high-level linear voltage output that connects directly to a LabJack's analog inputs.

The EI-1034 is a silicon based temperature probe made by Electronic Innovations and sold by LabJack.  It uses an LM34CAZ sensor element from National Semiconductor.  The LM34 provides an easy-to-use 10 mV/degF.

The EI-1022 is a silicon based temperature probe made by Electronic Innovations and sold by LabJack.  It uses an LM335A sensor element from National Semiconductor.  The LM335A provides an easy-to-use 10 mV/degK, but needs a resistor also.


Thermocouple Complications:

Thermocouples are not particularly accurate, and sometimes can be more difficult to use, but they are a very common way to measure temperature.  Some applications with extreme temperatures or specific mechanical requirements might require thermocouples.

Thermocouples have 1 main issue and other minor issues:

  1. Small Output Voltage (Main Issue):  The small output voltage of a thermocouple makes it difficult to get good temperature resolution.  The common K-type only provides about 40 uV/degC, thus for a temperature resolution of 0.1 degC you need a voltage resolution of 4 uV.  This is the reason the U3 requires LJTick-InAmps, whereas the U6/T7 devices have the necessary resolution & amplification built-in.
  2. Cold Junction Effects:  The voltage generated by the thermocouple is related to the difference in temperature of the 2 ends (local and remote) of the thermocouple.  In order to know the absolute temperature at the remote end of the thermocouple, the temperature of the local end (called the cold junction) must also be known.  Once the cold junction temperature is known, cold junction compensation (CJC) is easily handled in software.  The U6 and T7 have built-in sensors to provide the temperature of the U6 or temperature of the T7.  If connecting to the CB37, rather than directly to the U6/T7, you might want an LM34CAZ to measure the temperature of the CB37.
  3. Non-Linear Output:  The output of a thermocouple is non-linear.  NIST provides tables and equations to convert a thermocouple voltage to a temperature.  The LabJack UD or M libraries provide convenient functions that use the NIST equations to handle the conversion, and DAQFactory has built-in conversion functions of its own.
  4. Poor Inherent Accuracy:  Thermocouples have errors due to the consistency of the thermocouple materials themselves.  There is a standard called IEC 584-2 that limits the allowable error for different thermocouple types at different temperatures, and these allowable errors are typically ±1.0 to ±2.5 degrees C at moderate temperatures, but can be as high as ±9.0 degrees C at 1200 degrees C.  See the "Thermocouple comparison" table on the Wikipedia thermocouple page.
  5. Bad Ground Loops:  This is a common and complex problem that our customers encounter.  It occurs when bare thermocouple wire is used, or a metal thermocouple probe where one of the thermocouple wires inside is connected to the probe (often called a "grounded" probe).  If multiple of these are connected to a common metal object, and connected single-ended to the LabJack, you can get ground loops and unexpected thermocouple junctions.  The typical fix is to use differential inputs with a resistor (10k to 1M is typical depending on device) from the negative input to GND.  As noted in the Differential Readings Application Note, the resistor is sized to be low enough to provide a path for bias currents but high enough to prevent ground loop issues.  Sometimes further steps are needed.  We highly recommend keeping thermocouples electrically isolated from each other at the remote ends.  If you are attaching them to common metal with bare thermocouple wires, use some sort of epoxy that has good thermal conduction but poor electrical conduction.  If you are using probes or other thermocouple assemblies, choose ones that are "ungrounded" or otherwise provide electrical insulation between the thermocouple wires and the test specimen.
  6. Ground Offsets:  Care must be taken to avoid ground offset errors with single-ended measurements.  Error will result if the negative lead of the thermocouple is connected to a GND terminal that is at a different voltage than ground at the A/D chip.  See the "Ground Offsets" section on the Mux80 Datasheet.


Connectors & Connections

For a single-ended connection (good if you do not have complications #5 or #6 above), connect + to AINx and - to GND.

For a differential connection, connect + to positive AINx and - to negative AINx, and you almost always need to add a resistor (100k is typical) from negative AINx to GND per the Differential App Note.

The LabJack analog inputs are accessed through screw terminals or DB connectors.  If your thermocouple has plain wire ends, just clamp them right in screw-terminals and know that that screw terminal is your cold junction.

If your thermocouple has a 2-pronged connector at the end such as the Amazon B00OK6CBMU, you can simply remove a screw or 2 and remove that connector, or get a female connector such as the REED LS-182 and add a couple pigtail wires.  Note that this connector is the cold junction, and also note that per the law of intermediate metals the type of this connector should not matter ... you should be able to use a type K connector with any type thermocouple.


Troubleshooting Tips:

Too much noise: 

1.  Range and Resolution configuration settings:  The most common problem leading to too much noise is not having the correct range and resolution settings (on the U6/T7 in particular).  To test, disconnect the thermocouple and jumper the analog input to GND (or both analog inputs to GND if using a differential input).  Open LJControlPanel and go to the test panel (U6) or go to the Analog Inputs tab in Kipling (T7).  Set the range and resolution as needed and look at the noise level on the applicable channels and compare to the specified typical noise for the LabJack (Appendix A of the U3 Datasheet, Appendix B of the U6 Datasheet, Appendix B of the UE9 Datasheet, Appendix A-3-1 of the T7 Datasheet, or Appendix B of the LJTick-InAmp Datasheet).  After confirming the proper noise level in LJControlPanel, go to your actual software, turn off any scaling so you are looking at the raw voltage, and confirm the proper noise level there.

2.  Floating differential input:  If using a differential input you usually need a resistor from the negative channel to GND.  See the Differential Readings App Note.

3.  Bad ground loops (see complications above), ground offsets (see complications above), or bad EMI sources nearby (e.g. arc furnace).

Wrong temperature:

1.  Is the CJC temperature correct?

A thermocouple gives you a voltage related to the difference in temperature between the 2 ends, so if there is a +10 degree error in the measurement of the local end (cold junction or CJ) you will see about a +10 degree error in the calculated value for absolute temperature of the remote end of the thermocouple.

2.  Is the raw thermocouple voltage as expected?

Bring the remote end of the thermocouple over near the local end (CJ) to check the condition where both ends are at the same temperature.  You should read very close to 0 volts (within a couple hundred microvolts typically).  A thermocouple gives you a voltage related to the difference in temperature between the 2 ends, so if the remote end is at the same temperature as the LJTIA end, the voltage difference created by the thermocouple should be close to 0.

To check at some arbitrary temperature difference, here are charts where you can look to see what voltage you expect:


For example, say you have a Type K thermocouple:


The voltage at the 25 deg C end is 1.000 mV and the voltage at the 35 deg C end is 1.407 mV, so the difference is 407 uV.

If the LabJack is reporting 407 uV, then continue to step 3.  If not, use a DMM to measure across the screw-terminals where the +/- leads are connected to see if the DMM reading is different or agrees with the LabJack.

If using a differential connection, also check the voltage on each input (AINeven and AINodd) compared to GND.  Both should be near 0, not near the rails (+13 or -13 volts).

3.  Is the math correct?  If the CJC temperature is right and the raw thermocouple voltage is right, then something must be wrong with the conversion math.

LJTIA troubleshooting:

In the U3 tutorial we use gain=51 and offset=0.4.  The tutorial has you install ground jumpers to check that the offset is correct and the noise level is as expected.

With signals connected to the LJTIA, a DMM can be used to measure the differential input INA+ versus INA-, and also measure the output (versus GND), and confirm that you see Vout = (51*Vdiff) + 0.4.

See Appendix C.1 of the LJTIA Datasheet.



Details and Tutorials for the U3, U6, and T7:

Thermocouples with the U3 & LJTick-InAmp

Thermocouples with the U6

Thermocouples with the T7



I'm using E1050, 1022, 1034 but they have different time constants, using thermocouples would be a big step forward to capture temperatures in real time!

I would agree that you can get thermocouples with faster response times than those probes.  You can also use the plain silicon sensors without probe assemblies and use thermal compounds to improve heat transfer, but even then you can find thermocouples with faster response times for systems with very rapid temperature changes.

I am sure this has been addressed but I am not putting the pieces together.

I need to read thermocouples with the U6 on DaqFactory Express. They have lots o U9 and U3 info for TCs but are not detailing the U6

In the sequence I have put ... <edited>

Before we get into too much, did you see the DAQFactory Examples page?  Check out "Thermocouple U6.ctl" and "AIN Configuration U6.ctl".


I am considering purchasing a u6 to read several thermocouples and a voltage which is on the order of 1 volt.

On the u6, are the gains for each analog in channel set individually?  ie, can I have +/-0.1 on a channel, and +/-1 on another channel?

If each channel's gain is separately set, is each channel read individually with independent 16 bit resolution?

ie: the channel set to +/-0.1V has ~3uV resolution while the +/-1V channel has ~30uV resolution.


I'm having issues running type K thermocouples at high temperatures. They are reading gas temperatures, and the temperature is known to be above 1000 degrees F but the thermocouples wont go above 500. They are running parallel to wires controlling a heating element at high voltage, could this be an issue (magnetic field?)? They're connected into a U6 through a CB37 terminal board, from Ain to GND.



Looks like 500 degF is about 10.5mV.  Are you using the +/-10mV range, and perhaps need to switch to the +/-100mV range?

I have used seven differential connection of thermocouples in the U6. My question is, how can I arrenge  the window of LJLogUD to read data as a temperature file, I mean (+Ch, -Ch, and ranges) and scaling equation as well, when using seven differential connection of thermocouples, where the information in the tutorial (Type K with U6) just about one or three of thermocouples for example (Move the pos/neg thermocouple leads to AIN0/AIN1, AIN2/AIN3, and AIN4/AIN5.  You also need some 10k resistors to go from AIN1 to GND, AIN3 to GND, and AIN5 to GND.  In the first 3 rows of LJLogUD, change the +CH/-CH to 0/1, 2/3, and 4/5)

First follow the tutorial and get 1 thermocouple connected to AIN0/AIN1?  Does this work?  Then expand to 3 thermocouples and see if that works.  Then expand to 7 thermocouples and see if it still works for you.

I am using a U12 and want to make temperature measurements. I have a few J type thermocouples that I can use for my application. Would you recommend getting an amplifier (like the EI-1040) or to instead use thermocouples like the EI-1034 or EI-1022? Which method yields a higher resolution?

If the silicon sensors will work for you (physical form factor?, temperature range?), then they are usually superior to other types of temperature sensors in all ways (cost, ease-of-use, resolution, accuracy).  If you need to use thermocouples, you will need an EI-1040 with the U12.