The Miele integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] allows users to integrate their home appliances using the official 3rd party API.
Miele is known as a manufacturer of premium appliances for cooking, laundry care, and floor care.
Use cases
- Monitor the multiple sensors of the appliance and trigger automations based on these sensors.
- Monitor the program status of the appliances.
- Control settings on the appliances.
Note
Note that the feature availability depends on the appliance model.
Supported devices
You can find general information about supported devices on the Miele website. The integration supports any Miele appliance connected to a Miele user account. Miele WiFiConn@ct appliances can be connected directly via a Wi-Fi router. Miele Zigbee appliances must use the Miele@home Gateway XGW3000.
The appliance must be connected to the Miele CloudService by using the Miele app.
Note
New generation washer/dryers and new generation vacuum cleaners: Endpoints for the new generations are not yet available and will be released in the fall of 2025.
Prerequisites
Make sure that you have your username, password, and country available for your Miele account.
Configuration
To add the Miele hub to your Home Assistant instance, use this My button:
Miele can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.
The integration configuration may ask for Client ID and Client Secret. See Troubleshooting below and Application Credentials for more details.
Supported functionality
Note
-
The entitiesâ availability depends on the appliance type and the generation of the product, and the appliance might not support all the entities for its type. Please refer to the product manual for details on implementation of specific functions.
-
Products from professional and semi-professional series are generally not supported due to the limitations in the Miele 3rd party API.
-
Some appliances donât report data while they are turned off, so corresponding entities will not appear in the Miele integration after loading until the appliances are turned on.
Binary sensor
Button
Climate
Fan
Light
Select
Sensor
Switch
Vacuum
Actions
Action miele.set_program
Set and start a program for applicable appliances. Note that the device must be in a state where it will accept a new program, for example, most washing machines must be in state on and many appliances must be set manually to âMobileStartâ or âMobileControlâ in advance. An error message is displayed if the device did not accept the action command.
The action can be set up by UI in Automations editor. It can also be executed in Developer tools.
| Data attribute | Optional | Description |
|---|---|---|
device_id |
no | Select device in GUI mode, then switch to YAML mode to see the device_id. |
program_id |
no | Enter the program_id number. The easiest way to find the number is to use the get_programs action from developer tools. It can also be found by fetching a diagnostic download while running the actual program. Use the value from the key state.programId.value_raw. |
Action miele.set_program_oven
Set and start a program for oven appliances. Note that the device must be in a state that will accept a new program. For example, most ovens must be in the state on, and many appliances must be set manually to âMobileStartâ or âMobileControlâ in advance. An error message is displayed if the device does not accept the action command.
The action can be set up by UI in the Automations editor. It can also be executed in the Developer tools.
| Data attribute | Optional | Description |
|---|---|---|
device_id |
no | Select device in GUI mode, then switch to YAML mode to see the device_id. |
program_id |
no | Enter the program_id number. The easiest way to find the number is to use the get_programs action from developer tools. It can also be found by fetching a diagnostic download while running the actual program. Use the value from the key state.programId.value_raw. |
duration |
yes | Set an optional duration for the oven program. |
temperature |
yes | Set an optional target temperature for the oven program. |
Action miele.get_programs
Get the list of available programs and associated parameters for applicable appliances. The API will return an empty list if the device doesnât support programs (for example, freezers). Same requirements on device state as described for set_program action above.
| Data attribute | Optional | Description |
|---|---|---|
device_id |
no | Select the device in GUI mode, then switch to YAML mode to see the device_id. |
Automation examples
Get started with these automation examples
Send a notification when the appliance ends the program
Set program and start washing machine
Load your washing machine and manually activate mobile start or remote control mode on the machine.
Data updates
This integration uses server-sent events from the Miele API to receive live updates from the appliances. When the configuration entry is loaded or after a streaming error (for example after disconnection), the integration will request all data (such as appliance info, available commands, programs, settings, and status) for all appliances.
Known limitations
- The Miele 3rd party API does not fully match the Miele app. Some programs, options, or settings available in the app may not be accessible or usable via the API.
- This integration supports only one integration entry, as the Miele 3rd party API does not allow for the unique identification of an account.
Troubleshooting
Removing the integration
This integration follows standard integration removal. If you have entered your own credentials, you will be asked if you want to keep them or delete them. If you want to delete them later you can do that from the tree-dot menu in Settings > Devices & services.
To remove an integration instance from Home Assistant
- Go to Settings > Devices & services and select the integration card.
- From the list of devices, select the integration instance you want to remove.
- Next to the entry, select the three dots menu. Then, select Delete.
