IoT Based Weather Station by using Raspberry Pi 3


The aim of this project is to create an online weather system which enables a user to check real-time weather parameters of a place anytime and anywhere with just a few buttons click. In this project, a weather station will be built to collect weather parameters. Data collected will then store into Google Cloud and analysis of weather will be done. A mobile app or web will be developed to display the real-time weather conditions and users will receive notification as a reminder to get themselves prepared for their plans.

Project Introduction

Weather condition plays an important role in our daily life as weather and climate are the most ubiquitous factors for home and environment planning. Moreover, the tremendous development of Internet nowadays made possible to monitor weather conditions and collect the respective data in-situ. All the objects, sensors and devices can be linked through the Internet to share and analyze the data collected at various locations. The IoT can be much more extensive in predicting and knowing the weather conditions in particular place by connecting this weather station to the Internet.

The climate of Malaysia is so capricious that hard to predict nowadays. As people grow into a developed country with advanced technology to help humanity and bring convenience to the society, it is now the time for the weather broadcasting to be implemented into the mobile phone instead of keep on checking through only television or radio. However, with the mobile weather checking syste, we have in this era still often we see people rushing for schedule under the rain without umbrella; laundries are still showering by rain; home planted plants are wilted due to the hot and dry weather.

Therefore, the objective of this project is to create an online weather system which enables the user to check real-time weather parameters of a place anytime and anywhere with just a few buttons click. On top of that, people will receive real-time notification or reminder to get themselves prepared for their plans in the current weather.

Figure 1: Overall flow of project

Figure 2: Project architecture

Favoriot platform is chosen because it is a new cloud-based platform designed for IoT which supports the integration, collection, and storage of data from several devices into the internet. It has a scalable big data storage. It also helps developers in building vertical applications to display data in many forms. Favoriot platform is suitable to be used in this project that needs several functions provided in this platform in order to obtain desired results.

Design Methodology

There are three phases to achieve the stated objectives above:

Weather station design and prototype development

These weather parameters are measured using Sparkfun Weather Shield sensor and the Raspberry Pi 3 with built-in Wi-Fi is used to capture all the data from the weather sensor. The measurements taken include temperature, humidity, atmospheric pressure, light intensity, wind speed and direction, and rain precipitation.

Transferring data to initial state cloud platform

Raspberry Pi 3 will stream the data directly to the cloud. Cloud platform that are suggested to be used in this project are Favoriot because it fully managed data, supports monitoring, logging, and diagnostics, data analysis and helps developers in building vertical applications.

Application of Internet of Things (IoT)

A stream of weather parameters/information can be displayed in a professional graphical fashion which can be accessed from mobile phone or web. Favoriot also allows the development of next generation of applications of the web that is reliable, fast and engaging. Real-time notification will then be sent to the user as a reminder.

Figure 3: Flowchart of the project

Preliminary Result

The SparkFun Weather Shield with built-in Si7021 humidity/temperature sensor, MPL3115A2 barometric pressure sensor, and the ALS-PT19 light sensor was connected to Raspberry Pi 3 as shown in Figure 4.

Figure 4: The hardware of this project

The weather parameters such as temperature, humidity, and pressure are taken from the weather shield and loaded into Raspberry Pi 3. The weather parameters were displayed at the Lx terminal of the VNC viewer as shown in Figure 5. Data collected from the sensors were successfully streamed into Favoriot and shown in the dashboard as shown in Figure 6. However, the data streamed into the Favoriot is not tally with the data collected from the sensors as for now.  In addition, the current weather conditions are updated to multiple social media every hour to notify the user as shown in Figure 7. The number of update post can be determined by modifying the python code.

Figure 5: The weather parameters displayed in Lx terminal of Raspberry Pi 3

Figure 6: Data is being streamed and displayed in Favoriot

Figure 7: Twitter post showing the current weather condition

Expected Result

The expected results toward the end of this project are described as below:


A prototype of weather station by using Raspberry Pi 3 and Sparkfun Weather Shield sensor is designed and developed for climatology monitoring. The weather station is able to be interfaced to the Favoriot cloud platform. Weather parameters are able to be collected and saved in the cloud.


Weather parameters can be analyzed online with graphical presentation. People can access the weather-related information via mobile phone or web easily. Notifications will be sent to the users too as a reminder.

Figure 8: Expected results of Favoriot data analytics for weather parameters in (a) line chart and (b) column chart

Figure 9: Expected results of weather app development using Favoriot platform

[Note: This project is being done by UTHM, our FAVORIOT’s University collaborator. Article was written by Pui Yan Muck]

You can check out the whole LIST of IOT PROJECTS by our University Collaborators.


Mazlan Abbas

About Mazlan Abbas

IOT Evangelist

This entry was posted in Internet of Things and tagged , , , , . Bookmark the permalink.

One Response to IoT Based Weather Station by using Raspberry Pi 3

  1. Pingback: List of IoT Projects by University Collaborators - IoT WorldIoT World

Leave a Reply

%d bloggers like this: