Homebridge plugin for Eufy RoboVac
A full rewrite of apexad/homebridge-eufy-robovac to
Switch on / off. When switching off, the RoboVac will return to charging dock first.
Display battery level, and notify on low battery.
Display battery charging state.
Find robot
To access your RoboVac, you need both the deviceId
/localKey
.
To get the deviceId
/localKey
use the eufy-clean-local-key-grabber
repository.
In the README of that project it says they are not sure if it still works, but I can confirm that it still works as of August 2024.
This easiest way to use this plugin is to use homebridge-config-ui-x.
To configure manually, add to the platform
section of homebridge's config.json
after installing the plugin.
Command: npm install -g @hov3rcraft/homebridge-eufy-robovac
Config:
{
"devices": [
{
"name": "<deviceName, required>",
"deviceId": "<deviceId, required>",
"localKey": "<localKey, required>",
"deviceIp": "<deviceIp, defaults to undefined>",
"useSwitchService": "<true | false, defaults to false>",
"findButtonEnabled": "<true | false, defaults to true>",
"batteryInformationEnabled": "<true | false, defaults to true>",
"errorSensorEnabled": "<true | false, defaults to true>"
}
],
"debugLog": "<true | false, defaults to false>",
"platform": "EufyRobovac"
}
You can add multiple RoboVacs under devices
.
deviceName
: Give each device a unique name.
deviceId
/localKey
: Required to access your device's API (see instructions above).
deviceIp
: If your device has a static IP, enter it here to improve performance.
useSwitchService
: By default, RoboVac will be added to Home app as a fan accessory (since HomeKit does not natively support vacuums). If set to true, a Switch accessory will be used instead.
findButtonEnabled
: If set to true, a switch that performs the 'Find Robot' function will also be added.
batteryInformationEnabled
: If set to true, the device will show information about the battery charge level and charging status.
errorSensorEnabled
: If set to true, a motion sensor that reacts to the device's error messages will also be added. Also, the devices error messages will be logged to HomeBridge.
debugLog
: Diverts the log messages for all log levels directly to the console.
platform
: Tells Homebridge that this platform config belongs to this plugin. Do not change.
This plugin is written in TypeScript. You should just need to run npm run build
after making changes in the src/
directory.