WIP warning!: this is a work in progress! I think I can bring this to a good end but I already faced quite some battles on both hard-and software side. Code and more will be posted once I get to a beta version…
In the quest to find a smart doorbell that integrates with HomeAssistant, I finally developed DoorDroid. What is it? It is an old Android smartphone I had lying around which I will use (off course without the screen) as my smart doorbell. It provides free 2-way audio calling and a video feed.
This project is inspired by DoorPi but will hopefully have better call quality.
- Old Android Phone supporting SIP running DoorDroid
- Asterisk SIP server with correct configuration
- One of:
- an always on tablet showing HomeAssistant with the DoorDroid custom card
- a smart phone supporting SIP calling
How does it work
I run my HomeAssistant setup within Docker via
docker-compose and I now added Asterisk, a SIP server which supports two way audio calling.
In a 3D printed/laser cut box, the Android smartphone will be placed outside at the door. The smartphone has one app running on it all the time, DoorDroid. The app has the following features:
- it runs an embedded HTTP server which can stream the phone’s camera
- it can call a default SIP number or any SIP number registered in Asterisk server
Next to the smartphone is an ESP8266/32 with one or more physical hardware buttons attached to it.
If someone pushes the doorbell button, a script is launched in homeassistant:
- using @thomasloven excellent
browser-commander, my wall-attached Android Panel showing HomeAssistant all the time, switches to the Doorbell tab
- a Sonos TTS message is played
- the DoorDroid app receives an HTTP call to initiate a SIP call to my always-on tablet (if I’m away to my smartphone)
- On my tablet, I can accept the call and start chatting. The DoorDroid custom card also shows the videofeed of whom is at my door. Off course, I can also reject the call
P.s. no comments on the pics please