A Kobold vacuum robot plugin for homebridge.
Go to file
2020-12-13 22:51:05 +01:00
accessories adapt for node-kobold-control api 2020-12-13 18:31:44 +01:00
characteristics Renamed spot repeat button 2019-09-24 20:32:09 +02:00
_config.yml Set theme jekyll-theme-cayman 2017-04-30 18:06:45 +02:00
.gitignore Added gitignore 2019-07-20 22:20:31 +02:00
CHANGELOG.md Updated changelog 2019-10-19 17:33:58 +02:00
config.schema.json correct typos in config.schema.json 2020-12-13 22:20:01 +01:00
index.js adapt for node-kobold-control api 2020-12-13 18:31:44 +01:00
LICENSE Further adapt README.md, Licence and Package 2020-12-12 15:52:26 +01:00
package.json adapt package dependency 2020-12-13 10:23:59 +01:00
README.md Update README.md 2020-12-13 22:51:05 +01:00

homebridge-kobold

This is a plugin for homebridge to control your Vorwerk Kobold VR300 vacuum robot. You can download it via npm.

It is based on a fork of naofireblade's homebridge-neato, merged with the oAuth authentication mechanism from nicoh88's homebridge-vorwerk.

The interaction with the Server is handled by the underlying node-kobold-control module.

Features

  • House Cleaning
    • Eco mode
    • Extra care navigation
    • Nogo lines
  • Zone cleaning 1
  • Spot cleaning
    • Individual spot size 2
    • Clean twice 2
  • Return to dock
  • Find the robot
  • Schedule (de)activation
  • Robot information
    • Battery level
    • Charging state
    • Dock occupancy
    • Model and firmware version
  • Automatic or periodic refresh of robot state
  • Multiple robots

2 You can send the robot from one room to another as well. He will return to the base, wait there some seconds and then starts cleaning the next room.

3 You need a third party app like eve to access these features.

Installation

  1. Install homebridge using: npm install -g homebridge
  2. Install this plugin using: npm install -g homebridge-kobold
  3. Update your configuration file. See the sample below.

Configuration

Add the following information to your config file. Change the values for email and password.

Simple

"platforms": [
	{
		"platform": "KoboldVacuumRobot",
		"token": "YourToken"
	}
]

You can get a token using the following two curl commands:

# This will trigger the email sending
curl -X "POST" "https://mykobold.eu.auth0.com/passwordless/start" \
     -H 'Content-Type: application/json' \
     -d '{
  "send": "code",
  "email": "ENTER_YOUR_EMAIL_HERE",
  "client_id": "KY4YbVAvtgB7lp8vIbWQ7zLk3hssZlhR",
  "connection": "email"
}'

==== wait for the email to be received ====

# this will generate a token using the numbers you received via email
# replace the value of otp 123456 with the value you received from the email
curl -X "POST" "https://mykobold.eu.auth0.com/oauth/token" \
     -H 'Content-Type: application/json' \
     -d '{
  "prompt": "login",
  "grant_type": "http://auth0.com/oauth/grant-type/passwordless/otp",
  "scope": "openid email profile read:current_user",
  "locale": "en",
  "otp": "123456",
  "source": "vorwerk_auth0",
  "platform": "ios",
  "audience": "https://mykobold.eu.auth0.com/userinfo",
  "username": "ENTER_YOUR_EMAIL_HERE",
  "client_id": "KY4YbVAvtgB7lp8vIbWQ7zLk3hssZlhR",
  "realm": "email",
  "country_code": "DE"
}'

From the output, you want to copy the id_token value.

Advanced

Below are explanations for advanced parameters to adjust the plugin to your needs. All parameters are optional.

refresh
Timer for periodic refresh of robot state. The default is auto. The options are:
auto Updates the robot state when a cleaning was started via homekit so that you can activate automations based on a successful cleaning.
120 Or any other time in seconds (minimum 60) is required if you want to receive robot state updates after starting the cleaning from outside of homekit (e.g. neato app or schedule).
0 Disables background updates completely.

hidden
List of plugin features that you don't want to use in homekit (e.g. dock, dockstate, eco, nogolines, extracare, schedule, find, spot).

"platforms": [
	{
		"platform": "KoboldVacuumRobot",
		"token": "YourToken",
		"refresh": "120",
		"hidden": ["dock", "dockstate", "eco", "nogolines", "extracare", "schedule", "find", "spot"]
	}
]

Tested robots

  • Vorwerk Kobold VR300