The project is a realtime dashboard that indicates temperature and humidity got from sensor DHT-11.
The dashboard automatically connects to the NodeJS server at 5000 port and visualizes data at charts on the fly.
After the new data is read by sensors, it comes to the NodeJS TCP server at 5001 port and after that the server automatically sends updates to all the clients.
If the client is currently monitoring today's data, the charts will be updated automatically.
In the right top corner of the dashboard there is an indicator of the connection between client and server.
The only control element here is a datepicker. So you can look at the data, which was read by sensors in the past. If there is no such data, the charts will be cleared and you will see the notifying message "No data found for specified date".
The hardware is an Arduino Uno with esp-01s connected to it. Here is the scheme:
Here is a picture of the real Arduino device
- Arduino Uno
- DHT-11 sensors
- esp-01s module
- Wires x11
- bread board
- 1kO resistor x3
- 10kO resistor x1
- USB female A
- Download Arduino Studio
- In libraries manager download DHT sensor library
- Define your SSID, PASS, IP (ip address of your machine with nodejs server and mongodb instance)
- Upload scetch to the device connected via USB-B.
- NodeJS installed on your machine
- MongoDB with empty "iot_dt" db created and empty "iot_sensors" collection in it.
Go to the project's directory and execute:
npm install
Start the HTTP server at 5000 port and TCP server at 5001 port with:
npm start
Go to localhost:5000 or 127.0.0.1:5000 in your browser. You should see the Dashboard interface