Heater Temperature Controller

  • Heating from -200 °C to 400 °C
  • Two Channels Capable of Independent or Synchronized Operation
  • User-Configurable PID


Heater Temperature Controller

Front Panel Allows Stand-Alone Operation

Related Items

Please Wait
Output Power per Channel 48 W (Max)
Output Current per Channel 2 A (Max)
Output Voltage per Channel 24 V (Max)
Temperature Setting Range -200 to 400 °C Maxa
Set Point Resolution 0.1 °C
Temperature Stability ±0.1 °C
Sensor Types Thermistor, AD590, Thermocouple,
2-Wire and 4-Wire Platinum 100 Ω,
2-Wire and 4-Wire Platinum 1000 Ω
Output Connector Type Hirose HR10A-7R-6S(73)
USB Interface USB 2.0, Standard B
Power Supply 100 - 240 VAC, 50 - 60 Hz, 165 VA Max
Operating Temperature 0 - 40 °C
Storage Temperature -15 - 65 °C
Dimensions (H x W x D) 86.1 mm x 154.2 mm x 327.8 mm
(3.39” x 6.07” x 12.91”)
Weight 1.8 kg
  • Sensor Dependent


  • Heating from -200 °C to 400 °C
  • Run Standalone or via Software
  • Dual Channel Resistive Heater Controller
  • Can Drive Various Types of Heaters, Including Foil and Resistor Types
  • User-Configurable PID

