Best Video doorbell features and design ...

newfoundlandplucky

Getting the hang of it
Dec 1, 2018
87
86
Ottawa
This may not the best place to discuss and evaluate doorbell technology components. At least, not in the way I intend, which is to develop a testbed to validate feature ideas.

Current batch of doorbell products appear to favor a bunch of features that turn me away entirely:

1. Recurring revenue using walled garden cloud services. Few options integrate best-of-class services or technology.
2. Focus on video monitoring and storage as opposed to rapid notification and communication.
3. Lack of hard-wired, reliable solutions at the low end of the spectrum.

The doorbell ought to push PIR movement and video motion notifications to household devices closest to me (phones, tablets, computers, multimedia players, and a wired door chime).

The doorbell button ought to sound the exiting wired chime and also establish SIP calls to whatever devices are available when the button is pushed (this concept should include acting as an extension to your VoIP system).

Monitor video stream using software like Blue Iris.

Likely this won't ever move past a prototype and trying stuff that I might like. Making a hardware product is mostly outside my wheelhouse. Progress will be slow because component shopping has a 2 month turnaround and I have yet to enroll in fabrication courses from the local library to gain access to 3d printing and CNC.

Likely to run into lots of disappointment because I really don't grok the appropriate video sensor, lens, filter, or microphone component selection. An initial set of components have been selected based on cost and a desire to start the two month delivery process from China.

DoorbellTestbed.png
 

Attachments

  • DoorbellTestbed.png
    DoorbellTestbed.png
    565.7 KB · Views: 20
  • Like
Reactions: Halo3 and mat200
Yup. Really didn't want to confuse that forum, which appears to be focused on product reviews, with this thread which is a process of discovery and trial and error. I'm not even sure I know what I want. I'd like to evaluate workflow and features before compromising on esthetics and probably over-spending.

