{"id":14997544,"url":"https://github.com/eshansurendra/smart-medibox","last_synced_at":"2026-02-01T23:01:43.918Z","repository":{"id":239700357,"uuid":"796384087","full_name":"eshansurendra/Smart-MediBox","owner":"eshansurendra","description":"Smart Medibox using an ESP32 to remind users to take their medicine on time.","archived":false,"fork":false,"pushed_at":"2024-06-20T04:55:13.000Z","size":804,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-02T06:31:47.220Z","etag":null,"topics":["dht11","embedded-systems","esp32","iot","mqtt-broker","node-red","platformio","ssd1306-oled","vscode"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eshansurendra.png","metadata":{"files":{"readme":"docs/README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-05T19:21:01.000Z","updated_at":"2024-06-20T04:55:16.000Z","dependencies_parsed_at":"2024-06-20T16:14:25.380Z","dependency_job_id":"f0e115b5-4492-4529-a70c-599b3a6ba048","html_url":"https://github.com/eshansurendra/Smart-MediBox","commit_stats":{"total_commits":41,"total_committers":2,"mean_commits":20.5,"dds":"0.24390243902439024","last_synced_commit":"fe916999646312126bc5310a6fe8c4775a788a5c"},"previous_names":["eshansurendra/smart-medibox"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eshansurendra%2FSmart-MediBox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eshansurendra%2FSmart-MediBox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eshansurendra%2FSmart-MediBox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eshansurendra%2FSmart-MediBox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eshansurendra","download_url":"https://codeload.github.com/eshansurendra/Smart-MediBox/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238937493,"owners_count":19555376,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dht11","embedded-systems","esp32","iot","mqtt-broker","node-red","platformio","ssd1306-oled","vscode"],"created_at":"2024-09-24T17:04:08.148Z","updated_at":"2026-02-01T23:01:43.889Z","avatar_url":"https://github.com/eshansurendra.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Smart Medibox\r\n\r\nSmart 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.\r\n\r\n## Features\r\n\r\n1. **Medication Reminders**: The device reminds users to take their medication at specified times through alarms.\r\n\r\n2. **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.\r\n\r\n3. **Light Control**: A motorized curtain controls the amount of light entering the Medibox, helping to maintain the appropriate environment for medication storage.\r\n\r\n\r\n## Technologies and Components\r\n![Technologies and Components](assets/diagram.png)\r\n### Components:\r\n- ADAFRUIT SSD 1306 OLED Monochrome Display (128x64)\r\n- ESP32 Devkit V1\r\n- DHT11 Temperature and Humidity Sensor (Configurable for DHT22)\r\n- SG90 Micro Server Motor\r\n- LDRs and 10kΩ Resistors\r\n- Push Buttons\r\n\r\n### Notes:\r\n- The project is developed using the specified components. If components are changed, parameters may need adjustment accordingly.\r\n\r\n## Usage\r\n\r\nTo use the Smart Medibox:\r\n\r\n1. Connect the specified components according to the provided instructions.\r\n2. Upload the provided code to the ESP32 Devkit V1.\r\n3. Configure medication reminders, temperature/humidity thresholds, and light control preferences as needed.\r\n4. Place medications inside the Medibox and close the lid.\r\n5. The device will handle reminders, monitor conditions, and control the light automatically.\r\n\r\n# Getting Started\r\n\r\n## Prerequisites\r\n- Git\r\n- PlatformIO with Arduino Framework Set up\r\n- Relevant hardware for testing if you are not intending to use simulations\r\n- Node-RED Installed Environment and an MQTT Broker\r\n\r\n![PlatformIo](https://img.shields.io/badge/PlatformIO-5.2.0-blue) ![Node-RED](https://img.shields.io/badge/Node--RED-2.1.3-red) ![MQTT](https://img.shields.io/badge/MQTT-5.1.3-orange) ![VSCode](https://img.shields.io/badge/VSCode-1.60.2-green)\r\n\r\n## Medibox Setup\r\n\r\n1. Clone the repository:\r\n    ```bash \r\n    git clone https://github.com/eshansurendra/Smart-MediBox    \r\n    ```\r\n\r\n\u003e [!NOTE]\r\n\u003e If you intend to simulate the project using the Wokwi extension, clone the relevant branch using:\r\n\u003e ```bash \r\n\u003e git clone -b Wokwi-Simulation https://github.com/eshansurendra/Smart-MediBox    \r\n\u003e ```\r\n\r\n2. PlatformIO typically installs required libraries automatically. If not, install them referring to the `configuration.ini` file displayed above.\r\n\r\n3. Compile and Upload/Simulate.\r\n\r\n## Node-RED Dashboard\r\n\r\n![Node-RED Dashboard](assets/dashboard_node_red.png)\r\n\r\n1. 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:\r\n\r\n2. Import the `./Node-Red Flow/flows.json` to the Node-RED canvas.\r\n\r\n3. Set up required parameters of the flows including the MQTT server and then deploy. (This is defaulted to the Mosquitto testing server.)\r\n\r\n\r\n# About\r\n\r\nThis project was first developed as the Semester 4 Project in the Module `EN2853 - Embedded Systems \u0026 Applications`\r\n\r\n## Contributing\r\n\r\nContributions are welcome! \r\n\r\n- **Bug Fixes:** If you find any bugs or issues, feel free to create an issue or submit a pull request.\r\n- **Feature Enhancements:** If you have ideas for new features or improvements, don't hesitate to share them.\r\n\r\n# License\r\n\r\nThis project is licensed under the [MIT License](LICENSE).\r\n\r\n[go to the top](#Smart-Medibox)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feshansurendra%2Fsmart-medibox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feshansurendra%2Fsmart-medibox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feshansurendra%2Fsmart-medibox/lists"}