Unifi Protect with Home Assistant

Upgrading from Eufy

Recently I upgraded from a Eufy Doorbell and set of security cameras. The cameras worked fine, but I found the doorbell notifications were quite slow, and that made it kind of pointless. These camera’s couldn’t really be integrated properly with Home Assistant (at least not in a useful way). In addition to this, there were some concerns with Eufy’s security. For this reason alone, replacing them had been on my plans, but only now did I have the opportunity to do this.

After upgrading my home network to Unifi equipment, I decided to with Unifi cameras and doorbell as well. I don’t necessarily think these are the best value, but the overall feedback is that they work well and that they can easily be integrated with Home Assistant. There’s a few steps that need to be followed but yes, I can agree that they do indeed work really well with Home Assistant.

I know there are cheaper options, and Frigate can be used for detection etc with great success, but honestly, I just wanted a more straightforward solution that would just work. As much as I enjoy spending time on this hobby, I didn’t really want to spend more time than necessary on this.

Hardware

I decided to go with the following:

  • Unifi Doorbell Lite
  • Unifi G6 Turret Camera - covering my driveway/front of the house)
  • Unifi G5 Turret Ultra Camera - covering the small back garden

All of these are PoE powered. I had no pre-existing cabling in most of the house, so I hired a professional to do the install. I could probably have managed to do it myself, but paying some money is definitely worth to avoid having to climb on a long ladder to install the cameras outside a two-storey house.

Integrating with Home Assistant

Initial Setup

There’s a few steps that need to be followed, but the Home Assistant documentation for Unifi Protect is quite extensive. You need to create a local user and create an API Key (the user MUST have the Super Admin predefined role to allow creating the API Key, but you can change this afterwards. Once you add this in Home Assistant, camera feeds, sensor entities, and control entities all show up automatically.

To use the thumbnails and videos from the endpoints within Home Assistant, you need to retrieve the nvr_id. The details on how to retrieve it can be a bit confusing, but if you play a Unifi Protect video from within the Home Assistant Media browser you can retrieve it from the URL.

Notifications

What I get notified about

There are 3 main things I am using notifications for:

How I get notified

As for what devices I get notifications for, I use the Home Assistant Companion App to get notifications on our Android phones; Notifications for Android TV for our TV, and, recently, I have started using QuickBars for Home Assistant (the author of QuickBars recently open-sourced the code. It works really well, and it even supports picture-in-picture notifications with live camera feeds!).
Below I share the code for my automations using all three notification methods.

Doorbell ringing

If the doorbell is pressed, I need to know. Thumbnail gets sent to the phones, PiP live stream is shown on the TV (if it is being used) and the speakers downstairs play a message. Straightforward enough.

People approaching entrance

This one might be a bit less obvious. I noticed that some delivery companies would knock on the door but ignore the doorbell. 1

I created a line crossing trigger within the Unifi Protect app. Unfortunately, this doesn’t get exposed as a sensor to Home Assistant. You can however create a notification in Home Assistant to trigger a webhook. All it takes is creating a webhook automation trigger in Home Assistant and using that as the target. This works locally too. You can include the thumbnail and use it for the automation as well.

Backyard animal and people detection

My backyard is enclosed, so if someone is detected there during the night or when we are out, that generates a notification.

Finally, if an animal is detected, I get notified. This has two main purposes. Sometimes one of my cats escapes, and this lets me know if she is trying to get back in.
The other scenario is where a neighbour’s cat visits. Poppy goes absolutely mental when she sees this orange cat, to the point where she ends up attacking our other cat. Having a notification with the thumbnail allows me or my partner to manage the situation before things escalate.

Final Thoughts

The switch from Eufy was straightforward, and the result is a setup that genuinely does what I wanted: reliable notifications, fast enough to be useful, with proper Home Assistant integration that doesn’t require workarounds or third-party hacks.

Was it cheap? No. Unifi hardware carries a premium, and adding professional installation on top makes it harder to justify purely on cost. But the reliability has been there from day one, and the integration with the rest of my Unifi network makes the whole thing feel cohesive rather than bolted together.

The automation logic is functional, but there is room to make it smarter. Right now the conditions are fairly blunt - time windows, door sensor states, alarm modes. Longer term I’d like to tighten those up, reducing false positives further without missing anything genuinely worth knowing about.

If you’re already in the Unifi ecosystem and want cameras that integrate cleanly with Home Assistant without a lot of fuss, this setup is hard to argue against.

Footnotes

  1. Don’t ask me why. I don’t think it is a case of not noticing the doorbell. The first time, it happened with a damaged package, and I thought that had been intentional. However, over the last month it seems that at least one DPD driver consistently ignores the doorbell. It could be as simple as them noticing I have a toddler in the house, and not wanting to wake them up in case of a nap. I have seen neighbours with warnings on the door asking couriers not to ring for that reason. ↩