Skip to main content

Grove - High Temperature Sensor

Thermocouples are very sensitive devices. It requires a good amplifier with cold-junction compensation. The Grove - High Temperatire Sensor uses a K-Type themocouple and a thermocouple amplifier that measures ambient temperature using thermistor for cold-junction compensation. The detectable range of this Sensor is -50~600°C , and the accuracy is ±(2.0% + 2°C).

Upgradable to Industrial Sensors

With the SenseCAP S2110 controller and S2100 data logger, you can easily turn the Grove into a LoRaWAN® sensor. Seeed not only helps you with prototyping but also offers you the possibility to expand your project with the SenseCAP series of robust industrial sensors.

SenseCAP S210x series industrial sensors provide an out-of-box experience for environmental sensing. Please refer to the S2101 Wireless Temperature and Humidity Sensor with higher performance and robustness for air quality monitoring. The series includes sensors for soil moisture, air temperature and humidity, light intensity, CO2, EC, and an 8-in-1 weather station. Try the latest SenseCAP S210x for your next successful industrial project.

SenseCAP Industrial Sensor
S2101 Air Temp & Humidity


Product VersionChangesReleased Date
Grove - High Temperature Sensor V1.0InitialFeb 25, 2014


Operating Voltage3.3-5V
Max power rating at 25℃300mW
Operating temperature range-40 ~ +125 ℃
Temperature measurement range-50 ~ +600 ℃
Amplifier output voltage range0 ~ 3.3 V
Thermocouple materialGlass Fiber
Cold junction compensationEnvironment temperature measurement
Thermocouple temperature measurement accuracy+/-2.0% (+ 2 ℃)
Thermocouple temperature sensor cable length100cm
Dimension20mm x 40mm
More details about Grove modules please refer to [Grove System](

Platforms Supported

ArduinoRaspberry Pi

The platforms mentioned above as supported is/are an indication of the module's software or theoritical compatibility. We only provide software library or code examples for Arduino platform in most cases. It is not possible to provide software library / demo code for all possible MCU platforms. Hence, users have to write their own software library.

Getting Started

Play with Arduino


  • Step 1. We need to prepare the below stuffs:
Seeeduino V4.2Base ShieldGrove-High Temperature Sensor
Get ONE NowGet ONE NowGet ONE Now
  • Step 2. Connect the Grove-High Temperature Sensor to A0 on Base Shield.
  • Step 3. Plug the base Shield into Seeeduino-V4.2.
  • Step 4. Connect Seeeduino-V4.2 to PC by using a USB cable.
If we don't have a Base Shield, don't worry, the sensor can be connected to your Arduino directly. Please follow below tables to connect with Arduino.
SeeeduinoGrove-High Temperature Sensor


#include "High_Temp.h"

HighTemp ht(A1, A0);

void setup()
Serial.println("grove - hight temperature sensor test demo");

void loop()
  • Step 4. Open your Serial Monitor and set baud rate as 115200, We will see the temperature in Celsius here.

Play With Raspberry Pi


  • Step 1. Prepare the below stuffs:
Raspberry piGrovePi_PlusGrove - Ultrasonic Ranger
Get ONE NowGet ONE NowGet ONE Now
  • Step 2. Plug the GrovePi_Plus into Raspberry.
  • Step 3. Connect Grove-Ultrasonic ranger to A0 port of GrovePi_Plus.
  • Step 4. Connect the Raspberry to PC through USB cable.



In this wiki we use the path ~/GrovePi/ instead of /home/pi/Desktop/GrovePi, you need to make sure Step 2 and Step 3 use the same path.


We firmly suggest you to update the firmware, or for some sensors you may get errors.


If you are using Raspberry Pi with Raspberrypi OS >= Bullseye, you have to use this command line only with Python3.

  • Step 3. Git clone the Github repository.
cd ~
git clone

  • Step 4. Excute below commands to use the ultrasonic_ranger to meansure the distance.
cd ~/GrovePi/Software/Python/grove_hightemperature_sensor

Here is the code.

import grove_hightemperature_sensor as grovepi # our library
from time import sleep # and for the sleep function
import sys # we need this for the exception throwing stuff

# Don't forget to run it with Python 3 !!
# Don't forget to run it with Python 3 !!
# Don't forget to run it with Python 3 !!

def Main():
room_temperature_pin = 15 # this is equal to A1
probe_temperature_pin = 14 # this is equal to A0
# so you have to connect the sensor to A0 port

# instatiate a HighTemperatureSensor object
sensor = grovepi.HighTemperatureSensor(room_temperature_pin, probe_temperature_pin)

# and do this indefinitely
while True:
# read the room temperature
room_temperature = sensor.getRoomTemperature()
# and also what's important to us: the temperature at the tip of the K-Type sensor
probe_temperature = sensor.getProbeTemperature()

# print it in a fashionable way
print('[room temperature: {:5.2f}°C][probe temperature: {:5.2f}°C]'.format(room_temperature, probe_temperature))
# and wait for 250 ms before taking another measurement - so we don't overflow the terminal

if __name__ == "__main__":

# in case CTRL-C / CTRL-D keys are pressed (or anything else that might interrupt)
except KeyboardInterrupt:
print('[Keyboard interrupted]')

# in case there's an IO error aka I2C
except IOError:
print('[IO Error]')

# in case we have a math error (like division by 0 - can happen depending on the read values)
# or if the values exceed a certain threshold
# experiment and you'll see
except ValueError as e:
  • Step 4. We will see the temperature display on terminal as below.
[email protected]:~/GrovePi/Software/Python/grove_hightemperature_sensor $ python3
[room temperature: 20.47°C][probe temperature: 32.19°C]
[room temperature: 20.47°C][probe temperature: 32.19°C]
[room temperature: 20.47°C][probe temperature: 32.19°C]
[room temperature: 20.47°C][probe temperature: 32.19°C]
[room temperature: 20.60°C][probe temperature: 32.19°C]
[room temperature: 20.60°C][probe temperature: 32.19°C]
[room temperature: 20.60°C][probe temperature: 32.19°C]


Q1: How to do Grove-High temperature sensor calibration?

A1: Please download the libray and then follow below instructions.

  • Step 1. run the getTemperature-calibration-measurement.ino to get below info.
10:02:17.792 -> "You have Scucessfully record the sample data,please copy the following line of code to your clipboard and replace the first line of function loop()
10:02:17.935 -> double TMP[]={10.29,10.29,10.29,10.29,10.29,10.29,10.29,10.29,10.29,10.29};
10:02:18.038 -> double Real_temperature[]={10.00,20.00,30.00,40.00,50.00,60.00,70.00,80.00,90.00,100.00};
  • Step 2. paste to getTemperature-calibration_demo.ino and run the calibration.

  • Step 3. run getTemperature.ino to read the temperature.


Tech Support

Please submit any technical issue into our forum.

Loading Comments...