Amcrest video doorbell AD110 initial impressions

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 :slight_smile:
  • 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:[email protected][cameraIP]/cgi-bin/magicBox.cgi?action=reboot
  • rtsp stream url works, subtype=0 for HD, 1 for SD:
    rtsp://user:[email protected][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 :slight_smile: :innocent:

Edit 1:

  • Found a way to view sd card recording in VLC:
    rtsp://user:[email protected][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.

3 Likes

Is app required or this just easy method?
I presume direct cinnect from PC from web/cam local ip is possible

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.

That’s disappointing :pensive:

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?

@huuub, here is my setup:

Configuration.yaml:

amcrest:
  - host: 192.168.1.xxx
    name: Doorbell Camera
    username: !secret amcrest_account
    password: !secret amcrest_password
    scan_interval: 1
    stream_source: rtsp
    binary_sensors:
      - motion_detected
      - online

ui-lovelace.yaml:

                  - 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.

Hope this helps.

1 Like

@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.

For some reason I can’t see it. It just keep getting me the turning wheel.
(on VLC I can see the stream)Screenshot 2020-02-27 at 00.41.59

@huuub, stream integration enabled in configuration.yaml?
Reload couple of times may help too :slight_smile:

I added
stream:

Still the same… grrr

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.

I am using the latest version of hassio on ubuntu 18.04 (I just rebooted it)

I see an error :

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)

That’s the same url that works in VLC, right?
Just going through the list:

  • ffmpeg integration installed?
  • any other working rtsp camera working in HA?
  • share your configuration to debug

Ok @JTPublic
Had to hide some stuff and tried to make it work but it still doesn’t.
I have hassio running in docker on Ubuntu 18.04

Here is my configuration :
https://pastebin.com/zYH7F7LD

Any help is really appreciated

@huuub I’m not using docker so you’ll need other docker experts on that :slight_smile:

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):

So, when you click on the circle i, for camera.doorbell, the pop-up does not show the doorbell stream, just a spinning arrow?

That all looks the same.
Having these errors too:

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.