Just installed my Amcrest AD110 wifi video doorbell the other day, has been testing and integrated into HA.
Parts/Quality:
nothing standout as high quality but adequate
nice touch with included screwdriver/drill bit, extra faceplate, optional wires.
Installation:
mostly painless, made sure there is strong wifi and right size transformer for power
plenty of installation/review video online, I followed digiblurDIY
Installation location can be a problem, see below.
Amcrest Smart Home App:
this is different app from the Amcrest View Pro I used for my other Amcrest camera, they do not work across product types.
basic live view and stored video playback.
configuration options are quite limited, and no video config at all as of version 3.3.2.
app connection has been spotty, about 30% of times video disconnected/failed.
motion detection zones are the grid map you mark on/off. I cannot turn off an area without Clear setting to start over.
Doorbell/video/motion:
chime kit works partly for me, instead of ding-dong, now doorbell just ding or dong. On-camera speaker chimes loud.
notification when someone rings the doorbell is speedy, 2-way talk sound quality is acceptable.
Video quality is good, even in SD.
I set motion detection range to low end because of nearby trees. Detection was sensitive enough and not too many false positive, yet.
HA integration: WARNING: using and/or testing any non-official software and commands with this device may brick it. (I already hard reset mine couple of times testing AMCREST HTTP API, be warned)
I used the current amcrest integration, camera and sensors showed up correctly even though AD110 is not āofficiallyā supported. ffmpeg_argument to change resolution did not work.
I have enabled stream in config and the camera works well with picture cards but only with camera_view: live. Video connection is actually better than their app but with 3-10sec delays.
I did not found a sensor for doorbell ring status, Iām using my door sensor hack doorbell for that.
Impressions:
This is my first video doorbell but have other Amcrest camera, so I cannot compare to other video doorbell, but the doorbell functions as claimed.
The video is good like other Amcrest camera I have.
Usable in HA with current amcrest integration with limitations.
Their app needs work!! No video config in app, cannot change frame rate, night vision toggle, etc.
Location problems, like too close to door frame/wall, the reset/sd card side may be blocked, IR reflection from frame/wall makes night vision useless (a wedge to angle the face of doorbell away from reflecting surface may help)
no option to download video to local NAS/FTP etc., may have to try more amcrest API.
a lot of the existing Amcrest http API works, like rebooting: http://user:password@[cameraIP]/cgi-bin/magicBox.cgi?action=reboot
rtsp stream url works, subtype=0 for HD, 1 for SD:
rtsp://user:password@[cameraIP]/cam/realmonitor?channel=1&subtype=1
Disclosure:
I got the doorbell before I received their rebate offer. I was going to do this write-up anyway, works out well
Edit 1:
Found a way to view sd card recording in VLC:
rtsp://user:password@[cameraIP]:[port]/cam/playback?channel=1&startTime=YEAR_MM_DD_HH_MM_SS&endTime=YEAR_MM_DD_HH_MM_SS, for example, startTime=2020_02_16_00_00_00 &endTime=2020_02_16_23_59_59 will play the last recorded video on 2020-02-16 from 00:00:00 to 23:59:59, (playback will cut off video started or continued outside of startTime/endTime). Need to figure how to use it with HA notification.
was testing different APIs, AD110 live view stopped working all of a sudden everywhere, recording play and settings still worked. Needed to hard reset (press/hold reset button until led blinks and hear HARD RESET IN PROGRESS) to get live view back.
Edit 2:
Thanks to @GaryOkie, definitely stay away from HTTP/cgi-bin API for this doorbell camera which will hang this camera and need hard reset.
If doorbell hangs (offline on app, no response to doorbell button, led on), disconnect power until led ring is off, and hard reset as described in Edit 1 to start over with setup. If you want to keep existing recordings on the SD card, take it out and backup before starting setup. After set up, better reformat the SD card.
AFAIK, you can only set up the doorbellās wifi and password through the Smart Home app, after that I can access the rtsp stream but doorbell notification (to do 2-way talk) still has to go through the app. There is no web interface for this doorbell, unlike their cameras.
I added it in Home Assistant but I am unable to show the stream. It just rotates.
Could you share your settings in configuration.yaml?
What card do you use?
Thx!
Hey thanks for the thorough write up. When you say the intercom āsound quality is acceptableāā¦ did it have any issues with lag? Did you have to setup router voip rules for it to work well?
- type: picture-glance
title: Front Door
camera_image: camera.doorbell_camera
camera_view: live
entities:
- entity: camera.doorbell_camera
Notice, only camera_view: live works at this point since AD110 is not officially supported by the amcrest integration. I canāt get image element in picture-element card to work with it either.
Also, I got 10-20s delay for my doorbell camera in HA using camera.doorbell_camera via the amcrest integration but down to 2-3s if I pass it through Tinycam Pro server first.
@truglodite, I am only able to do it through the Amcrest app, the lag is about 1s when I tested it in front of the doorbell holding the phone. The app takes care of the intercom function, I donāt have to setup anything extra besides the app/doorbell install.
What version are you on? Iām on 105.2. Try restart?
Last thing to try is set it up as generic camera, not through amcrest integration, using the rtsp api.
2020-02-27 01:15:04 INFO (MainThread) [homeassistant.components.stream] Started stream: rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0
Exception in thread stream_worker:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/threading.py", line 926, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.7/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/src/homeassistant/homeassistant/components/stream/worker.py", line 49, in stream_worker
container = av.open(stream.source, options=stream.options)
File "av/container/core.pyx", line 275, in av.container.core.open
File "av/container/core.pyx", line 227, in av.container.core.Container.__cinit__
File "av/container/core.pyx", line 129, in av.container.core.ContainerProxy.__init__
File "av/container/core.pyx", line 195, in av.container.core.ContainerProxy.err_check
File "av/utils.pyx", line 105, in av.utils.err_check
av.AVError: [Errno 22] Invalid argument: 'rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0' (16: tcp)
@huuub Iām not using docker so youāll need other docker experts on that
From your config, Iām not sure ffmpeg is set up correctly for docker.
For me:
ffmpeg:
ffmpeg_bin: /usr/bin/ffmpeg
I suggest make sure ffmpeg is set up correctly and working first.
Note: If you set the stream_source option to rtsp , make sure to follow the steps mentioned at FFmpeg documentation to install the ffmpeg .
In the Developer Tools/States panel, there should be 3 entities associated with the amcrest doorbell (motion_detected, online, camera), this is what I have (the bottom 3):
2020-03-14 13:19:56 ERROR (stream_worker) [libav.tcp] Port missing in uri
2020-03-14 13:20:55 WARNING (SyncWorker_1) [amcrest.http] <FrontDoor:Z05BEB6A4A9CB> Trying again due to error: HTTPError('500 Server Error: Internal Server Error for url: http://192.168.1.15:80/cgi-bin/snapshot.cgi')
2020-03-14 13:20:55 ERROR (MainThread) [homeassistant.components.amcrest.camera] Could not get image from Doorbell camera due to error: CommError
Tried now the sonoff camera and rtsp feed.
Also the same error :
2020-03-17 21:06:55 INFO (MainThread) [homeassistant.components.stream] Started stream: rtsp://rtsp:[email protected]:554/av_stream/ch0
Exception in thread stream_worker:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/threading.py", line 926, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.7/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/src/homeassistant/homeassistant/components/stream/worker.py", line 49, in stream_worker
container = av.open(stream.source, options=stream.options)
File "av/container/core.pyx", line 275, in av.container.core.open
File "av/container/core.pyx", line 227, in av.container.core.Container.__cinit__
File "av/container/core.pyx", line 129, in av.container.core.ContainerProxy.__init__
File "av/container/core.pyx", line 195, in av.container.core.ContainerProxy.err_check
File "av/utils.pyx", line 105, in av.utils.err_check
av.AVError: [Errno 22] Invalid argument: 'rtsp://rtsp:[email protected]:554/av_stream/ch0' (16: tcp)
@huuub I would suggest fixing the issue with docker/rtsp first before adding amcrest integration to the mix. I would be happy to help with the doorbell integration when rtsp is working for you.