Arduino Temperature Sensing Circuit Using Thermocouple and LM35 for Soldering Station

Soldering Temperature

Solder material are commonly tin-lead alloys with various(tin/lead) composition: 40/60  (230 ºC), 50/50 (214 ºC), 60/40 (190 ºC), 63/37  (183 ºC), 95/5 (224 ºC). The most common used alloys for electronics works are the 60/40 and the 63/37 [reference 1].  Lead-free solder has about 20-40 ºC higher melting point, so if the soldering temperature (the iron tip temperature) is set at 340 ºC for the tin-lead soldering, the temperature should be increased to 380 ºC for the lead-free solder [reference 2]. By covering temperature adjustment between 200-400 ºC, a temperature-controlled soldering station should be sufficient for most electronic works.

K-Type Thermocouple Transfer Function

Figure 1. K-Type Thermocouple Transfer Function

Temperature Sensor Selection

A K-type thermocouple is selected for this project since it is cheap, provides sufficient temperature range, and has good precision and linearity. A thermocouple is a length of two wires made from two dissimilar conductors (usually alloys) that are soldered or welded together at one end [reference 3]. Excerpted from that reference:

However, all thermocouple types operate based on the same fundamental theory: the thermoelectric or Seebeck effect. Whenever a conductor experiences a temperature gradient from one end of the conductor to the other, a voltage potential develops. This voltage potential arises because free electrons within the conductor diffuse at different rates, depending on temperature. Electrons with higher energy on the hot side of the conductor diffuse more rapidly than the lower energy electrons on the cold side. The net effect is that a buildup of charge occurs at one end of the conductor and creates a voltage potential from the hot and cold ends.

Depending on the combination of the two dissimilar conductors, many types of thermocouple are available on the market, and the chosen one, the K-type has nickel-chromium alloy and nickel-aluminum alloy as the two dissimilar-conductor elements.  The figure 1 shows the transfer function of the thermocouple, and it shows that the transfer has good linearity in the range of 0-350 ºC [reference 4].  The measurement error between 350-400 ºC can be easily corrected by using polynomial conversion or table lookup and interpolation in the software, see reference 4 for the detail.

Cold-Junction Temperature Correction

Since the output of the thermocouple is actually a measurement of the temperature difference between the hot (the soldering tip temperature) and the cold end (the thermocouple and the circuit board terminal connection), the actual hot end temperature should be corrected by adding the cold junction temperature to the thermocouple reading. Here the cold-junction temperature is assumed to be the ambient temperature, which can be easily measured by an LM35 temperature sensor chip.

Figure 2. Arduino Temperature Sensor with Thermocouple and LM35 Circuit Schematic Diagram

Figure 2. Arduino Temperature Sensor with Thermocouple and LM35 Circuit Schematic Diagram

The Signal Conditioning Circuit

The signal conditioning circuit for thermocouple and LM35 temperature sensor is shown in the figure 2. The transfer function of the thermocouple is averaged at 41 μV per ºC, and this voltage has to be amplified to produce a proper reading by the ADC conversion. The resolution of the Arduino Nano’s ADC is 10 bit, which converts 0-5V DC into 0-1024 integer values. Assuming a 25 ºC ambient temperature, a 400 ºC at the hot end would produce a 375 ºC temperature difference, producing 41 μV/ºC x 375 ºC = 15.75 mV thermocouple output. This voltage should produce a voltage level something lower than 5V but higher than 4V to ensure good full reading while avoiding nonlinear characteristic near saturated transistor condition, as well as accommodating lower ambient temperature variation which produce more voltage at the  same hot-end temperature.

The circuitry around TR1 and TR2 is basically a DC amplifier, which is a modified version of feed-back transistor amplifier [reference 5] to provide DC coupling. Because the DC amplifier need about 0.6 V input to start producing output, a biasing voltage source is built around TR3 transistor. The resistor R8, TR2 transistor, and C1 capacitor implements this biasing circuit, providing a positive drift to make the thermocouple output start driving the amplifier as soon as the produced voltage rise above zero.  The gain of the DC amplifier is determined by R10/R11, independent of the TR1 and TR2 gains (which is sensitive to ambient temperature). With the selected resistor values (270k and 1k), a gain of 270x will amplify the 15.75 mV signal into 4.25V. Please note that above 4.5 V, the output of the DC amplifier might be suffering a nonlinear compression since TR2 collector-emitter  on-resistance can’t drop any lower.

The output of LM35 ambient temperature sensor is directly fed into the Analog input, since its range can be read correctly at an acceptable resolution. The smallest voltage step of the ADC is 5V/1024, which is about 5 mV per step. The ouput of LM35 has transfer function of 10 mV/ºC, which means that direct reading of this sensor will produce approximately 0.5 ºC smallest step reading, and it’s enough for compensating the thermocouple cold-junction temperature reading.



  1. Better Soldering, Cooper Tools – Weller
  2. Lead-Free Soldering, Hakko Products
  3. Precision Thermocouple Measurement with the ADS1118, Application Report, SBAA189 – September 2011, Texas instruments
  4. Modern Thermocouples and a High-Resolution Delta-Sigma ADC Enable High-Precision Temperature Measurement
  5. Feedback Transistor Amplifier


Back to main topic:

Digital Soldering Station: An Integrated Hardware and Software Designing Case Study