Alternative to the built in home connect integration

The original Home Connect integration written by DavidMStraub - for connecting to Bosch/Siemens appliances has been broken for some time for a range of users and the support tickets against it aren’t getting any love (it’s not updating states, it’s not keeping the token refreshed, it’s not handling all values from all devices etc)

I’m very grateful for for the work David put in to create it, I understand he no longer has time to support it. It was adopted as an internal integration and frankly it’s been flat out broken for me (and others but possibly not everyone) for several HA releases and that’s just not good enough for my purposes.

I’ve found a new one that’s under active development and doesn’t seem to suffer from the same issues and seems unknown to the community.

Available here:

Available via HACS as “Home Connect Alt”

Hope that helps someone else!

5 Likes

Hi Iceman,
Great that you are bringing this integration to the attention. Have been using this “Home Connect Alt” for months now and can recommend it to anyone. The developer is very involved in this project and always responds very quickly.

Just got this up and running. Will be interesting to see how it performs.

Hi, @Iceman and @_Mitch07 I am also very happy to use this integration. I am trying to build an automation to remote start my dishwasher and set the relative start time depending on cheapest electricity price (already calculated in a sensor of mine). I am using the BSH.Common.Option.StartInRelative but I get a failure when triggered

Stopped because an error was encountered at 6 oktober 2022 21:18:12 (runtime: 2.05 seconds)
Key BSH.Common.Option.StartInRelative has unexpected type or value 240

It does not accept the value of 240. If this works I will replace the static value of 240 with a sensor value and I might need some help to figure out to replace 240 with a sensor value. Is it as simple as {{ my_sensor }}?

My entire automation so far as reference:

- id: '1664733031975'

  alias: Starta diskmaskin

  description: ''

  trigger:

  - platform: state

    entity_id:

    - binary_sensor.401050387033031080_bsh_common_status_doorstate

    from: 'on'

    to: 'off'

  condition:

  - condition: time

    after: '16:00:00'

    alias: Efter kl 16:00

  action:

  - service: home_connect_alt.select_program

    data:

      device_id: 6e4fb0e0fe1c7b682e0ef1b03cf3c809

      program_key: Dishcare.Dishwasher.Program.Auto2

  - service: home_connect_alt.set_program_option

    data:

      device_id: 6e4fb0e0fe1c7b682e0ef1b03cf3c809

      key: BSH.Common.Option.StartInRelative

      value: '240'

  - service: home_connect_alt.start_program

    data:

      device_id: 6e4fb0e0fe1c7b682e0ef1b03cf3c809

  mode: single

Currently the best integration for home appliances manufactured by BSH, much more is able to manage and give data than the official !!!

1 Like

This integration is much more reliable than the official integration!

I get follow error

File "/config/custom_components/home_connect_alt/services.py", line 37, in async_start_program
    await appliance.async_start_program(program_key, options, validate)
  File "/usr/local/lib/python3.12/site-packages/home_connect_async/appliance.py", line 334, in async_start_program
    if opt.key in self.available_programs[program_key].options and (not self.startonly_options or opt.key not in self.startonly_options):
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: argument of type 'NoneType' is not iterable

Normally it works, only this combindation somehow have an issue

  - data:
      validate: true
      device_id: xxxx
      program_key: LaundryCare.Washer.Program.EasyCare
      options:
        - key: LaundryCare.Washer.Option.Temperature
          value: "Auto"
    action: home_connect_alt.start_program

How would I use the operation state for automations? I’m trying to notify if the dishwasher is paused but can’t seem to figure out the trigger based on the operation state as it only shows unknown.


Use the entity that says 18% in the image.

The line above it the Operation State which says Run currently and said Paused when it was paused. I guess I can try that 18% line and if it doesn’t change for 10 minutes or something then notify that it is likely paused.