https://github.com/archinamon/ha-esp-locker
Intelligent locker based on ESP8266 for Home Assistant
https://github.com/archinamon/ha-esp-locker
125khz arduino esp8266 esp8266-arduino esp8266-firmware esp8266mqtt homeassistant homeassistant-device rfid-doorlock-application rfid-reader
Last synced: 7 months ago
JSON representation
Intelligent locker based on ESP8266 for Home Assistant
- Host: GitHub
- URL: https://github.com/archinamon/ha-esp-locker
- Owner: Archinamon
- License: apache-2.0
- Created: 2024-12-08T19:33:20.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2025-01-09T15:05:52.000Z (9 months ago)
- Last Synced: 2025-02-07T14:14:34.409Z (9 months ago)
- Topics: 125khz, arduino, esp8266, esp8266-arduino, esp8266-firmware, esp8266mqtt, homeassistant, homeassistant-device, rfid-doorlock-application, rfid-reader
- Language: C++
- Homepage:
- Size: 2.62 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ESP8266-Based Lock with Home Assistant and RFID Support
## Project Description
This project is a smart lock based on the ESP8266 microcontroller. It integrates with the **Home Assistant** smart home system, allowing control through its interface. Additionally, the lock supports unlocking with RFID cards via a built-in RFID module with an antenna.
## Key Features
- **Integration with Home Assistant** for controlling the lock via a mobile app or web interface.
- **MQTT Support** for interaction with other smart home systems.
- **RFID Card Unlocking** for convenient access.
- **Remote Control** for locking and unlocking over the internet.
- **Custom Automation Scenarios** for tailored smart home functionality.
- **Over-the-Air (OTA) Firmware Updates** for seamless firmware updates over Wi-Fi.## Components
- **ESP8266**: The microcontroller managing the lock's operations.
- **KY-012**: Simple buzzer for sound feedback.
- **125Khz RFID Reader with antenna**: For reading RFID card data for authentication.
- **LY-03**: Solenoid locker for 12v which operates over a relay.
- **SRD-05VDC-SL-C**: A simple 5v relay (you can use any that operates under 3-12v).
- **Home Assistant**: The smart home automation system.
- **MQTT Broker**: For message exchange between devices.
## Installation and Setup
### 1. Assemble the Device
- Connect the RFID module to the ESP8266 according to the wiring diagram.
- Ensure the device is powered according to the required specifications.### 2. Flash the ESP8266
1. Download the project repository.
2. Setup your personal data within sketch file:
- Your Wi-Fi network credentials (L28-L29).
- The MQTT broker address (L33-L36).
3. Flash the firmware to the ESP8266 using **Arduino IDE** or **PlatformIO**.
4. Long single beep will indicate that WiFi and MQTT broker has been connected successfully.
5. The first RFID card or chip will be remembered as a master.### 3. Integrate with Home Assistant
- Start Home Assistant.
- Install Mosquitto with the MQTT broker and start it.
- Add MQTT integration which connects to your broker.
- Start the ESP device.
- The device will send a discovery message and a new device will appear in your HA interface.### 4. Configure RFID Cards
- Register cards by touching the antenna with your card or implanted chip.
- Add unique card IDs for authorization via Home Assistant interface.### 5. OTA Updates:
- Use the built-in OTA feature to update firmware without physical access.
- Access :88/firmware to upload the firmware updates.
- Access :88/restart to reboot the device remotely.## Usage
Control the lock via:
- The Home Assistant interface.
- Automation scenarios (e.g., unlock when arriving home).
- By presenting an RFID card or implanted chip to the module.## Requirements
- 12v with a DC power supplier to 5v output or a direct USB 5v output.
- ESP8266 (NodeMCU or equivalent with WiFi).
- 125Khz RFID Reader module (or you can use your own).
- Home Assistant with a configured MQTT broker.
- Wi-Fi Network.## Notes
- Ensure the device is protected against unauthorized access.
- Regularly update the firmware to fix potential vulnerabilities.## License
This project is licensed under the Apache 2.0 License.## Contact
If you have questions or suggestions, feel free to open an Issue in the repository.