Eufy Camera Integration

You can read about the component itself here

Lovelace

type: vertical-stack
cards:
  - type: entities
    entities:
      - entity: script.start_face_detection
        name: Recognize a face
      - entity: image_processing.detect_face_eufy_camera
        name: Number of persons
      - entity: sensor.persons_hall_rus
        name: Identified person
      - entity: input_boolean.face_recognition_system
        icon: mdi:face-recognition
      - entity: input_boolean.send_a_picture_in_a_telegram
        name: Send a snapshot
      - type: custom:fold-entity-row
        head:
          type: section
          label: Camera Settings
        open: false
        entities:
          - entity: switch.eufy_camera_device_enabled
            name: Camera
          - entity: switch.eufy_camera_rtsp_stream_enabled
            name: Stream RTSP
          - entity: switch.eufy_camera_led_status
            name: LED
          - entity: switch.eufy_camera_auto_nightvision
            name: Night Vision
          - entity: switch.eufy_camera_motion_detection
            name: React to movement
          - entity: switch.eufy_camera_sound_detection
            name: React to sound
          - entity: switch.eufy_camera_pet_detection
            name: React to animals
          - entity: script.reloading_the_corridor_camera
            name: Restart the camera
    title: Camera

1 Like

Started a topic around this here: Eufy Security Integration

Until we have a better solution (@bachya is working on this here: Eufy Camera Integration - #1258 by bachya), I have come up with an intermediate one here. It is far from perfect but it is working for me, so if you are interested you can install custom integration over here: GitHub - fuatakgun/eufy_security

It also requires you to setup a node server to communicate with eufy devices. I have captured these steps in README file. With this integration, you can turn on/turn off your cameras and start playing stream inside home assistant.

Big thanks to @bropat who made server thing happen. GitHub - bropat/eufy-security-ws: Small server wrapper around eufy-security-client library to access it via a WebSocket.

4 Likes

I did some work on using automations to cast the picture to a TV.
This uses the mqtt work others have done.
Scripts in the post if they are of use to anyone.
https://plugmeinnow.com/post/655148518056624128/ding-dong

1 Like

@Ed-O Is this a live Snapshot or a picture of the “last event”. I have yet to find an integration or service that can pull a live snapshot from a Eufy Doorbell without using the last event snapshot recorded by Eufy which is usually delayed so long that it doesn’t serve purpose. I’ve been messing with this for a week and have essentially given up.

Yes. It uses the picture form last_event url off the HA box.
It works on my box and TV.
I did have it triggered by ‘person detect’ first for testing and that was not fast enough - it normally showed someone who rang the doorbell about an hour ago :slight_smile:
When I moved to the trigger ‘bell rung’ it got the image of the person walking up and works fine.

On my settings-
Under ‘streaming to smart displays’, I have ‘smartphone first’ selected.
Under ‘notifications’, I have ‘include thumbnail’ selected.
My bell (a 2K battery/charge one) is on Wifi. The chime unit is wired into ethernet. The HA box is ethernet too.
Hope something there helps.

1 Like

you can initiate live stream when you receive an event as rang the doorbell and try to cast the video on your TV, not sure if it supports. This should enable/disable livestream: Eufy Security Integration

Just set this up today (although I hard-coded the message and picture into the rest command on the yaml file as I couldn’t get your method working), works a charm so far - exactly what I’ve been looking for!
Doorbell press now triggers that notification and also pauses whatever’s playing on my Shield or LG TV.
Thank you!! :grin:

1 Like

How do you trigger a camera capture when the trigger (binary_sensor) for motion/person detection fires? The picture I’m getting from last_event is usually from an older event.

You are right, I have modified eufy-security-ws server to push latest picture URL and created a pull request here: propogate picture URL when motion/person detected by fuatakgun · Pull Request #20 · bropat/eufy-security-client · GitHub
You can apply this locally.

@bachya since this topic is exploding, can we somewhere follow your progress on all this? separate?
I’m waiting for yours before doing anything with eufy

4 Likes

ive managed to get the last stream showing in homeassistnat using ffmpeg - i havent seen it mentioned anywhere else so heres my code:

camera ffmpeg:
  - platform: ffmpeg
    input: "http://192.168.0.24:8082/eufy-security.0/**CAMERA_ID**/last_event/**CAMERA_ID**.m3u8"
    name: CCTV-01
3 Likes

With the Outdoor cameras and a base station there is an automations tab when you can make one camera or motion sensor trigger another camera to start recording. They show up as linked events in the Eufy app. Is there any method at the moment to do a remote trigger with Home Assistant? If there isn’t a way of doing this can one start a live stream and record that to storage somehow?

Yes, you can initiate it using integration. Your camera will start streaming over RTSP and you can use home assistant functionality to record it in your server.

I’ve got an issue in eufy-security-python-ws that I’m using to keep track of progress. Hopefully that’ll work.

Incidentally, coming along:

Just an FYI: I had a close family member share a scary diagnosis over the weekend; there will be days where working on this (as my day job allows) is a welcome relief, but other days, I’m not sure how much I’ll be able to focus. Appreciate everyone’s patience.

17 Likes

Family first, always. :pray:

9 Likes

Wow great.
Will follow it there…
As already said here.
Family business comes first !

2 Likes

I was able to set this up finally. Many thanks to the OP and to @bropat for the server wrapper
The ability to have some trigger set off streaming the camera to any arbitrary chromcast target is next level stuff IMO.
There does seem to be a transcoding lag of about 12 seconds. Will need to do some research to determine if it will be possible to reduce this

1 Like

Thank you for your efforts! One thing I’d like to request is the addition of the Eufy motion sensor. The one that I have is detected, but as a camera entity. I know it’s the sensor because it’s the only device that is located in that area. I’d really love to be able to use it for automations, because the Aeotec Multisensor 6 that I have has stopped detecting motion at all.

Thanks!

EDIT: I ended up getting it to work with the Eufy Home Assistant MQTT Bridge

1 Like

Hi all, I have improved half baked custom integration and added add-on support. Please take a look at README file to install everything flawlessly :slight_smile:

Big thanks to @bropat who made this possible. Please consider buying a coffee for him over here: https://ko-fi.com/bropat

4 Likes

when you used the previous integration, nothing was functional, right?