A Kobold vacuum robot plugin for homebridge.
Go to file
2021-05-10 10:06:49 +02:00
.github/workflows Update npm.yml 2021-04-30 14:41:40 +02:00
archive initial merge attempt 2021-05-08 19:33:37 +02:00
src newest neato change: fix spot cleaning 2021-05-10 10:06:49 +02:00
.gitignore update gitignore 2021-05-09 16:19:28 +02:00
CHANGELOG.md characteristic handlers 2021-05-10 09:13:06 +02:00
config.schema.json minor restructuring 2021-05-10 09:53:47 +02:00
LICENSE update package 2021-05-08 18:53:18 +02:00
nodemon.json initial merge attempt 2021-05-08 19:33:37 +02:00
package-lock.json update package 2021-05-08 18:53:18 +02:00
package.json initial merge attempt 2021-05-08 19:33:37 +02:00
README.md Update README.md 2021-05-03 13:16:30 +02:00
tsconfig.json add tsconfig 2021-05-08 18:55:09 +02:00

Latest NPM release

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

  • German, English or French Language Setting

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. Adapt the value for token.

Simple

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

You can get a token using the GUI tool Kobold Token Getter or 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.

The language can be de for German, en for English, or fr for French.

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"],
    "language": "de"
  }
]

Tested robots

  • Vorwerk Kobold VR300