Skip to content

Home Assistant Custom Component for Bosch Indego Lawn Mower

License

Notifications You must be signed in to change notification settings

sander1988/Indego

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub release hacs_badge

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.

Entities in Home Asistant

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

  1. The HomeAssistant Indego authentication helper extension can be downloaded here.
  2. Extract the ZIP archive.
  3. Go to extensions in Google Chrome.
  4. Enable Developer mode (right top).
  5. 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.
State
Mower state detail
Shows detailed state of the mower.
State Detail
Lawn mowed
Shows percentage of lawn mowed.
Lawn mowed
Total mowing time
Shows the total mowing time for the mower.
Mowtime total
Battery
Shows the status of the battery.
Battery sensor percent
Alerts
Shows all alerts
Alerts sensor
Last completed mow
Shows when the lawn was completed last time.
Last mow
Next mow time
Show the next planned mow.
Next mow
Mowing mode
Shows the mowing mode set.
Mowing mode
Online
Shows if the mower is online/offline. Possble values:
True, False
Online status
Update available
Shows if there is an update available for the firmware. Possble values:
On, Off
Update available

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

Services

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.

Issue link

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

Buy Me A Coffee