Announcing the new Neato (Connect) SmartApp and Neato Botvac Connected Series device handler. This enables you to connect Smartthings with the Neato Botvac robot vacuum cleaners using Neato’s official APIs.
Author - @Alyc100
getCSSData and HTMLTile elements - @tonesto7
@roberto - Neato Cloud Service team.
@sidjohn1 - Original Roomba Thinking Clenaer device from which this is inspired from.
This integration is provided completely free of charge and is open source. If however you really feel like it, you can make a donation here
Ensure you install the latest versions of both the Smart App and Device Handler
If you’re upgrading from v1.1.7 or earlier to v1.2 or later, you need to reconfigure your SmartSchedules. Sorry about this.
If you’re upgrading from v1.1.6 or earlier to v1.1.7 or later, you need to reauthorize your Neato credentials. Open the Neato(Connect) smart app in the ST mobile app, scroll to the bottom and tap the reauthorize item.
Smart App - Neato (Connect) v1.2.6c - Updated 17/04/2019 12:00
- (v.1.2.6c) Notification issue workaround.
- (v.1.2.6b) Handle regularly changing secret key from Neato API.
- Option to delay cleaning if bin is full.
Device Handler - Neato Botvac Connected Series v1.14 - Updated 13/10/2020 20:45
- (v1.14) Move persistent map and turbo mode tiles to device settings.
Supported Neato Models
- Neato Botvac Connected
- Neato Botvac D3 Connected
- Neato Botvac D4 Connected
- Neato Botvac D5 Connected
- Neato Botvac D6 Connected
- Neato Botvac D7 Connected
- Full control over Neato Botvac via Smartthings including usage in rules and routines (i.e, WebCoRE)!!
- Smart Scheduling of your Botvacs
- Configurable notifications on Botvac status
- Force clean option when your Botvac hasn’t cleaned in a while
- Auto dock option
- Auto setting of SHM to Armed(Stay) when Botvac is on whilst in Armed(Away) mode
- View the latest cleaning statistics
- View the latest cleaning map (D3 and D5 requires firmware v4.x or later)
To install the Neato (Connect) app:
Add the Neato (Connect) app from GitHub as a new ‘My SmartApps’, select create from code option and paste. Click the ‘Create’ button. Save and Publish.
VERY IMPORTANT STEP - Click ‘App Settings’ in the top right corner. In the ‘OAuth’ section, click the ‘Enable OAuth in Smart App’ button and click ‘Update’.
Add the Neato Botvac Connected Series device type from GitHub as a new ‘My Device Handlers’, select create from code option and paste. Save and Publish.
Add the Neato (Connect) app within the Smartthings mobile app from the Marketplace, then selecting the ‘SmartApps’ tab and locating the Neato (Connect) app under the ‘My Apps’ section which should be at the bottom of the list.
Log into your Neato account via the smart app when first opened.
You should be able to select your Neato Botvacs in the configuration screen.
Once you have selected your devices, click Done on the top right.
Your selected devices should automatically be configured and appear under ‘Things’ with the label Neato Botvac - [Botvac Name] (may require SmartThings app restart).
When upgrading from an earlier version of the smart app, ensure you open the app within Smartthings mobile app and click ‘Done’ on the top right to ensure the app initiates correctly.
Github Repository Integration details:
Owner: alyc100, Name: SmartThingsPublic, Branch: master
SmartSchedule allows your Botvacs to clean on a regular interval but only on a configured trigger such as when Smartthings enters an away mode or if certain presence sensors leave.
Smart scheduling allows you to configure various rules to automate when your Botvacs start their clean. Smart scheduling also notifies you when your Botvac is about to clean so that you have time to clean obstacles from the floor and make sure that internal doors are open. You can set up a smart schedule from within the Neato (Conenct) smart app.
Current smart scheduling rules allow you to:
- Determine a preferred cleaning interval in days
- Tell smart schedule what triggers when you want your Botvac to clean including modes, presence sensors, switches or no triggers for just date and time restrictions.
- Restrict schedule based on time of day and day of week so that your Botvacs do not start in the middle of the night.
- Specify override switches to stop an upcoming cleaning schedule from happening.
NOTE: When enabling SmartSchedule, this will automatically disable the Neato Schedule functionality from the Neato mobile app.
Device Tile Guide
From the top, here is a guide of the tiles:
[Top Panel] - Main switch and detailed status messages
Starting Top Left and in order:
- Neato Botvac status overview.
- Battery level.
- Charging status. Whilst charging this is yellow.
- Bin status (Full or empty).
- Docking status (Docked, Undocked or Dock). Note that when this says ‘Dock’ you can press the tile to send Botvac back to base.
- Whether your Botvac has seen it’s base on a cleaning cycle. If status is ‘SEEN’ and green, then it will fully dock itself when sent back to base. If status is ‘SEARCHING’ and yellow, then it will head back to starting location but won’t fully dock.
- Neato Botvac Connected model/D7 model - Toggle button to set Botvac Cleaning Mode to either Turbo or Eco.
- Neato Botvac D5 model - Find Me button
- Neato Botvac D3 model - Neato logo and doesn’t do anything
- Neato Botvac Connected model - Neato logo and doesn’t do anything.
- Neato Botvac D5/D3 model - Toggle button to set Botvac Navigation Mode to either Standard or Extra Care.
- Neato Botvac D7 model - Find Me button
- Toggle button to set Botvac Neato Schedule on or off. Neato Scheduling is configured within the Neato mobile app. This cannot be activated if SmartSchedule from the Neato (Connect) smart app is enabled. Not to be confused with SmartSchedule which is configured within the Neato (Connect) smart app (I realised this could be confusing after I implemented the feature ).
- Reset Schedule button to stop upcoming cleaning schedule and reset smart schedule interval countdown.
- Neato API connection status.
- Refresh button to force a status refresh.
Post your comments and feedback on this topic. Please be aware this is version 1 so I expect there to be some bugs.