Indego
Indego copied to clipboard
Home Assistant Custom Component for Bosch Indego Lawn Mower
Indego
Join the Discord channel to discuss around this integration and vote for your favourite change to happen! https://discord.gg/aD33GsP
Home Assistant Custom Component for Bosch Indego Lawn Mower.
Installation
Alternative 1
Install via HACS Community Store: https://hacs.xyz/
Alternative 2
Copy the folder indego
in custom_components
into your custom_components
in your Home Assistant.
Reboot
Reboot HA in order to get HA to find the newly added custom component.
Configuration
Authentication using Bosch SingleKey ID
Bosch moved to a new authentication method called Bosch SingleKey ID (using OAuth) at the beginning of 2023. Therefore we needed to rewrite the authentication flow.
Currently only Google Chrome is the supported for authenticating with the Bosch SingleKey ID servers when adding the integration in HA. Also a small extension needs to be installed (temporarily) in Google Chrome to handle the response from the Bosch authentication servers. More (technical) information on the why can be found in this issue.
Optionally you can remove or disable the extension after adding the Bosch Indego integration to HomeAssistant.
Installing the Chrome extension
- The HomeAssistant Indego authentication helper extension can be downloaded here.
- Extract the ZIP archive.
- Go to extensions in Google Chrome.
- Enable Developer mode (right top).
- Choose Load unpacked and select the unpacked extension.
Adding a mower
Make sure you are accessing your HomeAssistant through Google Chrome and have the HomeAssistant Indego authentication helper extension enabled (as described above).
Please add this integration through the HomeAssistant interface (Settings > Devices & Services > Add Integration). Search for Bosch Indego Mower. Configuration through YAML (configuration) files is no longer supported.
You can add this integration multiple times in case you own multiple Indego mowers.
Usage
Entities
All sensors are autodiscovered and should appear as "unused entities" after adding the component.
Description | Screenshot |
---|---|
Mower state Shows state of the mower. |
![]() |
Mower state detail Shows detailed state of the mower. |
![]() |
Lawn mowed Shows percentage of lawn mowed. |
![]() |
Total mowing time Shows the total mowing time for the mower. |
![]() |
Battery Shows the status of the battery. |
![]() |
Alerts Shows all alerts |
![]() |
Last completed mow Shows when the lawn was completed last time. |
![]() |
Next mow time Show the next planned mow. |
![]() |
Mowing mode Shows the mowing mode set. |
![]() |
Online Shows if the mower is online/offline. Possble values: True, False |
![]() |
Update available Shows if there is an update available for the firmware. Possble values: On, Off |
![]() |
Service
This list might incomplete. You can find all services provided by this component in HomeAssistant under Developer tools > Services and search for 'Bosch Indego Mower'.
indego.command
Sends a command to the mower. Example code:
command: mow
Accepted values are:
Command | Description |
---|---|
mow |
Start/continue mowing |
pause |
Pause mower |
returnToDock |
Return mower to dock |
indego.smartmowing
Changes mowing mode. Example:
enable: true
Accepted values are:
value | Description |
---|---|
true |
SmartMowing enabled |
false |
SmartMowing disabled |
indego.delete_alert
Deletes one specific Alert. Example:
alert_index: 0
deletes the latest alert.
Accepted values are:
value | Description |
---|---|
each number |
Delete Alert number X (0 for latest) |
indego.delete_alert_all
Deletes all Alerts. Example:
alert_index: 0
Accepted values are:
value | Description |
---|---|
0 |
Delete all Alerts |
indego.read_alert
Marks one specific Alert as read. Example:
alert_index: 0
marks the latest alert.
Accepted values are:
value | Description |
---|---|
each number |
Mark Alert number X as read (0 for latest) |
indego.read_alert_all
Marks all Alerts as read. Example:
alert_index: 0
Accepted values are:
value | Description |
---|---|
0 |
Mark all Alerts as read |
Examples
Creating automation in HA gui:
Example for automations.yaml:
# automations.yaml
- id: '1564475250261'
alias: Mower start
trigger:
- at: '10:30'
platform: time
condition: []
action:
- data:
command: mow
service: indego.command
Debugging
To see the debug logs from the component (and the pyIndego library) in your log file, specify these options in your configuration file:
#configuration.yaml
logger:
logs:
custom_components.indego: debug
pyIndego: debug
Supported models
As known today the following models are supported:
- Indego 1000
- Indego 1100
- Indego 1200
- Indego 10C
- Indego 13C
- Indego 350
- Indego 400
- Indego S+ 350 1gen
- Indego S+ 350 2gen
- Indego S+ 400 1gen
- Indego S+ 400 2gen
- Indego S+ 500
- Indego M+ 700 1gen
- Indego M+ 700 2gen
Contribution
If you experience any readings from your mower that the sensor does not read out correct (could be Alerts or mower state), please dont hesitate to write an issue. I need your input in order to make this component as useful as possible. All suggestions are welcome!
Known issues
- A special Chrome plugin is required to complete the account linking in HomeAssistant.
- The Bosch Cloud (running on Azure) might block this integration from time to time. You might see HTTP 4XX errors like 'The connection to the Bosch Indego API failed!'. This might happen during component setup or during state updates. In that case you might be able to workaround the issue by changing the user agent (during initial component setup or for existing components under Settings > Devices & services > Bosch Indego Mower > Configure).
- You might see HTTP 5XX errors from time to time (most of time once a day). In that case there is a problem on the Bosch Cloud side which is temporary unavailable.
- HTTP 5XX errors can also occur right after you have sent an impossible command to the mower. Like docking the mower while it's already docked.
New issues
If you experience issues/bugs with this the best way to report them is to open an issue in this repo.
Credits
Thanks to
Eduard Jumper78 dykandDK ultrasub Gnol86 naethan bekkm onkelfarmor ltjessem nsimb jjandersson Shamshala nath bekkm urbatecte Windmelodie Fuempel MagaliDB mhosse Promises Sander1988
Fork from iMarkus/Indego https://github.com/iMarkus/Indego
Inspiration from http://grauonline.de/wordpress/?page_id=219
Inspiration from https://github.com/jofleck/iot-device-bosch-indego-controller