Skip to content

program_phase and remaining_program_time not reset when operation_state returns to Ready #302

@Kuchiru

Description

@Kuchiru

The problem

Appliance: Bosch SMV4HAX40N/39

When using HomeConnect Local with a Bosch dishwasher, the entity states become inconsistent after a program finishes.

Specifically:
sensor_operation_state correctly transitions to Ready
sensor_program_phase remains on the last phase (e.g. drying) or becomes unknown after reload
sensor_remaining_program_time keeps its previous value instead of resetting to 0

This results in an inconsistent state model where the appliance reports Ready, but phase and remaining time still indicate an active or unfinished program.

Observed Behavior

  1. Start dishwasher program.
  2. Let it run to completion.
  3. When program finishes:
  • sensor_operation_state → Ready
  • sensor_remaining_program_time still shows last reported duration (e.g. 2.58 hours)
  • sensor_program_phase remains on last phase (e.g. drying)

If the integration is reloaded:
sensor_program_phase may show unknown (likely because value 0 is not mapped to a translated state)
The appliance does not appear to emit updated values for program phase or remaining time after completion; only operation_state changes.

Resetting the Dishwasher
Resetting the Dishwasher does not result in any improvement, the remaining_program_time will however change to 4.58 hours.

Expected Behavior
When the appliance transitions to:

operation_state = Ready
active_program = None

It would be expected that:
remaining_program_time resets to 0
program_phase transitions to an idle/none state

This would keep the entity model logically consistent.

Diagnostics information

config_entry-homeconnect_ws-01KHRHE3M5TA4AX85H9M8K282A.json

Debug log

home-assistant_homeconnect_ws_2026-02-19T21-12-37.443Z.log

Description files

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions