DWIN Displays - Simple weather station project

In this video, I show you how to create a simple display which can be used as a weather station. I used three sensors and an Arduino Nano to capture different parameters such as air temperature, humidity, pressure, CO2 concentration and dust density. Once all data is fetched from the sensors the Arduino converts them into commands and sends them to the DWIN display. The project is simple, but spectacular.

Setting up the display

 

Setting up the display is super simple in this project because all the fields I use on the display to show the different values use similar display controls.

Before moving forward, I strongly recommend you check my article on how to set up the display properly. It is important to know those steps so you can actually upload the files to your display.

Once you finished setting up your display, you can add the data fields to it by adding Data variable display items on your display. Draw the rectangles over the areas where you want to show the corresponding variables. Then assign a VP address to each variable. I kept 100 bytes distance between each VP address, so the first variable starts at 0x1000, the second is at 0x1100… and so on. We just have to keep in mind which address is which variable so we send the correct values from the Arduino to the correct field on the DWIN display.

In the display parameters, change the variable type to float (4 bytes) so the display will know the type of the variable. Then define the number of integer and decimal digits. In the picture on the right side, I defined 4-4 for both digits, but for this weather station project, it is probably unnecessary.

If you want, you can define an initial value, but it is not necessary because it gets written over very quickly after the Arduino sends the values to the display.

And then that’s all. Generate the files using the Generate button under the File menu, and then upload the files to your display using an SD card.

 

Floating point number parameters.

Schematics and other useful information

 

The BME280 and the CCS811 share the same i2C line (A4 - SDA and A5 - SCL), and the line is pulled up using two 4.7 kOhm resistors. The Dust sensor (GP2Y1010AU0F) requires two pins from the Arduino: a digital pin (D4) to turn the LED inside on/off and an analog pin (A3) to read the output voltage of the sensor. Please notice, that there is an almost hidden potentiometer on this sensor under the smaller hole above the right side of pin 6. This potentiometer can be used to trim the sensitivity of the sensor.

 

Support me on Patreon!

Previous
Previous

DWIN Displays - Dial indicators and knobs

Next
Next

Precise focus stacking device for macro photography - Part 2