Home Connect

The Home Connect integration allows users to integrate their home appliances supporting the Home Connect standard for Bosch and Siemens using the official cloud API.

The integration will add one Home Assistant device for each connected home appliance which will have the following entities:

  • A power switch
  • If the device has programs, switches for each of the individual programs will be added. Note that program options cannot be configured currently.
  • If the device has programs, a timestamp sensor for remaining time and a numeric sensor for the progress percentage.
  • Light:
    • Hoods:
      • Functional light: on/off and brightness
      • Ambient light: on/off, brightness, HSV and RGB
    • Dishwasher: on/off, brightness, HS and RGB
    • Cooling appliances: Both, external and internal lights, on/off and brightness
  • Numbers that set the temperature of cooling appliances.
  • Time for alarm clock for cooktops and ovens.
  • Multiple sensors that report the different states and events reported by the appliance.
  • Binary sensors that show binary states of the appliance.

Note

Note that it depends on the appliance and on API permissions which of the features are supported.

Note

Some devices only have the state on and turn off is not supported by the appliance, check power state availability at Home Connect API documentation for more information.

Prerequisites

  1. Visit https://developer.home-connect.com and sign up for a developer account.
  2. Enter the email of your login for the original Home Connect App from Bosch/Siemens under “Default Home Connect User Account for Testing” in the sign up process.
  3. Go to the Applications page and select Register Application:
  • Application ID: Home Assistant (or whatever name makes sense to you)
  • OAuth Flow: Authorization Code Grant Flow
  • Redirect URI: https://my.home-assistant.io/redirect/oauth
  • Go to https://my.home-assistant.io/ and make sure that your Home Assistant URL is set there. For example: http://homeassistant:8123/ or http://homeassistant.local:8123
  1. On success, you will be redirected to the Applications page. Select Details for your app. Make note of the client ID and secret - you will need it for the next step. Log out of the Home Connect developer portal.
  2. In Home Assistant, find the Home Connect integration and launch it. You will be prompted to create an Application Credential. You will need to provide a name (it’s arbitrary) in addition to the Client ID and Secret from the previous step. Then, follow the steps in the UI to complete setup.

Important

  • Power on all your appliances during the integration configuration process; otherwise, appliance programs list will be empty.

  • To update the appliance programs list, you can reload the Home Connect integration when an appliance is turned on. If the re-initialization process is not triggered by reload, restart the Home Assistant when an appliance is turned on.

  • After performing the steps above, log out of your Home Connect Developer account. If you don’t do this, the configuration steps below will fail during OAuth authentication with the message “error”: “unauthorized_client”.

  • The provided Home Connect User Account email address must be all lowercase; otherwise, it will result in authentication failures.

  • All changes in the developer portal take 15 minutes before the change is implemented.

I have manually disabled My Home Assistant

If you don’t have My Home Assistant on your installation, you can use <HOME_ASSISTANT_URL>/auth/external/callback as the redirect URI instead.

The <HOME_ASSISTANT_URL> must be the same as used during the configuration/ authentication process.

Internal examples: http://192.168.0.2:8123/auth/external/callback, http://homeassistant.local:8123/auth/external/callback.”

Configuration

To add the Home Connect integration to your Home Assistant instance, use this My button:

Manual configuration steps

If the above My button doesn’t work, you can also perform the following steps manually:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & Services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select Home Connect.

  • Follow the instructions on screen to complete the setup.

The integration configuration will ask for the Client ID and Client Secret created above. See Application Credentials for more details.

Actions

The Home Connect integration makes various actions available. Available actions: set_option_active, set_option_selected, pause_program, resume_program, select_program, start_program and change_setting

Action home_connect.set_option_active

Sets an option for the active program.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.
key no Key of the option.
value no Value of the option.
unit yes Unit for the option.

Action home_connect.set_option_selected

Sets an option for the selected program.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.
key no Key of the option.
value no Value of the option.
unit yes Unit for the option.

Action home_connect.pause_program

Pauses the current running program.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.

Action home_connect.resume_program

Resumes a paused program.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.

Action home_connect.select_program

Selects a program without starting it.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.
program no Program to select.
key yes Key of the option.
value yes Value of the option.
unit yes Unit for the option.

Action home_connect.start_program

Selects a program and starts it.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.
program no Program to select.
key yes Key of the option.
value yes Value of the option.
unit yes Unit for the option.

Action home_connect.change_setting

Changes a setting.

Data attribute Optional Description
device_id no Id of a device associated with the home appliance.
key no Key of the setting.
value no Value of the setting.