Skip to content

Conversation

astrandb
Copy link
Contributor

@astrandb astrandb commented Aug 3, 2025

Proposed change

Add device automations - conditions to miele integration.
The status sensor, for example sensor.washing_machine is exposed as a device_condition.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:
  • Link to developer documentation pull request:
  • Link to frontend pull request:

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Ruff (ruff format homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.

To help with the load of incoming pull requests:

"rinse_hold": "{entity_name} is in rinse hold",
"in_use": "{entity_name} is in use",
"service": "{entity_name} is in service",
"supercooling": "{entity_name} Supercooling is active",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"supercooling": "{entity_name} Supercooling is active",
"supercooling": "{entity_name} supercooling is active",

"in_use": "{entity_name} is in use",
"service": "{entity_name} is in service",
"supercooling": "{entity_name} Supercooling is active",
"supercooling_superfreezing": "{entity_name} Supercooling/superfreezing is active",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"supercooling_superfreezing": "{entity_name} Supercooling/superfreezing is active",
"supercooling_superfreezing": "{entity_name} supercooling/superfreezing is active",

"program_interrupted": "{entity_name} has interrupted program",
"programmed": "{entity_name} is programmed",
"rinse_hold": "{entity_name} is in rinse hold",
"in_use": "{entity_name} is in use",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the difference between "in service" and "in use" obvious?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should probably be "under service" below, like "under maintenance".

Copy link
Contributor Author

@astrandb astrandb Aug 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have tried to follow the wording and spellings from Miele when reasonable. We can end up with a mess if we "improve" too much. At least the user will recognise the terms from their appliance, manuals and other sources (though Miele designers and authors are not consequent)
I suggest that we stay with the suggested terms. Changing them here also means that we must change in entity names, states etc.
Regarding "service" and "in use" the difference may not be obvious but the states are what they are. They are reportded this way from the API.

Copy link
Contributor

@NoRi2909 NoRi2909 Aug 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The issue here is that the keys are in use and service.
As I understand it the latter one stands for maintenance?

In that case translating it as "in service" changes the meaning to more or less the opposite.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no guidance from Miele what "service" means in this context. Could be "in service", "under maintenance", "requires service", or something else. Let us use "in service state" here and await response from the user community.

"service": "{entity_name} is in service",
"supercooling": "{entity_name} Supercooling is active",
"supercooling_superfreezing": "{entity_name} Supercooling/superfreezing is active",
"superfreezing": "{entity_name} Superfreezing is active",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"superfreezing": "{entity_name} Superfreezing is active",
"superfreezing": "{entity_name} superfreezing is active",

"supercooling": "{entity_name} Supercooling is active",
"supercooling_superfreezing": "{entity_name} Supercooling/superfreezing is active",
"superfreezing": "{entity_name} Superfreezing is active",
"superheating": "{entity_name} Superheating is active",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"superheating": "{entity_name} Superheating is active",
"superheating": "{entity_name} superheating is active",

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not a native speaker but for me it looked like as if it should not be capitalized b/c it's in the sentence, or?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Those are all feature names therefore the capitalization is correct.
But Miele seems to use "SuperCool" and "SuperFreeze" in their UI:

https://shop.miele.com.au/en/kitchen/refrigeration/
https://www.mieleusa.com/c/rumored-for-a-reason-mastercool-refrigerators-7026.htm
https://www.mieleusa.com/c/high-end-refrigerators-3291.htm

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As mentioned above Miele are not consequent. All these variants can be found:

  • Supercool
  • SuperCool
  • Supecooling
  • SUPERCOOLING
  • and more...
    The switch entity and state are named Supercooling. I suggest that we stay with the same name in all contexts in this integration.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the German translation I see "SuperCool" and "SuperFrost" used by Miele, so they could not decide to stick to either English or partly translate into German either.

Just for clarification: "Superheating" is used for what device classes?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I cannot remember that I have seen Superheating in use. I got the code map from Miele a couple of years ago and I just entered it when I created the custom component once upon a time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants