This is a weather station application built using Arduino, Vite, MQTT, Node.js, Python, Docker and MongoDB.
The weather station application collects data from various sensors connected to an Arduino board. The collected data is then sent to a MQTT broker for real-time communication. A Node.js server subscribes to the MQTT broker and stores the data in a MongoDB database. The data can be accessed and analyzed using the provided APIs.
- Collects weather data from sensors connected to an Arduino board
- Real-time communication using MQTT
- Stores data in a MongoDB database
- Provides APIs for accessing and analyzing the collected data
- Mock data for testing purposes
- Dockerized for easy deployment
Before running the weather station application, make sure you have the following installed:
- Arduino IDE
- Node package manager (npm)
- Docker && Docker-Compose
- Python (optional)
-
Clone the repository:
git clone https://github.com/HiimHyy/weather_station.git
-
Give execution permissions to the shell scripts:
cd weather_station chmod +x program.sh -
Run the shell script to install the dependencies:
./program.sh install
-
Connect the sensors to the Arduino board and upload the Arduino sketch to the board.
-
Start the programs:
./program.sh start
-
Go to
http://localhost:5173to access the weather station application.
Contributions are welcome! If you have any ideas or improvements, feel free to submit a pull request.
This project is licensed under the MIT License.