Note

Hello, welcome to the SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community on Facebook! Dive deeper into Raspberry Pi, Arduino, and ESP32 with fellow enthusiasts.

Why Join?

• Expert Support: Solve post-sale issues and technical challenges with help from our community and team.

• Learn & Share: Exchange tips and tutorials to enhance your skills.

• Exclusive Previews: Get early access to new product announcements and sneak peeks.

• Special Discounts: Enjoy exclusive discounts on our newest products.

• Festive Promotions and Giveaways: Take part in giveaways and holiday promotions.

👉 Ready to explore and create with us? Click [here] and join today!

# 7.2 Room Temperature Meter¶

Using a thermistor and an I2C LCD1602, we can create a room temperature meter.

This project is very simple, it is based on 2.13 Thermometer with I2C LCD1602 to display the temperature.

Required Components

In this project, we need the following components.

Name

ITEMS IN THIS KIT

Kepler Kit

450+

Kepler Kit

SN

COMPONENT

QUANTITY

1

Raspberry Pi Pico W

1

2

Micro USB Cable

1

3

1

4

Jumper Wires

Several

5

Resistor

1(10KΩ)

6

Thermistor

1

7

I2C LCD1602

1

Schematic

Wiring

Code

Note

• Open the `7.2_room_temperature_meter.py` file under the path of `kepler-kit-main/micropython` or copy this code into Thonny, then click “Run Current Script” or simply press F5 to run it.

• Don’t forget to click on the “MicroPython (Raspberry Pi Pico)” interpreter in the bottom right corner.

• For detailed tutorials, please refer to Open and Run Code Directly.

```from lcd1602 import LCD
import machine
import utime
import math

lcd = LCD()

while True:
Vr = 3.3 * float(temperature_value) / 65535
Rt = 10000 * Vr / (3.3 - Vr)
temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))
Cel = temp - 273.15
#Fah = Cel * 1.8 + 32
#print ('Celsius: %.2f C  Fahrenheit: %.2f F' % (Cel, Fah))
#utime.sleep_ms(200)

string = " Temperature is \n    " + str('{:.2f}'.format(Cel))+ " C"
lcd.message(string)
utime.sleep(1)
lcd.clear()
```

The LCD will display the temperature value in the current environment after the program runs.

Note

If the code and wiring are fine, but the LCD still does not display content, you can turn the potentiometer on the back to increase the contrast.