Introduction: 1.8 TFT LCD Advanced Weather Station

A bit smaller, but bigger.

Step 1: The Project Continued

Well i had a 1.8 inch tft lcd with ST7735 driver which i have not used for a time now. Because of the 2.4 lcd i could not use the I2C interface to connect more sensors to the Arduino Uno i decied to rewrite the sketch to fit my needs. I added a BMP280 barometric pressure sensor and a DS3231 RTC to display time and barometric pressure.

Step 2: Parts Needed

- Arduino Uno, Nano, Pro mini, Mega2560 etc.

- BMP280 barometric pressure sensor

- DS3231 RTC

- 1.8 inch tft lcd ST7735

- DS18b20

- DHT11 or DHT22

- Libraries and sketch

Step 3: Software

I made 2 sketches. One is with RTC and the second is without the RTC.

2019.03.04. Another sketch to use the BME280 sensor.

Step 4: Connections


- CS Digital 9

- RST Digital 7

- DC Digital 8

- SCLK Digital 13

- MOSI Digital 11

- VCC 3.3 volt

- GND ground

- LED 5 volts


VCC: I strongly advise only 3.3 volt

GND: ground

SCL: Analog 5

SDA: Analog 4


Vcc: 3.3 or 5 volts

GND: ground



DS18B20: Digital 6

DHT11/22: Digital 10

Analog LDR: Any analog pin that is free

Step 5: Finally

You are done and assembled a very cheap and accurate weather station.

Basically it is the same as the previous one, but it uses another lcd. For displaying the time i thought a simple string will be more than enough.

tft.print(rtc.getTimeStr(FORMAT_SHORT)); // FORMAT_LONG for displaying seconds ; But it is a bit much for the Nano, displaying seconds is delayed

You still can add more sensors if you want, because we have a few digital and analog pins still free not to mention the I2C bus. The only limit is the lcd resolution :)

I hope you will have a good use for it.

Thank you for reading my instructable.