The Mongo Secure Climate Logger is an IoT-based environmental monitoring system that captures real-time temperature, humidity, and heat index data. This project utilizes an ESP8266 microcontroller and a DHT11 sensor to collect data, which is then sent via Wi-Fi to a RESTful API built with Node.js and Express.js. The data is securely stored in MongoDB Atlas, ensuring scalability and persistence. Additionally, pfSense is used as a firewall solution to enhance network security.
- Real-time temperature and humidity monitoring
- Data transmission via Wi-Fi using ESP8266
- REST API for data storage and retrieval
- Secure data storage with MongoDB Atlas
- Interactive visualization using ThingSpeak
- pfSense firewall integration for enhanced security
- Hardware: ESP8266, DHT11 Sensor
- Software & Tools:
- Programming Languages: JavaScript (Node.js)
- Backend Framework: Express.js
- Database: MongoDB Atlas
- Firewall: pfSense
- Data Visualization: ThingSpeak
- Development Environment: Arduino IDE, VS Code
git clone https://github.com/yourusername/mongo-secure-climate-logger.git
cd mongo-secure-climate-loggernpm installCreate a .env file and set up your MongoDB URI:
MONGO_URI=mongodb+srv://yourusername:yourpassword@yourcluster.mongodb.net/IoT_db
PORT=5000node new.jsThe server will start at http://localhost:5000
- Upload the arduino_code.ino to your ESP8266 using the Arduino IDE.
- Ensure the Wi-Fi credentials and API endpoint match the server settings.
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/sensors | Stores sensor data |
- pfSense Firewall: Protects the REST API server and database.
- Encrypted API Calls: Ensures data integrity during transmission.
- MongoDB Security Rules: Restricts unauthorized access.
- Ankan Debnath
- Ravijyoti Motak
This project is licensed under the Apache License.
Special thanks to IoT Academy, IIT Guwahati, and Assam Skill Development Mission for their guidance and support.