Thermo 3 click
Thermo 3 click

Description of product

Thermo 3 click carries TMP102, a digital temperature sensor IC with a tiny footprint of only 1.6mm x 1.6mm. The click is designed to run on a 3.3V power supply only. It communicates with the target MCU through mikroBUS™ I2C pins (SCL, SDA), and an additional Alert pint (INT on the default mikroBUS™ configuration).

TMP102 digital temperature sensor

Without requiring calibration, TMP102 is accurate within 0.5°C. Measurement range is between -25°C to 85°C. An integrated 12-bit ADC allows for measurement resolutions down to 0.0625°C.

Alert pin

You can set up an overtemperature alert using the ALERT pin (which sends an interrupt to the target board MCU). The sensor creates a highly linear output and therefore simple to use.

The ADD SEL jumper

Thermo 3 click™ has an ADD onboard jumper (zero ohm resistor) for specifying the I2C address.


Because of its accuracy, Thermo 3 click is ideal for thermal-management and thermal protection applications, especially for extended measurements (in thermostats, office machines, industrial instrumentation applications).

Key features

  • TMP102 digital temperature sensor
    • Temperature range: -25°C to 85°C
    • Resolution: 12 Bits
    • Low Quiescent Current:
      • 10-μA Active (max)
      • 1-μA Shutdown (max)
  • Interface: I2C
  • 3.3V power supply
Type Temperature
Applications Thermal-management and thermal protection applications, especially for extended measurements (in thermostats, office machines, industrial instrumentation applications)
On-board modules TMP102, a digital temperature sensor
Key Features -25°C to 85°C temperature range. Accurate within 0.5°C. Measurement resolution down to0.0625°C
Key Benefits Small footpring: 1.6mm x 1.6mm
Interface GPIO,I2C
Input Voltage 3.3V
Compatibility mikroBUS
Click board size S (28.6 x 25.4 mm)


Pinout diagram

This table shows how the pinout on Thermo 3 click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).

Notes Pin Mikrobus logo.png
Pin Notes
Not connected NC 1 AN PWM 16 NC Not connected
Not connected NC 2 RST INT 15 ALERT      Overtemperature alert   
Not connected NC 3 CS TX 14 NC Not connected
Not connected         NC 4 SCK RX 13 NC Not connected
Not connected NC 5 MISO SCL 12 SCL Serial Clock
Not connected NC 6 MOSI SDA 11 SDA Serial Data
Power supply +3.3V 7 3.3V 5V 10 NC Not connected
Ground GND 8 GND GND 9 GND Ground


Code examples for Thermo 3 click, written for MikroElektronika hardware and compilers are available on Libstock.

This function reads the temperature from the sensor.

01 float Get_Temperature() {
02   char tmp_data[2];
03   int TemperatureSum;
04   float Temperature;
06   tmp_data[0] = 0x00;                                        // Address of Temperature register
07   I2C1_Start();                                              // Issue I2C start signal
08   I2C1_Write(TMP102_I2C_ADDR,tmp_data,1,END_MODE_RESTART);   // Send byte (tmp_data[0])
09   I2C1_Read(TMP102_I2C_ADDR,tmp_data,2,END_MODE_STOP);       // Read temperature data and store it in tmp_data
11   TemperatureSum = ((tmp_data[0] << 8) | tmp_data[1]) >> 4;  // Justify temperature values
13   if(TemperatureSum & (1 << 11))                             // Test negative bit
14     TemperatureSum |= 0xF800;                                // Set bits 11 to 15 to logic 1 to get this reading into real two complement
16   Temperature = (float)TemperatureSum * 0.0625;              // Multiply temperature value with 0.0625 (value per bit)
18   return Temperature;                                        // Return temperature data
19 }