Thorlabs’ TC300 Heater Temperature Controller is a general-purpose benchtop controller intended for use with resistive heating elements, including foil (such as Item # HT10K) and resistive coil (such as Item # HT15W) types. It also accepts feedback from a variety of temperature sensor types including positive (such as Item # TH100PT) or negative (such as Item # TH10K) temperature coefficient thermistors and thermocouples.

The two channels of the front of the TC300 controller are capable of either independent or synchronized operation. Each channel has programmable P, I, and D gains. The back of the TC300 controller has connectors for analog output and input and output triggers for each channel. An output proportional to the actual temperature of the channel is given in the analog output, and the input and output trigger allows the user to enable or disable the channel. For more information, please see the Front & Back Panel tab.

User-programmable maximum temperature and current/voltage limits protect the connected heating element from being overheated or over driven. Other safety features include an Open Sensor Alarm that will shut down the driver if the temperature sensing element is missing or becomes disconnected.

A simple keypad interface allows stand-alone operation, but the TC300 can also be interfaced with a PC using a standard USB Type B connector and our TC300 Application Program. Interfacing with a PC can also be achieved by using LabVIEW or LabWindows with a simple command-line interface from any terminal window.

The TC300 heater controller uses female Hirose connectors to read the temperature of the heating element and supply current. Please note that the cable for connecting this heater controller to a heating element is not provided; we recommend the TC200CAB10 male-to-male Hirose connector cable (sold separately below). For the pin assignments needed to adapt the TC300 controller to your heater, please see the Front & Back Panel tab.

Front Panel

Channel 1 and Channel 2 Hirose Connectors


Pin Diagram

Callout Connection Callout Connection
1 LCD Screen 5 Enable/Disable Button for Channel 1
2 Adjustment Knob 6 Hirose Connector for Channel 1
3 Power Switch 7 Enable/Disable Button for Channel 2
4 Keypads 8 Hirose Connector for Channel 2
Pin Assignment
1 Heater Output +
2 Heater Output -
3 Sensor + (4-Wire PT100/PT1000 Only)
4 Sensor +
5 Sensor -
6 Sensor - (4-Wire PT100/PT1000 Only)

Back Panel


BNC Female

BNC Port Diagram

When set to input: +5 V input will enable the channel, and 0 V input will disable it.
When set to output: outputs +5 V when the channel is enabled and outputs 0 V when the channel is disabled.


BNC Female

BNC Port Diagram

0 to +5 V, 20 kΩ Impedance
Proportional to the actual temperature of the channel; 0 V corresponds to the minimum temperature setting and +5 V corresponds to the maximum temperature setting

Callout Connection Callout Connection
1 Analog Output of Channel 1 (ANLG1) 5 Analog Output of Channel 2 (ANLG2)
2 AC Input Connector 6 Cooling Fan
3 Trigger of Channel 1 (TRIG1) 7 Trigger of Channel 2 (TRIG2)
4 USB Type B Connector 8 Mono Jack for External Sensor

External Sensor Connector

2.5 mm Mono Jack

Mono Jack Connector

Accepts 2.5 mm stereo earphone jack. The TC300 controller can support thermistors with resistance up to 999 kΩ.

Computer Connection

USB Type B

USB Port Diagram

USB Standard B Cable Included

The TC300 controller is compatible with thermistors such as the TH10K thermistor as well as PT100 (such as Item # TH100PT) and PT1000 types of Platinum Resistance Temperature Detectors. The following specifications are used for determining the set-point and read back values for these types of thermistors and sensors.


When the sensor type is set to NTC1, the TC300 controller measures the resistance value of the thermistors wired to the Hirose connectors on front panel and calculates the temperature based on the “Beta” formulas defined below.

R = R0 * eβ[(1/T) - (1/T0)]

R is the resistance in Ω at temperature T
R0 is the nominal resistance in Ω at temperature T0
β is the constant associated with the particular thermistor
T is the temperature in K
T0 is the nominal temperature temperature (usually 298.15 K = 25 °C)

The TC300 controller allows users to set the values of β, R0, and T0. For different thermistors, the actual value of these parameters can vary and can usually be found on their datasheets.

When the sensor type is set to NTC2, the TC300 controller also supports the Steinhart-Hart method to approximate the relation between temperature and thermistor resistance, defined by the following formula:

1/T = A + B * ln(R) + C * (ln(R))3

T is the temperature in K
R is the resistance in Ω at temperature T
A, B, and C are Steinhart-Hart parameters

The TC300 controller allows user input of the A, B, and C parameters. For thermistors that support the Steinhart-Hart method, the actual value of A, B, and C can usually be found on their datasheets.

PT100 and PT1000 Sensors

When the sensor type is set to PT100 or PT1000, the TC300 controller measures the resistance and calculates the temperature of the PT100 or PT1000 platinum resistance temperature detector using the following formula:

R = R0 (1 + A * T + B * T2)
(In accordance with IEC 751, 2:1995-07 [DIN EN 60751; 1996-07])

A = 3.9083 x 10-3 °C-1
B = -5.775 x 10-7 °C-2
R is the resistance in Ω at temperature T
T is the temperature in °C
R0 = 100 Ω for the PT100
R0 = 1000 Ω for the PT1000

The TC300 controller supports 2- and 4-wire connections for both PT100 and PT1000 sensors. When the sensor type is set to PT100 or PT1000, select the “Parameter” option to toggle between the 2-wire and 4-wire connection setting.

TC300 Software
Click to Enlarge

Software GUI

Software for the TC300 Heater Temperature Controller


Version 1.0.0

Software package to operate the TC300 including a GUI, drivers, and LabVIEW™/C++ SDK for third-party development.

Software Download

PID Basics

The PID circuit is often utilized as a control loop feedback controller and is very commonly used for many forms of servo circuits. The letters making up the acronym PID correspond to Proportional (P), Integral (I), and Derivative (D), which represents the three control settings of a PID circuit. The purpose of any servo circuit is to hold the system at a predetermined value (set point) for long periods of time. The PID circuit actively controls the system so as to hold it at the set point by generating an error signal that is essentially the difference between the set point and the current value. The three controls relate to the time-dependent error signal; at its simplest, this can be thought of as follows: Proportional is dependent upon the present error, Integral is dependent upon the accumulation of past error, and Derivative is the prediction of future error. The results of each of the controls are then fed into a weighted sum, which then adjusts the output of the circuit, u(t). This output is fed into a control device, its value is fed back into the circuit, and the process is allowed to actively stabilize the circuit’s output to reach and hold at the set point value. The block diagram below illustrates very simply the action of a PID circuit. One or more of the controls can be utilized in any servo circuit depending on system demand and requirement (i.e., P, I, PI, PD, or PID).

PID Diagram

Through proper setting of the controls in a PID circuit, relatively quick response with minimal overshoot (passing the set point value) and ringing (oscillation about the set point value) can be achieved. Let’s take as an example a temperature servo, such as that for temperature stabilization of a laser diode. The PID circuit will ultimately servo the current to a Thermo Electric Cooler (TEC) (often times through control of the gate voltage on an FET). Under this example, the current is referred to as the Manipulated Variable (MV). A thermistor is used to monitor the temperature of the laser diode, and the voltage over the thermistor is used as the Process Variable (PV). The Set Point (SP) voltage is set to correspond to the desired temperature. The error signal, e(t), is then just the difference between the SP and PV. A PID controller will generate the error signal and then change the MV to reach the desired result. If, for instance, e(t) states that the laser diode is too hot, the circuit will allow more current to flow through the TEC (proportional control). Since proportional control is proportional to e(t), it may not cool the laser diode quickly enough. In that event, the circuit will further increase the amount of current through the TEC (integral control) by looking at the previous errors and adjusting the output in order to reach the desired value. As the SP is reached [e(t) approaches zero], the circuit will decrease the current through the TEC in anticipation of reaching the SP (derivative control).

Please note that a PID circuit will not guarantee optimal control. Improper setting of the PID controls can cause the circuit to oscillate significantly and lead to instability in control. It is up to the user to properly adjust the PID gains to ensure proper performance.

PID Theory

The output of the PID control circuit, u(t), is given as

Equation 1

Kp= Proportional Gain
Ki = Integral Gain
Kd = Derivative Gain
e(t) = SP - PV(t)

From here we can define the control units through their mathematical definition and discuss each in a little more detail. Proportional control is proportional to the error signal; as such, it is a direct response to the error signal generated by the circuit:

Equation 2

Larger proportional gain results is larger changes in response to the error, and thus affects the speed at which the controller can respond to changes in the system. While a high proportional gain can cause a circuit to respond swiftly, too high a value can cause oscillations about the SP value. Too low a value and the circuit cannot efficiently respond to changes in the system.

Integral control goes a step further than proportional gain, as it is proportional to not just the magnitude of the error signal but also the duration of the error.

Equation 3

Integral control is highly effective at increasing the response time of a circuit along with eliminating the steady-state error associated with purely proportional control. In essence integral control sums over the previous error, which was not corrected, and then multiplies that error by Ki to produce the integral response. Thus, for even small sustained error, a large aggregated integral response can be realized. However, due to the fast response of integral control, high gain values can cause significant overshoot of the SP value and lead to oscillation and instability. Too low and the circuit will be significantly slower in responding to changes in the system.

Derivative control attempts to reduce the overshoot and ringing potential from proportional and integral control. It determines how quickly the circuit is changing over time (by looking at the derivative of the error signal) and multiplies it by Kd to produce the derivative response.

Equation 4

Unlike proportional and integral control, derivative control will slow the response of the circuit. In doing so, it is able to partially compensate for the overshoot as well as damp out any oscillations caused by integral and proportional control. High gain values cause the circuit to respond very slowly and can leave one susceptible to noise and high frequency oscillation (as the circuit becomes too slow to respond quickly). Too low and the circuit is prone to overshooting the SP value. However, in some cases overshooting the SP value by any significant amount must be avoided and thus a higher derivative gain (along with lower proportional gain) can be used. The chart below explains the effects of increasing the gain of any one of the parameters independently.

Parameter IncreasedRise TimeOvershootSettling TimeSteady-State ErrorStability
KpDecreaseIncreaseSmall ChangeDecreaseDegrade
KiDecreaseIncreaseIncreaseDecrease SignificantlyDegrade
KdMinor DecreaseMinor DecreaseMinor DecreaseNo EffectImprove (for small Kd)


In general the gains of P, I, and D will need to be adjusted by the user in order to best servo the system. While there is not a static set of rules for what the values should be for any specific system, following the general procedures should help in tuning a circuit to match one’s system and environment. In general a PID circuit will typically overshoot the SP value slightly and then quickly damp out to reach the SP value.

Manual tuning of the gain settings is the simplest method for setting the PID controls. However, this procedure is done actively (the PID controller turned on and properly attached to the system) and requires some amount of experience to fully integrate. To tune your PID controller manually, first the integral and derivative gains are set to zero. Increase the proportional gain until you observe oscillation in the output. Your proportional gain should then be set to roughly half this value. After the proportional gain is set, increase the integral gain until any offset is corrected for on a time scale appropriate for your system. If you increase this gain too much, you will observe significant overshoot of the SP value and instability in the circuit. Once the integral gain is set, the derivative gain can then be increased. Derivative gain will reduce overshoot and damp the system quickly to the SP value. If you increase the derivative gain too much, you will see large overshoot (due to the circuit being too slow to respond). By playing with the gain settings, you can maximize the performance of your PID circuit, resulting in a circuit that quickly responds to changes in the system and effectively damps out oscillation about the SP value.

Control TypeKpKiKd
P0.50 Ku--
PI0.45 Ku1.2 Kp/Pu-
PID0.60 Ku2 Kp/PuKpPu/8

While manual tuning can be very effective at setting a PID circuit for your specific system, it does require some amount of experience and understanding of PID circuits and response. The Ziegler-Nichols method for PID tuning offers a bit more structured guide to setting PID values. Again, you’ll want to set the integral and derivative gain to zero. Increase the proportional gain until the circuit starts to oscillate. We will call this gain level Ku. The oscillation will have a period of Pu. Gains are for various control circuits are then given below in the chart.

Posted Comments:
user  (posted 2022-03-09 15:32:32.593)
Is it possible to use the TC300 with TEC elements such as the TECH3S?
cdolbashian  (posted 2022-03-11 01:39:19.0)
Thank you for contacting Thorlabs. TC300 can drive TECs like TECH3S. At current stage, TC300 can only drive the TEC as a heater and does not support the cooling function of a TEC. TED4015 would be a better choice if you require both active heating and cooling applications.
Hyun Gyung Lee  (posted 2022-03-02 19:56:17.17)
I'm writing this feedback to get tech support. I bought TC300 to control the temperature of LCC1111T-B. The thing is that we'd like to stabilize the temperature at 70-celsius degrees of LCC1111T-B to make a short response time, BUT it is not working. The error messages, NO LOAD and OVER VOLT, keep popping up. We can only stabilize the temperature at low degrees such as 20-celsius degrees. Please reply as soon as possible.
cdolbashian  (posted 2022-03-04 04:26:01.0)
Thank you for contacting Thorlabs. The resistance value of the heater in LCC1111T-B is 38.4Ω. The current applied to the heater should be limited below 600mA to prevent the error of OVER VOLT to be triggered. We will get in touch with you directly to trouble shoot. For future tech support inquiries, please feel free to use our tech support email: techsupport@thorlabs.com.
Vladimir Schkolnik  (posted 2022-01-26 15:43:04.41)
Hi, I am very interested in the TC300. I am using two old heaters to regulate the temperature read out by K-Type thermocouples. The required power is only a fraction of the TC300 capabilities, but one part needs to be controlled at a temperature up to 480°C. Is it possible to increase the software limit and display of one channel from 400°C up to this temperature (no increase in current or voltage i needed). Look forward to hear from you Best Vladimir Schkolnik -------------------------------------- Dr. Vladimir Schkolnik Project Leader Strontium Activities Joint Lab Integrated Quantum Sensors Humboldt-Universität zu Berlin Institute of Physics Newtonstraße 15 12489 Berlin Tel : +49 (0)30 2093 4941 / 7625 Fax : +49 (0)30 2093 4718 vladimir.schkolnik@physik.hu-berlin.de --------------------------------------
cdolbashian  (posted 2022-02-07 09:19:25.0)
Thank you for contacting us Vladimir. In heater mode, the TC300 is able to read temperatures above 400°C from the thermocouple, but cannot set the target temperature above 400°C, limited by the current firmware. In current mode, the temperature can reach 480°C, but the TC300 does not monitor the temperature on the heat load. The actual temperature could rise to a very high level that could cause harm to the heater and become a hazard to personnel.

Heater Temperature Controller

  • Heating from -200 °C to 400 °C
  • Run Standalone or via Software
  • Programmable PID

The TC300 Heater Temperature Controller is a benchtop controller intended for use with resistive heating elements rated up to 48 W. User-programmable maximum temperature and current/voltage limits protect the connected heating element from being overheated or over driven. Other safety features include an Open Sensor Alarm that will shut down the driver if the temperature sensing element is missing or becomes disconnected.

Capable of standalone operation from a simple keypad interface, this controller can be interfaced with a PC using a standard USB Type B connector using our TC300 Application Program, LabVIEW drivers, LabWindows drivers, or using a simple command-line interface from any terminal window.

Based on your currency / country selection, your order will ship from Newton, New Jersey  
+1 Qty Docs Part Number - Universal Price Available
TC300 Support Documentation
TC300Heater Temperature Controller
Lead Time

6-Pin Hirose Cable

Pin Color Pin Color Pin Color
1 Orange 2 Blue 3 Green
4 Red 5 White 6 Yellow
Connectors 6-Pin, Male Hirose
Length 10 Feet (3 m)
  • 6-Pin, Male-to-Male Hirose Connector Cable
  • Compatible with Several of Our Products
    • TC300 Heater Temperature Controller*
    • SH05R(/M) Beam Shutter, Ø1/2" Aperture
    • SH1(/M) Beam Shutter, Ø1" Aperture
    • SC10 Shutter Controller
  • Cut and Expose Wire for Custom Applications

The TC200CAB10 is a 6-pin, male-to-male Hirose connector cable. This 10-foot-long cable is compatible with our TC300 heater temperature controller*, SH05R(/M) and SH1(/M) beam shutters, and SC10 shutter controller. This is not a straight-through cable; the wires in this cable cross, as seen in the drawing to the right.

This Hirose connector cable can also be cut to length, leaving one connectorized end and one bare end. The colored wire diagram and table to the right shows the relationship between the six colored wires and the pins in the connector so the cut cable can be incorporated into a variety of custom applications.

* Note that the maximum output current of the TC300 Heater Temperature Controller is 2 A per channel, which exceeds the maximum current of this cable. When using this controller and cable together, it is important to set a current limit of 1.2 A, following the procedure in Chapter 6.3 of the TC300 manual.

Based on your currency / country selection, your order will ship from Newton, New Jersey  
+1 Qty Docs Part Number - Universal Price Available
TC200CAB10 Support Documentation
TC200CAB106-Pin, Male-Male Hirose Connector Cable, 10' Long