The product that comes closest to my wish list of features is DoorBird D2101V (https://www.amazon.com/DoorBird-Station-D2101V-Stainless-Flush-mounted/dp/B076H65MQ3). It has issues. First is the form factor. Most people would be willing to press the intercom button, maybe, but it would be a bit intimidating and out of character for a small residence like mine. Second is the price. I kinda laugh hysterically at entertaining the idea of spending $1200 on two doorbells.

Many other products also suffer from esthetic problems. The Dahua VTO2101E-P looks like a security device. Who in their right mind would assume this is a residential doorbell and push the tiny recessed black button? LOL. I'd be more concerned with being zapped by a home security death ray. Might be appropriate where intimidation is the intent but is not what I want.

Ring appears to have their act together wrt form factor. The intimidating stuff is hidden in black and the doorbell button is illuminated and clearly meant to draw attention. Their feature set is currently focused on selling this as a security monitoring device as opposed to a communications device. Its feature set falls well short of what I want.

Fenderman has recommended a few times the Dahua mini-dome for video security monitoring. I'm beginning to believe this is the right approach. The doorbell only serves as a two-way voice intercom possibly with PIR sensing. The Dahua mini-dome does hi-res video monitoring and the low-res video stream can be integrated by the doorbell as part of SIP negotiation to whatever device answers the call.
 
As an Amazon Associate IPCamTalk earns from qualifying purchases.
  • Like
Reactions: xlarons
The main issues I see from all of these is a lack of a standardized IP connection (let alone PoE), and high price for middling performance. For the price of a single DoorBird, two or three good cameras could be installed, offering far better views of a visitor.



I'm going to try a twin dome Dahua IPC-HDBW4231F-E2-M (3.6mm lenses) for a front door camera, tied to a Blue Iris server. The camera has a microphone, but I haven't tracked down a speaker yet. As long as I can find an appropriate location for the camera, it should provide video good enough for identification, and cover any front door packages. People have reported good luck with changing the lenses to different focal lengths, which may be a useful project.

While this solution isn't tied directly to a doorbell, the cameras/BI could send an alert on motion, and a method of two-way voice communication could be sorted out.
That camera does not support audio out. Also note that even if blue iris audio talk worked perfectly, its half duplex.
 
  • Like
Reactions: dark current
I plan to pull two runs of Cat6 to that location so I'll have enough wire for something else.

Wish I had pulled two CAT6 runs at the doorway instead of only one.

While this solution isn't tied directly to a doorbell, the cameras/BI could send an alert on motion, and a method of two-way voice communication could be sorted out.

A door camera paired with a SIP based intercom seems to be the right direction. So the problem mostly becomes finding an intercom in a doorbell form factor that can integrate to one or more security cameras and motion sensors.
 
I also like the idea of a tablet instead of a dumb screen. As you say, a tablet would be a great platform for spot checking several cameras.

Along the same lines a SIP doorbell ought to be able to ring a hunt group of devices and not be paired to a single answering device. You would need a software PBX somewhere in the deployment, like Asterisk for example, which could run on the doorbell itself.
 
I am still looking for a residential doorbell that performs SIP, camera optional, nice form factor. The Dahua VTO2111D-WP looks promising. Does it integrate only to a door station or will it act as a SIP extension to any VoIP system? I don't know but probably not. The hardware is acceptable but the software does not meet my requirements.

In the meantime I've completed a lot of testing on the raspberry pi reference platform to verify that this class of platform has enough ommphhhh to run a good SIP communications stack. It does.

TL;DR

1. raspberry pi zero when configured as a virtual USB Ethernet adaptor operates at 105 - 109 Mbits/sec and less than 1ms latency.
2. $5 DM96xx USB Ethernet adaptor attached to the raspberry pi has throughput of 444 kB/s and 12ms latency.
3. Don't use DM96xx based USB Ethernet adaptors with the raspberry pi zero. :-)

Throughput when using usb as a virtual Ethernet adaptor to an attached router (named Elvis) and i7 based server (named Spider) is very good:

root@raspberrypi:/home/pi# iperf --enhancedreports --time 60 --client elvis
[ 3] 0.00-60.00 sec 749 MBytes 105 Mbits/sec 1/0 0 22K/356 us

root@raspberrypi:/home/pi# iperf --enhancedreports --time 60 --client spider
[ 3] 0.00-60.00 sec 782 MBytes 109 Mbits/sec 1/0 0 285K/535 us

A super cheap Ethernet adaptor as pictured in the OP is not so good. Usable but any video output would be highly restricted.

root@raspberrypi:/home/pi# iperf --enhancedreports --time 60 --client spider
[ 3] 0.00-60.07 sec 27.8 MBytes 3.88 Mbits/sec 1/0 0 28K/12615 us

pi@raspberrypi:~ $ ftp spider
1866465280 bytes received in 4100.87 secs (444.4717 kB/s)

Jan 8 19:50:28 raspberrypi kernel: [11.837986] dm9601 1-1.2:1.0 eth0: register 'dm9601' at usb-20980000.usb-1.2,
Davicom DM96xx USB 10/100 Ethernet, 00:e0:4c:53:44:58

Apparently the Ethernet adaptor I purchased direct from China is an ok low cost $5 device but not sufficient for performing SIP video aggregation to a networked cameras. I should have spent $15 for an ASIX AX88179 based Ethernet adaptor.

Maybe should have chosen the NanoPi NEO Core 2 instead of the Raspberry Pi processing engine. It has RTL8211E-VB-CG based Ethernet on-board. It also has audio and some models have a MIPI CSI-2 camera interface.

NanoPi NEO Core2
 
Changed the Ethernet adaptor from 'dm901' to 'ax88179_178a'. Now have 7.5Mbytes/sec bandwidth to the raspberry pi instead of 450K. This should be enough to allow the doorbell platform to pass through an H264 video feed from an RTSP security monitoring camera and integrate it with local audio peripherals to place a video SIP call when the doorbell is pressed.

Jan 16 06:17:15 raspberrypi kernel: [ 15.873054] ax88179_178a 1-1.4:1.0 eth1: register 'ax88179_178a' at usb-20980000.usb-1.4, ASIX AX88179 USB 3.0 Gigabit Ethernet, 00:50:b6:29:3b:35

root@raspberrypi:/home/pi# iperf -f M -i 10 -l 50K -t 300 -c 192.168.3.1
[ 3] 0.0-300.0 sec 2227 MBytes 7.42 MBytes/sec

PJSIP communications stack will apparently integrate with a video-for-linux (v4l2) loopback video device. Found a way to strip h264 video from an RTSP video camera using ffmpeg and terminate it at a v4l2 loopback device. Next step is to integrate all of this stuff into a PJSIP software stack. This means the doorbell will appear as a video / audio SIP handset.

shayde@Elvis:~$ /usr/local/bin/ffmpeg -i rtsp://user:password@192.168.0.1:554/h264Preview_01_sub -vcodec copy -an -f v4l2 /dev/video0

ffmpeg version N-93044-g2e2b44baba Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
configuration:
libavutil 56. 26.100 / 56. 26.100
libavcodec 58. 46.100 / 58. 46.100
libavformat 58. 26.100 / 58. 26.100
libavdevice 58. 6.101 / 58. 6.101
libavfilter 7. 48.100 / 7. 48.100
libswscale 5. 4.100 / 5. 4.100
libswresample 3. 4.100 / 3. 4.100
Input #0, rtsp, from 'rtsp://user:password@192.168.0.1:554/h264Preview_01_sub':
Metadata:
title : Session streamed by "preview"
comment : h264Preview_01_sub
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p(progressive), 640x480, 25 tbr, 90k tbn, 180k tbc
Stream #0:1: Audio: aac (LC), 16000 Hz, mono, fltp
Output #0, video4linux2,v4l2, to '/dev/video0':
Metadata:
title : Session streamed by "preview"
comment : h264Preview_01_sub
encoder : Lavf58.26.100
Stream #0:0: Video: h264 (High), yuv420p(progressive), 640x480, q=2-31, 25 tbr, 90k tbn, 90k tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[video4linux2,v4l2 @ 0x55982c54da40] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
frame= 125 fps= 15 q=-1.0 Lsize=N/A time=00:00:10.42 bitrate=N/A speed=1.28x
video:684kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

Currently thinking about running video conferencing software on the Blue Iris host Windows machine so that computing devices in the home can join the doorbell video conference and thus eliminate all protocol setup time when the doorbell button is pressed. Theory is that all communication will be "instantaneous" or at least, lag will be negligible.

Not certain how to join the doorbell video conference from off-site without consuming too much bandwidth. Hopefully there is enough flexibility in the SIP protocol stack to mute / unmute audio and video until motion is detected or the doorbell button is pressed.

This is a cool project. Learning lots. Great hobby.
 
  • Like
Reactions: Motiondetection.be
Just set up a second reference platform. This one has a quad core arm v7 processor with integrated Ethernet. No USB hub required, no USB peripherals required, and no bulky connectors. The board, NanoPi Duo 2, is smaller than a Raspberry Pi Zero, far more advanced, and the 3rd party Armbian operating system is incredibly professional. Impressive.

I was hoping the smaller NanoPi footprint would make the overall device smaller but the Ethernet PoE module is comparatively bulky because of the many signal and power isolation components. A more knowledgeable electrical engineer could do a better job selecting this module and thus make the unit smaller. I'm loath to remove anything. FYI - my siding is aluminum.

The doorbell will have to be enclosed in a clever decorative case that hides the additional bulk. Using only the on-board wireless, bluetooth, and a battery the guts could be squeezed into something similar to a Ring doorbell but I prefer the stability of a wired connection and PoE.

DoorIntercom.jpg

Bill-Of-Materials is about $30 excluding the case which has to be custom printed.

It will be exciting to initiate the first doorbell to tablet notification and voice call. As soon as I figure out the PJSIP communications stack it should just work. #REALSOONNOW
 
  • Like
Reactions: mat200 and xlarons
Out of interest @newfoundlandplucky what SIP client do you use on your user end points like phones etc?
For SIP direct IP-to-IP testing I've used Twinkle on Linux and CSipSimple on Android. The reference doorbell running PJSIP works fine as an audio and messaging communications platform in that context. Still working on video so can't say much about that.

It may not be necessary to run SIP on every user end point. For example, I could run a web application on the doorbell that transcodes everything into a web page. Can also connect to a VoIP provider in which case anything with a telephone number is an end point.

Lots of possibilities when not constrained by a walled garden.
 
PJSIP appears to want uncompressed frame buffer encoding for video. Yuk. Sure enough. Running ffmpeg as a transcoder allows PJSIP to talk to the V4l2 loopback device.

ffmpeg -i rtsp://user:\Password@192.168.0.1:554/h264Preview_01_sub -vcodec rawvideo -pix_fmt bgr24 -an -f v4l2 /dev/video0
The H.264 to bgr24 conversion is too much for the raspberry pi zero arm. Need to find a pixel buffer format that uses the raspberry pi VideoCore4 media processor instead of the arm.

Before I go deeper into PJSIP will give Linphone a crack.

Linphone-based video door entry intercom system
Digital video door entry intercom systems combined with smartphones can leverage regular SIP VoIP technology to offer a new set of services to end-users: get a notification when visitors press the door bell, see them on video, interact with them via voice and video, at home or anywhere else via wifi or 3G coverage. This document describes how Linphone and Flexisip can be used together to build a SIP network dedicated to home automation and surveillance.

http://www.linphone.org/sites/default/files/solutions-intercomsystems.pdf
 
Trying out a new software stack. Turns out you don't need a SIP client other than a WebRTC capable browser. WebRTC two way audio is working fine using the NanoPI reference platform. Video should work too but for some reason just doesn't. Will get there eventually.

doorbell software architecture.png
 
Last edited:
Tested a bunch of WebRTC capable and other SIP clients to get a feel for interoperability. Video mostly works but for some reason would only show in one direction for many use cases. Audio was fine. Could be finger problems and lack of experience. I fear a giant sinkhole of time and unhappiness by proceeding along this path.

Live streaming RTSP video to a WebRTC browser using a transcoder works reliably. Sometimes has synchronization issues during the transcoding process. This is promising.
mpromonet/webrtc-streamer

SIP voice using browser WebRTC with JsSIP client works reliably. This is promising too.

Putting webrtc-streamer for video together with WebRTC JsSIP for audio is the path of least resistance. Integrating the two applications within a browser page seems like a reasonable approach

interoperability.png
 
  • Like
Reactions: dmiller
Video works really well using the WebRTC-streamer proxy. Video lag is the lowest I've seen when using a browser built-in player (and performs reliably on all tested platforms). Lip sync will be notably awful but this is not solvable given the architecture and not really a problem for this application.

My home grown RTSP media stream extensions (MSE) proxy, an alternative to the proposed RTSP WebRTC transcoder, easily runs on the doorbell itself, consuming <1% CPU, but has a weird three keyframe lag in Firefox. First keyframe displays immediately, then buffer, then play resumes. For my poorly implemented network camera this results in 12s buffering activity before video plays as expected. Seems like there is a success path for low power low delay video in here somewhere but it will take me time to find it.

Special thanks to bp2008 for helping me understand different options and how they might be used. Thank you.

Currently working on a shotgun mic design and getting the best sound from the tiny class-D amp.
The case shown below ( 86*86*26mm) will be fitted with speaker fabric for the rectangular speaker cut-out. PoE RJ45 jack will have to be de-soldered and short jumpers spliced into the circuit to make placement easier. Other than that the circuit modules will fit relatively easily.

Still waiting for the motion sensor and temperature monitoring units. Have ordered twice. ebay is cheap but cheap postal delivery is a crap shoot.

2019.04.23.-.Securrity-DoorbellPlatform.JPG
 
Last edited:
  • Like
Reactions: Halo3 and mat200
I've re-purposed the NanoPi Duo 2 as a controller for a DIY garage alarm system. This SBC appears to be robust but needs a lot more soak time to be certain. Hopefully it survives electrical spikes from a table saw and other woodworking equipment. We'll see.

As for the doorbell project I have just received a sound level db meter so I can test different speaker and microphone configurations.

Instead of the NanoPi Duo 2 I've substituted the NanoPi Neo Core 2 because it has eMMC. Hopefully this has better unexpected shutdown handling compared to SD storage. Nothing bad has happened to me but there are lots of horror stories.

The project marches forward. Lots of lag in the timeline because of the long delay when ordering all the bits and fabrication pieces from China.
 

Attachments

  • 2019.05.06.-.Security.-.GarageMonitor-01.png
    2019.05.06.-.Security.-.GarageMonitor-01.png
    412.4 KB · Views: 23
Nice! I'm keeping a keen eye on this.

I'm definitely not as technical as you when it comes to the electronics, but I'm hoping to give this a shot once you've got it to a stable place. I use Blue Iris for my other cameras and I have Home Assistant setup for smart home integration. This rig would be great to achieve interoperability with a doorbell and video feed.

I'm considering whether something like the Kuna Maximus could be a viable shell for this, pairing it with a period-style doorbell so that it would be really discreet but in-fitting with a Victorian UK house! I found an article where a chap has essentially gutted the Kuna and put his own internals in..

How to use a Kuna with Blue Iris

Best of luck mate - hopefully I can test this soon. I might go ahead and order some of the key components for the intercom capability!
 
  • Like
Reactions: newfoundlandplucky
Thanks for the link. Kuna with Blue Iris is an interesting idea and along the same lines as my original Raspberry Pi Zero based platform. All commercial-off-the-shelf components. Good. In addition he found a suitable form factor. That is a difficult and excellent achievement.

The NanoPi Core 2, or NanoPi Duo 2, with the carrier board is a good place to start an intercom project.

My concern with the intercom is that the 5V class-d mini-amplifier may not have the necessary power to drive 4 ohm 3W speakers as loudly as required. Works great on the desktop but I need to put the sound meter outside to just to measure the background noise and then compare.