In the previous tutorial I showed you how to build a weather station using only the DHT11 sensor and I said the readings from this sensor is fairly accurate. In this tutorial, I will be using the DHT11 to measure only the humidity and BMP180 to measure pressure and temperature. That’s because its readings are more accurate than the DHT11 temperature readings.
Arduino Weather Station with DHT11 and BMP180 – [Link]
Ingenerare @ instructables.com show us an easy to build IoT weather station able to measure temperature, dew point, humidity, pressure, light index, and rain. He writes:
A weather station is a fun project that teaches you a ton about electronics with the added benefit being an actually useful little device. The project requires a bunch of cheap parts and sensors totaling less than $15, and the whole thing ends up fitting in your hand. The station creates a web site that monitors temperature, dew point, humidity, pressure, light index, and rain (Thingspeak channel). It’s a pretty easy set up, and you’ll just need some basic electronics skills to get it going.
Easy IoT Weather Station With Multiple Sensors – [Link]
Netatmo Weather Station is a module that measures your indoor comfort by providing vital information such as temperature, humidity, air quality, and CO2, alerting you when you need to air out your home to bring down its pollution levels.
One of the Netatmo limitations is that you need to use a smartphone to view the collected information by the station. To solve this, Barzok had developed an Arduino-based screen to display the weather data remotely, and published a full guide to build it in this instructable.
The next experiment was connecting the Arduino UNO with Netatmo API through an Ethernet shield and displaying the data on the screen. The connection was the difficult part as the Arduino was not powerful enough to establish an HTTPS connection and receive valuable information from Netatmo servers.
The solution uses a PHP client on a web server, which connects with Netatmo servers, and then the Arduino retrieves the data using the standard HTTP.
The final version of the station consists of an Arduino Mega, two 2.8” inches screens, and an ESP8266 Wifi module. There is no limit of the Arduino type and screen size, you can use your model with minor changes of the code. Barzok also made a custom circuit that transforms the 9V input voltage into a 5V to power the Arduino and 3.3V to power the ESP8266.
The diagram presents the process, the Netatmo module gathers the weather information and uploads them to the Netatmo servers. Then a PHP application runs on remote server and retrieves the information from the Netatmo servers and turns it into simple text data. Finally the Arduino receives the simple texts with the ESP8266 module and displays them on the two screens.
The two screens displays different information, the left one provides the real time data received from the Netatmo sensors about temperature, pressure, humidity, rain and CO2. The other screen shows the time and date, pressure history, and 3 days weather forecast.
You can find more instructions to build this project with detailed description about the code, schematics, box design at the project page.
Internet of LEGO “IoL” is an interactive LEGO city built and designed by Cory Guynn, a cloud computing and IoT enthusiast. This project combines computer and electronics engineering with our favorite childhood toy, LEGO!
A recently added project is a digital billboard that broadcasts the weather information from IoL local weather station. It uses a Raspberry Pi running Node-RED to collect weather data from the local station and display it on an OLED screen powered by an ESP8266.
WeMos D1 mini is a cheap mini wifi board based on ESP8266 and compatible with Arduino and NodeMCU. It has 11 digital I/O pins that support PWM, I2C, and interrupts, and has only one analog input with a microUSB connector. The WeMos D1 is available for only $4 and is supported by many shields.
The 128X64 OLED is about 1.3″ display, it is very readable due to its high contrast. This display is made of 128×64 individual white OLED pixels, each one is turned on or off by the controller chip. No backlight is required because the display makes its own light, which reduces the power required to run the OLED.
OLED’s driver chip, SSD1306 can communicate in two ways: I2C or SPI. The OLED itself require a 3.3V power supply and 3.3V logic levels for communication.
The display uses I2C connection at this project, so you will need to solder the two jumpers (SJ1/2) on the back of the OLED, then use the ‘Data’ pin as ‘I2C SDA’ pin and ‘CLK’ pin as ‘I2C SCL’. The WeMos D1, OLED, LEDs, and resistors are connected as shown in the figure.
To simplify configuring WeMos D1, a special firmware called “ESPEasy” has been used. It is a free and open-source web configurable software framework for IoT, which allows the device to be configured using the web browser instead of writing codes.
ESPEasy can be uploaded to the WeMos D1 using the Arduino IDE by installing the ESP8266 board support from Boards Manager, and then uploading the ESPEasy firmware as described in this tutorial.
MQTT is a lightweight machine-to-machine publish/subscription messaging protocol. It works like Twitter where each device will subscribe and/or publish to a topic, much like a #hashtag, and the payload will then contain the data being transmitted.
Mosquitto is a free open source broker that works perfectly on a Raspberry Pi. It is a MQTT server manages the MQTT message flow, and connects with all devices.
The last step is configuring the Raspberry Pi on the weather station for sending the information to the billboard. An easy way for that is using Node-Red, a visual tool for wiring together hardware devices, APIs and online services for IoT applications.
You can use it with your own weather station or any other sources of data, just change the MQTT input nodes to match your topics. To build a weather station check this IoL project and this ChipKIT-based station. Alternatively, you could get weather data using the Weather Underground service with the Node-RED node.
ChipKIT Uno32 by Digilent is an easy-to-use platform for developing microcontroller-based applications. It uses chipKIT-core development environment and Arduino IDE for compatibility with existing code examples, tutorials and resources. Pin-compatible with many Arduino shields that can operate at 3.3V.
By following this tutorial you will be able to build a weather station based on chipKIT and using Bosch BME280 module, a fully integrated environmental unit that combines sensors for pressure, humidity, and temperature in a tiny 8-pin metal-lid LGA package of size 2.5 x 2.5 x 0.93 mm³. This module seems popular due to many features such as its support for standard I2C and SPI interfaces and availability of supporting open-source Arduino libraries.
R-B, the maker behind this project, uses BME280 to read barometric pressure, relative humidity, and temperature measurements then the readings will be sent via I2C bus and finally displayed on a Nokia 5110 LCD.
You will need these parts in order to build this project:
Nokia 5110 LCD: It is a 48×84 pixels matrix LCD driven by the low-power PCD8544 controller chip. It is powered by 3.3V and includes on-chip generation of LCD supply and bias voltages, thus requiring minimum external components for its operation. The PCD8544 receives display data and commands from a microcontroller through a serial bus interface.
The complete hardware setup for this project is shown in the following figure:
You will need to install the following libraries prior to develop the firmware for this project.
The program displays ambient temperature in Centigrade, humidity in %, and atmospheric pressure in hectopascal (hPa) units.
Full description of how to connect the modules together, how to set the I2C connection and more detailed information are available at the project page.
Just download the complete program, get the needed parts and you are ready to build your own weather station! You can check other tutorials by R-B here.
educ8s.tv tests the new Raspberry Pi 3 board, by building a simple but useful project.
A few months back, the Raspberry Pi 3 board was released. It is a great new board because it now offers WiFi and Bluetooth connectivity out of the box! It uses a quad core processor which operates at 1.2Ghz and it has 1GB of RAM available. From the benchmarks I have seen, this board is at least 3 times faster than the original Raspberry Pi. It can run Linux and offers 40 GPIO pins for our projects. The impressive thing is its price. It costs around 40$ and Gearbest.com was kind enough to send me a sample unit in order to test it and build projects with it.
Touch Weather Station using a DHT22 Sensor and a Raspberry Pi 3 with TKInter – [Link]
In this video we build a Wireless Weather Station using the fast and powerful 32bit Arduino Due board. We measure the temperature and the humidity with a couple of DHT22 sensors and we communicate with the remote sensor using the 2.4GHz NRF24L01+ module. Let’s see how to build this project!
Today’s project is this. A Wireless Weather Station with a big 3.2” Color TFT display. As you can see, the project is up and running, and it displays the current date and time, the indoor temperature and humidity, and the outdoor temperature and humidity. The readings of the outdoor sensor are updated every second in order to demonstrate that we have a reliable communication link established with the transmitter which is outside at a distance of 5m. The readings of the indoor sensor are updated once every minute. The heart of the project is the fast Arduino Due, and as you can see there is no flickering of the screen when the values are updated. Let’s now see the transmitter.
The transmitter is much simpler. It consists of an Arduino Nano, a DHT22 sensor and the NRF24L01 wireless transceiver module. The transmitter reads the temperature and the humidity every second, and sends them to the receiver via the NRF24L01 module. This is a one way communication link, we don’t know if the receiver actually receives the data, but we send new data every second, so in case we miss a package we are going to receive another one soon. Let’s now see how to build this project.
Wireless Weather Station using Arduino Due, DHT22 sensor and NRF24L01+ – [Link]
user Ingenerare @ instructables.com published a tutorial on a IoT weather station based on NodeMcu board, DHT11/22 sensor, BMP180 sensor, Rain sensor, Light sensor.
In this tutorial, I will walk you through the steps to build an easy and cheap IOT weather station. The retrieved data is pushed via a wifi shield to Thingspeak. The data can be analysed on the Thingspeak channel or on a personal website as can be seen in the pictures above.
Easy IoT weather station with multiple sensors – [Link]
Bob hacked a home weather station transmitter and made a home thermometer from it. He writes:
Recently I’ve found this piece of electronic on the dumpster, it was looking interesting – compact case with battery holder, LCD display, temperature and humidity sensor. It has also radio transmitter, but I’m not interested in it since I don’t have the receiver station. I decided to bring it back to life.
Recently I attended a course in our University of Electrical Engineering and we were making ourselves a small weather station. It included learning about soldering, sensors and arduino. It was super fun making it with little kids and other high school kids my age. I will show you how you can build it yourself, what components do you need and explain you the code and how can you upgrade it with more sensors.