A home weather station using Arduino, NodeMCU, and an nRF24L01+
This is a DIY project that helps you build a weather station at home. It consists of two stations: The one with an LED display to show the temperature (C or F) and that other one takes measurements and sends it to the first station as well as uploading that information to a local web server though WiFi (Potentionally world-wide if you want to open a port in your router).
-Arduino_Temp.c: The code to be uploaded on the Arduino Uno.
-NodeMCU_Temp.c: The code to be uploaded on the NodeMCU.
*Note: Some libraries might need to be installed on the Arduino IDE.
Once the NodeMCU starts, it will start the local webserver displaying its IP on the Serial monitor. This IP can be typed on any web browser on the same router and it will display a welcoming message with the Temperature readings displayed. While it does that, it listens through the nRF24L01 module for any signal comming from the Arduino’s nRF24L01. Once it gets that request signal, it responds with the temperature reading. When the Arduino starts, it sends a request signal to the NodeMCU then listens for a reply. Once it gets that replay signal, it reads the temperature and loads it on the LED display.
Arduino:
This is the setup for the Arduino station.
NodeMCU:
For this setup, if you have Female-to-Female wires then you can connect the pins directly without needing a breadboard.
7-Segment Display:
This is to help visualize the connections between the LED’s and the code.