Amcrest video doorbell AD110 initial impressions

Thanks for the info on your lag times. I discovered that my real-time clock on Windows hadn’t synchronized in a while, so it was 2 seconds behind.

Also, a clarification I made earlier about capturing snapshots from the AD110. It turns out if you use the FFMPEG camera with the RTSP command as input, it will automatically grab a frame from the stream and provide a snapshot every 10 seconds for viewing in lovelace Picture_Elements (Auto mode).

So you were talking about the “snapshot” as the auto mode in picture_elements, then yes, that is also refreshed every 10s for my MJPEG camera/TinyCam/AD110 setup, not possible with the Amcrest integration.

correct - we’re on the same page, just different camera setups that do the essentially the same thing. So is TinyCam running on your personal phone or dedicated on some other device so it’s not dependent on your phone always having a connection?

On a different note - the RTSP cam/playback command is working great to stream specific clips from my Dahua NVR, including the AD110 which is recording 24x7. Once I get the automation worked out with the start/end timestamps, I can convert the stream to MP4 via ffmpeg command. Then I can play back doorbell/motion events in lovelace. This actually will solve my AD110 video lag and not even need to run camera.record.

Too bad the same technique can’t be used to read the AD110 SD-Card directly without fear of locking it up.

I hear you :smile:
Still waiting for AD110 to be properly integrated with HA.

Most of my workaround is done with the TinyCam on a spare wifi galaxy tab, quite amazed how much it can handle, 7 cams on that server.

Do you see extra spike on CPU with the HA rtsp camera? I tried HA rtsp camera setup before and that created extra process for each rtsp stream and took 10-15% CPU load each.

I have been trying to do I believe exactly what you have done on my tab as well.
Can you share a tutorial on how you accomplished it.
I have 6 cameras plus doorbell. All work great on a server running blueiris.
But I am interested in something portable that I can keep with me in tv room at night.
Tried doing it in a kiosk style but failed.
Any help greatly appreciated.
carltonb

Hi Carlton, welcome to the AD110 discussion. We’re well beyond this Amcrest Doorbell “initial impressions” topic, huh? :laughing:

I don’t use Blue Iris so can’t say how well this works, but you ought to check out this tutorial on integrating BI with HA.

I have it working in BI in HA fairly well. Hangs once in a while though, but I can live with it.
Just would love to get it set up on my tablet to carry around the house.
Appreciate all the work you have done with us amateurs.

No, not at all. Just retested this, and on the lovelace page showing 5 cameras, all in auto/snapshot-every-10-seconds mode, CPU was at 5%. Then I live streamed the Amcrest Doorbell video in HD, CPU jumped up to a whopping 6% :slight_smile:

This is on a Raspberry Pi 4 (2gb).

camera:
#Amcrest AD110 Doorbell Camera
  - platform: ffmpeg 
    input: rtsp://<admin:password>@<ip_addr>/cam/realmonitor?channel=1&subtype=0
    name: "Amcrest Doorbell"

All my cams use TinyCam predefined cam settings based on the brand/model.
For AD110, it’s not officially support by TinyCam yet.
I just used the same setting of my Amcrest cam (model IPM-HX1), on-camera motion detection not working though, you will need to set up in-app motion detection or 3rd party app.

TinyCam will display your cams in all kinds of arrangement you want so you can use it as a display on your desk/bedside/wall.

In Settings>Web Server, you can choose port to use, username, password for stream access. https does not work with HA due to certification(?) though.
The server will run in the background once you enable it on the sidebar menu.
You can also set it to auto start on boot in the Settings>UI & behavior.

For HA integration, you can set each of the stream from TinyCam server up as a camera, or use the url directly in camera cards.

A typical stream url without username/password:
http:///axis-cgi/mjpg/video.cgi?camera=[camera number in TinyCam]&fps=5
(not 100% sure the fps= does anything in HA)

You will have to test how many cams can be served smoothly given your tablet/wifi connection/etc., YMMV.
Also, keep an eye on the temperature and power usage of the server-enabled tablet.

Hope this help.

Thank you for testing. It’s been a while, maybe rtsp camera has improved since, will test that again.

What we’re really waiting on is for Amcrest to properly document their API for Doorbell connectivity beyond their SmartHome app - as well as fix a number of omissions (especially snapshot) and fix firmware freezing and/or bricking the doorbell from existing API commands that apparently aren’t supported properly.

I think there’s little chance of fully integrating the doorbell into Home Assistant (without workarounds) until:

  1. Amcrest cooperates/fixes firmware/documents the API;
  2. The python_Amcrest library is updated with the doorbell features;
  3. Feature updates added to the Amcrest component or a new component developed.

…in that order. Can’t really do #3 without the others first, unless some brilliant reverse engineering discovers another path to snapshots, doorbell presses, etc. That’s just my view.

I’ve pleaded this very case for firmware/API improvements to the Amcrest doorbell product team, but I’m not holding my breath.

EDIT (May 6): today I received a reply from the Amcrest AD110 Product team saying they were forwarding my review and request for updated API docs to the R&D team. Hope they respond.

1 Like

Hi,

I thought it is the best doorbell for Home Assistant, but I cannot buy it in the Netherlands.
Now I read this all, I am not that sure anymore. Hopefully it updated with the needed fixes.
I want to test this, but it is not available to send it to the Netherlands.

Greetings,
Jacob

The hardware is adequate, quite reasonable for the price, its firmware/app needs more work, especially for DIY purposes. :smile:

Does the LED ring on this change color like the SkyBell? Is it as easy to change if it does?

The LED ring around the button is always blue. It doesn’t change with motion or any API command. The only thing that changes is when the button is pushed, the LED flashes blue in a circle.

Thank you for the clarification. I had pretty much come to that conclusion on my own, but it’s still nice to get a solid confirmation. I am seriously looking at this as it’s far more flexible than my SkyBell. I was hoping to be able to change the LED color as I do now with the SkyBell to indicate the status of the lock. Not a deal breaker though…

I too had a Skybell and used color change notifications via HA. I don’t really miss it that much, just a “nice to have” feature. What I absolutely do miss is the ability to switch off motion sensing notifications from the Amcrest SmartHome app like you could do with the Skybell HA integration.

Still, the tradeoff to have live RTSP streaming beats the Skybell hands down with the current HA integration.

I have seen other mention using an old android phone and Tasker for the button press action. I will likely use the rtsp feed and motionEye for motion sensing and notification rather than the built in motion sensor. I rarely turned the SkyBell motion off unless it was a really windy day. There is a palm tree straight out from my door and the blowing branches would trigger it. Don’t really need the motion detection though as I never really used it for much.

Even though the Skybell HA integration supported button/motion events, I was using an old Android phone+Tasker for this instead since it was much faster. It was a simple matter for me to reconfigure Tasker to trigger events for the AD110.

Very interesting - I had not considered using MotionEye for motion sensing/notification. Please keep us updated how well this works with the AD110.

As long as I can get a rtsp stream from the doorbell, it should work real well. I have a camera in my laundry room right now that detects motion using motionEye. When motionEye detects motion, it begins to record as well as sends a MQTT packet that is used to trigger a tensorflow scan of the video stream. If a person is detected, a snapshot is saved. The scan continues every few seconds until the motion event ends. I could very easily use this to set a binary sensor in HA and use it for anything I chose. Once the motion event is over, another MQTT packet is sent to end the process. I expect that this is going to be a very busy thing once I get all of my cameras placed. I’m expecting to build out a separate machine (most likely a NUC) for motionEye to run on. Right now, I’m running it in a docker container on my NAS.