mirror of
https://github.com/Anonym-tsk/smart-domofon.git
synced 2025-12-06 03:26:58 +03:00
30a678ba368fe22636ed8f3495d2e128d965e374
Smart intercom based on ESP8266
English | Русский
This device can send "door open" command to intercom main unit after receiving of incoming call. It only works with coordinate line intercoms. Tested with Cyfral russian intercom.
Enjoy my work? Help me out for a couple of 🍻 or a ☕!
This is old deprecated version. Please use new ESPHome version
Parts used
- NodeMCU v3 x 1
- Double relay module x1 (or two single relay modules)
- LED x3 (or one RGB LED)
- Button x2
- Optocoupler x1
- Some resistors
Instead of NodeMCU, you can buy almost any ESP with enough count of GPIO (for example, Wemos D1 Mini). Button and LED are optional.
Example Parts
- Оптопара PC817B
- Реле электромеханическое 2-канальное
- NodeMCU V3
- RGB светодиод на плате
- Кнопка тактовая 6х6х13мм KFC-A06-13H
- Провода "мама-мама" 10см, 20 шт.
- Провода "папа-мама" 10см, 20 шт.
- Резисторы
- microUSB кабель
Scheme
Configuration and build
- Fill in WiFi and MQTT credentials in software.h
- Fill in
upload_portin platformio.ini - Use PlatformIO to build and upload firmware
Status MQTT messages (domofon/status)
- 'R' - ready; sent after successfull boot-up or after receiving of 'P' message
- 'L' - last will message; send when device goes offline
Incoming MQTT messages (domofon/in)
- 'O' - door open command
- 'N' - call reject command (door will not open)
- 'P' - ping command (answers with 'R')
Outgoing MQTT messages (domofon/out)
- 'C' - call; sent after detecting of incoming intercom call
- 'H' - hangup; sent after detected incoming call finished
- 'B' - button; sent when "door open" has been performed by green hw button press
- 'J' - reJected; sent when incoming call has been rejected by red hw button press
- 'S' - success; sent in response to 'O' or 'N' command
- 'F' - fail; sent in response to 'O' or 'N' command (this means that 'O' or 'N' command has been received but no incoming call detected)
Home Assistant integration
Full configuration with sensor, switches and automations
Put this file into /config/packages/domofon.yaml and correct notification service in automations.
Languages
C++
61.9%
C
16.8%
JavaScript
8%
CSS
7.3%
HTML
6%


