If you've been considering buying a smart doorbell, you may want to consider creating your own with a Raspberry Pi instead. Maker Zane Claes of Technically Wizardry did just that, finding that managing your own open-source doorbell helps eliminate some of the security concerns associated with commercial smart doorbells.
This smart doorbell project is primarily a Raspberry Pi with a button, camera, microphone and speaker. With just these few components, you can create a complex (or simple) smart doorbell platform.
Claes has a whole smart home system that this doorbell interfaces with, but you could also use pieces of this project to create a standalone doorbell system.
This DIY smart doorbell also uses an infrared (IR) camera with night vision and a built-in microphone, as well as a tiny USB speaker. The camera is motion-sensitive, using Motion Eye OS to handle the video feed and provide security camera controls. With Tensorflow, image recognition adds a new dimension of security and can be used to trigger custom notifications and events.
The components are housed inside a steampunk-themed junction box, designed by Claes himself. A metal button with an LED serves as the doorbell button visitors will press. The doorbell button response is controlled via the Node-RED programming tool.