This is a plugin for homebridge to control your Vorwerk Kobold VR200 and VR300 vacuum robot. You can download it via npm.
Based on naofireblade's homebridge-neato.
Feel free to leave any feedback here.
- Start and pause cleaning
- Start and pause spot cleaning
- Return to dock
- Toggle schedule
- Toggle eco mode
- Toggle nogo lines
- Toggle 4x4 mode (spot)
- Toggle repeat mode (spot)
- Get battery info
- Get dock info
- Periodic refresh of robot state
- Support for multiple robots
- Install homebridge using:
npm install -g homebridge
- Install this plugin using:
npm install -g homebridge-vorwerk
- Update your configuration file. See the sample below.
Add the following information to your config file. Change the values for email and password.
"platforms": [
{
"platform": "VorwerkVacuumRobot",
"email": "YourEmail",
"password": "YourPassword"
}
]
"platforms": [
{
"platform": "VorwerkVacuumRobot",
"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.
The following config contains advanced optional settings.
The parameter refresh sets an interval in seconds that is used to update the robot state in the background. This is only required for automations based on the robot state. The default value is auto
which means that the update is automatically enabled while cleaning and disabled while not cleaning. You can set a value in seconds e.g. 120
to enable background updates even when the robot is not cleaning. You can also disable background updates completely by setting the value 0
. This might be required if you experience timeouts in the app because you have other home automation apps that are connected to your robot.
The parameter disabled accepts a list of switches/sensors that can be disabled in the neato homekit plugin (e.g. dock, dockstate, eco, schedule, spot).
"platforms": [
{
"platform": "VorwerkVacuumRobot",
"token": "YourToken",
"refresh": "120",
"disabled": ["dock", "dockstate", "eco", "nogolines", "schedule", "spot"]
}
]
- Vorwerk Kobold VR200 (Firmware 2.1.3 & 2.1.4)
- Vorwerk Kobold VR300 (Firmware 4.2.4)
If you have another connected vorwerk robot, please tell me about your experience with this plugin.
- Initial release
- Release for npmjs
- Added config parameter to disable switches/sensors
- Fixed compatibility with homebridge 0.4.23 (occupancy sensor not working)
- Fixed a rare bug where the robot stops after some seconds of cleaning
- Added errorlog while refreshing robot state
- Add support for vorwerk kobold vr300
- Added noGo lines button
- Added extra care navigation button
- Added syncing cleaning options from last run
- Added option to disable background state update completely
- Changed goto dock button is now always off
- Changed error handling
- Changed debug messages
- Updated node-kobold dependency to 0.1.3
- Fixed an exception when no robot is associated with the account
- Fixed cleaning with / without nogoLines
- Added support for spot cleaning with repeat (2x) and 4x4 mode #3
- repeat and 4x4 mode are not persistent, after a reboot of homebridge set it to off/false - use it for spot cleaning in compination with homekit scenes or automations
- Add oauth mechanism to support the MyKobold app