Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kevsiraki/esp32-springboot-environment-monitoring
Integrate ESP32 sensors with Spring Boot API for real-time temperature and humidity monitoring. Scalable solution for home, environment, and industry.
https://github.com/kevsiraki/esp32-springboot-environment-monitoring
Last synced: 11 days ago
JSON representation
Integrate ESP32 sensors with Spring Boot API for real-time temperature and humidity monitoring. Scalable solution for home, environment, and industry.
- Host: GitHub
- URL: https://github.com/kevsiraki/esp32-springboot-environment-monitoring
- Owner: kevsiraki
- License: mit
- Created: 2024-02-13T06:04:51.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-03-01T04:08:32.000Z (11 months ago)
- Last Synced: 2024-11-17T08:34:45.684Z (2 months ago)
- Language: Java
- Size: 169 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# IoT Environmental Monitoring System
## Overview
The IoT Environmental Monitoring System is a comprehensive solution designed to monitor temperature and humidity levels remotely. It combines the capabilities of ESP32 microcontrollers with DHT11 sensors for data collection and a Spring Boot API for data processing and storage.## Features
- **Real-time Monitoring:** Continuously monitors temperature and humidity levels and provides real-time data updates.
- **Data Storage:** Stores collected data securely for future analysis and reference.
- **RESTful API:** Provides a robust API for interacting with the system, enabling CRUD operations on devices and temperature records.
- **Authentication and Authorization:** Implements security mechanisms to ensure that only authorized users can access sensitive endpoints and perform privileged operations.
- **Error Handling:** Gracefully handles exceptions and provides feedback to users to maintain system stability.
- **Documentation:** Includes comprehensive API documentation for developers to explore and interact with the system effortlessly.## Getting Started
### Setting Up the Spring Boot API
1. **Clone the Repository:** Clone this repository to your local machine.
2. **Configure `pom.xml`:** Open the `pom.xml` file and ensure that all dependencies are correctly configured. Make any necessary adjustments based on your project requirements.
3. **Run the API:** Run the Spring Boot API on your local machine or deploy it to a server. Refer to the API documentation for instructions on running and configuring the API.
4. **API Testing** Visit http://donttrip.org:8081/swagger-ui/ to test the API in real-time!### Configuring the ESP32 with Arduino IDE
1. **Install Arduino IDE:** Download and install the Arduino IDE from the [official website](https://www.arduino.cc/en/software).
2. **Install ESP32 Board Support:** Follow the instructions [here](https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md) to install ESP32 board support in the Arduino IDE.
3. **Open Example Sketch:** Open the provided TemperatureClient directory to find the TemperatureClient.ino and secrets.example.h files.
4. **Configure Connectivity and Wi-Fi Credentials:** Modify the secrets.example.h definitions to include your Wi-Fi network SSID/password as well as your base API endpoint URL.
5. **Upload Sketch:** Connect your ESP32 device to your computer and upload the modified sketch to the device. Verify that the device successfully connects to the Wi-Fi network.## Dependencies
- Arduino IDE
- ESP32 Boards Library
- Apache Maven
- Java Spring Boot
- MySQL Database
- Java JDK## Documentation
- For detailed documentation on the API endpoints and usage, refer to the [API Documentation](GeneralAPIDocumentation.md).
- For detailed documentation on getting and using an API Key, refer to [API Key Usage](APIKeyUsage.md).## Contributing
Contributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request.## License
This project is licensed under the [MIT License](LICENSE).