Installation and Configuration - homebridge-eufy-security/plugin GitHub Wiki
- Homebridge: Ensure you have Homebridge installed (version >= 1.6.0).
- Homebridge UI: It's highly recommended to have the Homebridge UI installed.
- Node Versions: The plugin supports node versions v18.
- Dedicated Admin Account: Before proceeding, create a dedicated admin account for the plugin.
- Navigate to the 'Plugins' page.
- Search for
homebridge-eufy-security
. - Click 'Install'.
For platforms that support global plugin installations:
sudo npm i homebridge-eufy-security -g
If you use the Homebridge UI then a configuration screen will appear after installing the plugin where you can enter your Eufy credentials.
See below for more information on configuration options, JSON configuration templates and other optional settings if you like to edit the configuration manually.
And voila your supported Eufy Security devices should be added to your Homebridge instance.
After installation of the plugin a configuration pop up will autoamtically appear. If it does not, simply go to the 'Plugins' page and click 'Settings' on the plugin tile.
You will be greeted with a login page. Please enter your eufy credentials for the dedicated admin account. It is important to choose the same country that you have set up in your eufy account!
If you have enabled 2FA the config ui will guide you through the process. After successfully logging in, you should see an overview of the eufy devices that are connected to your account.
From the overview you have access to the 'Plugin Settings' and individual settings for every device. For the latter you simply click the icon of the approbiate device.
The available settings for every device depend on the type of device. Please take note that some devices act both as camera and station at the same time. That is why these devices show up multiple times in the overview.
Here you can change some settings reagarding the overall behaviour of the plugin.
Also you can download log files if you have trouble with the plugin, or you can remove all associated files from the homebridge storage path. See Reset/Clear for more information.
After clicking on a device you can edit it's settings. The available settings depend on the type of device.
All devices can be ignored, so that they will not be added to HomeKit by the plugin. This is useful if one of your devices has native HomeKit capabilities and you don't want it to be added twice in HomeKit.
Most settings are self-explanatory, but here are some tipps to get you started:
-
New cameras will first handled as motion sensors only. To enable camera mode, set the approbiate option in it's settings. (This does not apply to doorbells, since these will always be handled as cameras).
-
Audio is not enabled by default.
-
Please consider unbridging devices if it is available, since this can improve stability. See Unbridged and Bridged Mode for more information.
-
Depending on your hardware please be cautious. It might well be that a Raspberry Pi is not capable of streaming, delivering up-to-date snapshots and process the data needed for HomeKit Secure Video at the same time.
A detailed overview over the advanced settings regarding streaming can be found here
A guide to HomeKit Secure Video can be found here
Allthough the plugin incorporates a lot of own functionality, many of it is dependend on the data provided by the eufy devices. Some settings can only be made in the official eufy app. A few examples are:
- Settings for input stream quality (that's then encoded for HomeKit). See here.
- Settings for push notifications. These are necessary to update the devices status reliably. See here.
- Settings for motion detection.
- ...
This plugin depends on the eufy-security-client library to establish the connection to the eufy devices. We try to convert the devices capabilities to HomeKit as close as possible to the native ones found in the eufy app, but sometimes the functions are not (yet) available through the underlying library.
You can find a list of supported devices for this library here: Supported Devices through eufy-security-client.
If 2FA is activated on your account, or there is a captcha request while logging in, you will have to use the configuration screen via the 'Plugins' page of Homebridge UI. Otherwise the plugin will not be able to log you in!
Add the following to your configuration file in the appropriate place. The following are the basic required fields.
{
"platform": "EufySecurity",
"username": "************",
"password": "************",
}
⚠️ The"platform": "EufySecurity"
line must not be changed- both
username
andpassword
are required
We advise you to use Family/Guest Account dedicated for the plugin instead of your current credential you're using for Eufy Security App. You must set admin right and not guest rights.
We recommend to enable 2FA.
Entry | Type | Default | Explanation |
---|---|---|---|
pollingIntervalMinutes |
number | 10 |
This setting sets the period in minutes at which the client will refresh the devices data from the eufy cloud. Normal updates will be gotten through push notifications. |
CameraMaxLivestreamDuration |
number | 30 |
How long before a livestream is automatically ended. (in seconds) |
enableDetailedLogging |
boolean | false |
This enables debug messages in the log output. See Logging for more detail. |
ignoreStations |
array | [] |
Serial numbers of stations to ignore listed here (separated by a comma) |
ignoreDevices |
array | [] |
Serial numbers of devices to ignore listed here (separated by a comma) |
hkHome |
number | 1 |
Change how Home mode in the HomeKit security system is mapped to the modes in the Eufy App |
hkAway |
number | 0 |
Change how Away mode in the HomeKit security system is mapped to the modes in the Eufy App |
hkNight |
number | 3 |
Change how Night mode in the HomeKit security system is mapped to the modes in the Eufy App |
hkOff |
number | 63 |
Change how Off mode in the HomeKit security system is mapped to the modes in the Eufy App |
country |
string | US |
Eufy Country selected during the install process (need to be changed if you have set another country in your eufy account) |
Here is Config JSON example
{
"platform": "EufySecurity",
"username": "xxxxxxxxxxxxxxx",
"password": "xxxxxxxxxxxxxxx",
"pollingIntervalMinutes": 30,
"hkHome": 1,
"hkAway": 0,
"hkNight": 3,
"hkOff": 63,
"enableDetailedLogging": 0,
"ignoreStations": [],
"ignoreDevices": [],
"country": "US",
"CameraMaxLivestreamDuration": 30,
}