https://github.com/maxvanceffer/soap_dispanser_ha
https://github.com/maxvanceffer/soap_dispanser_ha
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/maxvanceffer/soap_dispanser_ha
- Owner: maxvanceffer
- License: gpl-3.0
- Created: 2025-06-24T17:34:56.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-07-27T05:26:08.000Z (about 1 year ago)
- Last Synced: 2025-07-27T07:24:12.181Z (about 1 year ago)
- Language: C++
- Size: 68.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SoapDispenserOs - Soap Dispenser Operating System
This project provides an Arduino-based solution for integrating a soap dispenser with Home Assistant.
## Features
- Detects when soap is dispensed using an analog sensor
- Integrates with Home Assistant via MQTT
- Configurable settings stored in a persistent cache
- Support for ESP32 boards with file system capabilities
## Hardware Components
- **ESP32-C3** - Low-power RISC-V microcontroller. Any other versions of esp32 will be supported in future.
- **SSD1309 OLED Display** - OLED display module with 4-pin SPI/IIC I2C (right now only supported 2.4 inch 128x64px)
- **DRV8833** - Dual H-bridge motor driver for controlling the soap dispensing motor
- **18650 Lithium Battery** - 3.7V lithium-ion rechargeable battery for power supply
- **DC-DC Step down MP1584EN 3A** - For power up esp32 and other wakeup devices.
- **Proximity Sensor Obstacle Avoidance** - For hand detection, as wakeup device and soap dispense.
- **PIR Motion Human AM312** - Wakeup device, for screen wakeup.
- **4.2V Charge/Discharge Module** - Boost converter with battery protection and indicator for 3.7V lithium battery
## Project Structure
- `src/` - Contains all source code files
- `SPHA.ino` - Main Arduino sketch
- `README.md` - Detailed documentation
## Getting Started
1. Clone this repository
2. Open the SPHA.ino file in the Arduino IDE
3. Install the required dependencies (ArduinoJson)
4. Configure your hardware pins in the sketch
5. Upload to your Arduino board
For more detailed instructions, see the [src/README.md](SPHA/README.md) file.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.