Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eshansurendra/smart-medibox
Smart Medibox using an ESP32 to remind users to take their medicine on time.
https://github.com/eshansurendra/smart-medibox
dht11 embedded-systems esp32 iot mqtt-broker node-red platformio ssd1306-oled vscode
Last synced: 6 days ago
JSON representation
Smart Medibox using an ESP32 to remind users to take their medicine on time.
- Host: GitHub
- URL: https://github.com/eshansurendra/smart-medibox
- Owner: eshansurendra
- License: mit
- Created: 2024-05-05T19:21:01.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-06-20T04:55:13.000Z (8 months ago)
- Last Synced: 2025-02-02T06:31:47.220Z (19 days ago)
- Topics: dht11, embedded-systems, esp32, iot, mqtt-broker, node-red, platformio, ssd1306-oled, vscode
- Language: C++
- Homepage:
- Size: 785 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: docs/README.md
- License: LICENSE
Awesome Lists containing this project
README
# Smart Medibox
Smart Medibox is a smart device designed to assist users in managing their medication effectively. It integrates several features to ensure medication adherence and proper storage conditions.
## Features
1. **Medication Reminders**: The device reminds users to take their medication at specified times through alarms.
2. **Temperature and Humidity Monitoring**: Continuous monitoring of temperature and humidity inside the Medibox ensures that medications are stored under optimal conditions. Users are notified if conditions deviate from the desired range.
3. **Light Control**: A motorized curtain controls the amount of light entering the Medibox, helping to maintain the appropriate environment for medication storage.
## Technologies and Components

### Components:
- ADAFRUIT SSD 1306 OLED Monochrome Display (128x64)
- ESP32 Devkit V1
- DHT11 Temperature and Humidity Sensor (Configurable for DHT22)
- SG90 Micro Server Motor
- LDRs and 10kΩ Resistors
- Push Buttons### Notes:
- The project is developed using the specified components. If components are changed, parameters may need adjustment accordingly.## Usage
To use the Smart Medibox:
1. Connect the specified components according to the provided instructions.
2. Upload the provided code to the ESP32 Devkit V1.
3. Configure medication reminders, temperature/humidity thresholds, and light control preferences as needed.
4. Place medications inside the Medibox and close the lid.
5. The device will handle reminders, monitor conditions, and control the light automatically.# Getting Started
## Prerequisites
- Git
- PlatformIO with Arduino Framework Set up
- Relevant hardware for testing if you are not intending to use simulations
- Node-RED Installed Environment and an MQTT Broker   
## Medibox Setup
1. Clone the repository:
```bash
git clone https://github.com/eshansurendra/Smart-MediBox
```> [!NOTE]
> If you intend to simulate the project using the Wokwi extension, clone the relevant branch using:
> ```bash
> git clone -b Wokwi-Simulation https://github.com/eshansurendra/Smart-MediBox
> ```2. PlatformIO typically installs required libraries automatically. If not, install them referring to the `configuration.ini` file displayed above.
3. Compile and Upload/Simulate.
## Node-RED Dashboard

1. After completing the above steps, all basic and major functionalities will work, except for the Node-RED based functionalities. Follow these instructions to deploy an instance of the Node-RED Dashboard:
2. Import the `./Node-Red Flow/flows.json` to the Node-RED canvas.
3. Set up required parameters of the flows including the MQTT server and then deploy. (This is defaulted to the Mosquitto testing server.)
# About
This project was first developed as the Semester 4 Project in the Module `EN2853 - Embedded Systems & Applications`
## Contributing
Contributions are welcome!
- **Bug Fixes:** If you find any bugs or issues, feel free to create an issue or submit a pull request.
- **Feature Enhancements:** If you have ideas for new features or improvements, don't hesitate to share them.# License
This project is licensed under the [MIT License](LICENSE).
[go to the top](#Smart-Medibox)