The PiNG Video Doorbell is powered by a Raspberry Pi and uses Google Duo to video call you on your phone when a visitor presses the button.
1986 Raspberry Pi Video Doorbell
The PiNG Video Doorbell is powered by a Raspberry Pi and is retro-stylishly cased in a 1986 Intercom and an old Sony cassette player.
When the doorbell button is pressed the Pi makes a high-quality video call using Google Duo, which can be answered on a phone, tablet or computer, letting you see and speak to callers when you're away from home (or at home but trapped under a cat). It works over WiFi and cellular, so you can even answer the door when you're out pounding the streets.
It also sounds a standard wireless door chime inside the house as a fail-safe, in case the call can't be taken.
The setup and code are very straightforward, read on and I'll show how you can make your own video doorbell from scratch in just a couple of hours for well under £50 (or for practically nothing if you already have a Pi and some components lying around!).
There's a full video showing the build and features on YouTube at https://youtu.be/Bn1qj2Uvl0w if you can't see the embedded version.
Opportunity Knock Knocks
I've always fancied making a video doorbell using a Raspberry Pi, but until recently I couldn't find an easy way to make video calls that would both work in a project and be straightforward for others to recreate. That all changed on 26th February however, when I read reports that a browser-based version of Google Duo had been released – meaning that it would run without installing a dedicated app.
Having already researched the challenges of making Pi calls with Skype and WhatsApp I was on the point of installing Android to try and use Google Duo, but was put off by not being able to easily integrate the GPIO interface, so the web app news was really encouraging. After devouring the articles I first tested Duo on my windows laptop, and swiftly moved on to try it with Chromium on my workshop machine, a Pi 2. This didn't go so well, the Duo site appeared and let me log in, but didn't display my contacts list or any options to change settings. I decided to look into using other browsers (the write-up said it also worked on Firefox and Safari) and also test it on a more beefy Pi 3.
I hooked up a Logitech webcam to the Pi 3 then fired up Chromium, and to my amazement was able to video call my wife in the living room seconds later, after tweaking a few settings. The webcam I tested had a built-in microphone and even on the first thrown-together test call the quality was great. This was a very exciting moment, unlocking the potential of the video doorbell project as well as many other possibilities.
So video-calling with a keyboard, mouse and screen was a definite go – but how to make this work with a headless Pi and buttons?
Software setup video: https://youtu.be/Bn1qj2Uvl0w?t=1029
Having Duo running in Chromium was great, and I assumed I'd just run it full-screen, but then (literally by accident) I realised it could run “out of browser”, in the same way you can “install” web apps on a Windows PC – here's how:
- Go to the Google Duo site in Chromium on the Pi (https://duo.google.com/)
- Log in with the Google account you want to use to make the doorbell calls
- Click on the three dots (hamburger) > Install Google Duo (If you're not using the most recent Raspbian you may need to select More Tools > Add to Desktop
- Click “Add” in the dialogue box that appears
Source: 1986 PiNG Video Doorbell