RPI and 5 Inch LCD Digital Album and Weather Station
Introduction: RPI and 5 Inch LCD Digital Album and Weather Station
This is 5 inches LCD digital photo album using Raspberry Pi (RPI) Wireless Zero and a weather station device displaying humidity, temperature, and air pressure information.
Maybe this is the most upgraded and functionally versatile device among the weather station circuits I made before.
It can display high-quality photograph images on a wide LCD screen (5 inches).
Also, it can show important weather information, and date/time on the LCD screen while enjoying the high-quality photo images.
Logging major weather data is possible along with timestamps for knowing long-term yearly climate change trends.
Let's see more detail about the RPI digital album and weather station circuit.
Step 1: Weather Station Circuit Upgrading History
About five different types of weather station circuits were made until now using 16x2 Dot-matrix LCD, 1.8 inch TFT, and 3.5 and 5 inches LCD.
As the display module size become bigger, the digital photo album function is integrated together for showing more versatile and enjoyable images.
You can see the previous weather circuits in the photo images above.
The first circuit is made with Arduino pro-mini and 1.8 inch TFT display.
As the DS3231 RTC and SD card break-out modules are used, it showed a one-year weather change trend across four seasons in Korea.
The disadvantage of this device is like below.
- As the internal flash memory of Arduino pro-mini is just 32KB, storing programs of the weather station and image album was quite difficult
- The 1.8-inch size display was so small for showing high-quality photo images on the LCD
The second circuit is made by using Arduino Mega2560 and 3.5 inch LCD module.
It operating for about six months and usually, I checked the time in the morning before leaving home to catch the bus going office.
But this circuit also has the following disadvantages.
- As the Chinese 3.5 inch, LCD manufacturer does not provide a compatible device driver, interfacing the display with Mega2560 was very difficult
- Also, the LCD manufacturer only supports a primitive image handling library, BMP file image was distorted when the resolution is not exactly 480x640 dpi
But the new device using RPI Zero and a 5-inch LCD module can remedy all previous problems due to the following reasons.
- As 32GB SD card is used for installing RPI OS, storing python program and image data, storage capacity is quite enough to support image photo album and storing many weather log files
- Because RPI and 5 inch LCD are connected with HDMI interface, I can utilize standard python graphic library and Tkinter X-windows application program
- RPI using time clock synchronization via NTP (Network Time Protocol), no additional RTC module (DS3231) is not necessary (But the RPI should be connected with wireless AP for receiving NTP time synchronization data)
Usually, the RPI development environment is more powerful than Arduino IDE, as RPI OS (Linux) can support various application development tools such as python, X-window, GPIO/I2C device interface related packages, and libraries.
Step 2: Schematics
Although RPI is used, overall schematics is almost similar to the Arduino weather station circuit.
As mentioned above, the DS3231 RTC module is not necessary as RPI uses NTP for time data synchronization.
But you need a wireless connection to your home AP (Access Point) which connects to the internet and receives clock synchronization data from a level 0 clock source within the internet.
Because I'm interested in humidity, temperature, and air pressure of weather data, the DHT22 and BMP280 sensors are connected to RPI.
As both sensors are operating at 3.3 volts, two RPI Zero 3.3V power supply pins are used for connecting these sensors.
The 5-inch LCD module requires a 5V power supply for operation and an HDMI interface is needed for connection with RPI.
The tact switch de-bouncing circuit requires some explanation.
But you don't need such a complex circuit for your own project.
The followings are the reasons why I'm using such a complex circuit for simple tact switch input capturing.
- I want full proof of no-chattering making push-button circuit using 74HC14 (Schmitt−Trigger Inverter) IC
- As the RPI GPIO pin operating at a 3.3V level, I want completely isolate the de-bouncing circuit (Operating at 5V) from RPI by using an optocoupler (PC817)
The de-bouncing circuit only produces a single shoot of a pulse by the operational characteristic of the Schmitt−Trigger Inverter gate. 152