The capabilities are based on Miele API version 1.0.7. The official capability overview is here https://www.miele.com/developer/assets/API_V1.x.x_capabilities_by_device.pdf . Note that this matrix is not entirely correct. Some devices lack support and some devices support features that are not marked.
All supported appliances will show a status sensor, some appliances will show more sensors, however only freezers, refridgerators, coffee machines, dishwashers and washer/dryers will have a more complete support. Changes on the appliances will be pushed to HA and displayed immediately. As a backup the status is read from the cloud every 60 seconds.
Read more on design philosophy etc in the Wiki
Make sure you have the app credentials available for your account with Miele cloud. You have to register on https://www.miele.com/developer/. If you have an existing integration with the name "miele" you are recommended to remove it before attemping to install this one.
- Use HACS, search for Miele integration and download it.
- Restart Home Assistant
- Copy all files from custom_components/miele in this repo to your config custom_components/miele
- Restart Home Assistant
Goto Integrations
> Add Integration
and select Miele
. Sometimes you must refresh the browser cache to find the integration.
Follow instructions to authenticate with Miele cloud server. First, you'll provide the app credentials acquired at https://www.miele.com/developer/. Next, you'll sign in using your Miele account. Allow full access for the Home Assistant client.
Documentation (at least some...) can be found in the wiki
There are many ways to setup a development environment.
The recommended option is to use the VS Code Dev Container. You need to have Docker installed.
-
For best performance, clone the repo in a named volume.
-
Open a new, empty window in VS Code.
-
Press
Ctrl
+Shift
+P
and selectDev Containers: Clone Respository in Named Container Volume
-
Fill in your repo and your chosen names at the prompts
-
Wait for the container to be built
-
Press
Ctrl
+Shift
+P
and selectTasks: Run Task
>Run Home Assistant on port 9123
. -
Wait for Home Assistant to start and go to http://localhost:9123/.
-
Walk through the Home Assistant first-launch UI.
-
Go to http://localhost:9123/config/integrations, click
Add Integration
and add theMiele
integration. -
To debug, press
F5
to attach to the Home Assistant running in the container. -
Your configuration.yaml will be persistent (survives rebuild of container).
Alternatively, you can run Home Assistant directly on your machine/WSL2. The following procedure works fine in the hands of the maintainer developing with VS Code on WSL2/Windows.
- Make sure you have at least python3.11 installed on your WSL.
- Create a fork on github
$ git clone https://github.com/{your_user}/miele
$ cd miele
$ make install_dev
Home Assistant has defined a code style. Run make lint
before pushing your changes to align with the peferred style.
There are many ways to test the integration, three examples are:
-
run Home Assistant in the development container as described above
-
copy all files in
custom_comonents/miele
tocustom_components/miele
in your HA configuration directory -
mount
custom_components/miele
into a HA development container
To handle submission of translations we are using Lokalise. They provide us with an amazing platform that is easy to use and maintain.
To help out with the translation of Miele integration you need an account on Lokalise, the easiest way to get one is to click here then select "Log in with GitHub".
When you have created the account, click here to join the project. If you want to add a new language, please open an issue.
The translations are pulled when a new release of the integration is prepared. So you must wait until there is a new release before you look for your updates.
If you want to add new elements that need translation you should enter them in /translations/en.json and submit a PR. The new keys will appear in Lokalise when the PR is merged.
If you find bugs or other issues please download diagnostic information from the Miele integration card or from the device page and attach the file to your issue report. One recurring issue is the translation of Program name and phases. This is due to sparse, if any, documentation from Miele. One way to assist with the fact collection is to install a blueprint automation that will log states from the selected sensor with some additional information to the Home Assistant log. Create one automation for each sensor you want to monitor
The blueprint can be found here https://gist.github.com/astrandb/5ec47d6979b590639d23144142ae3100
The package and its author are not affiliated with Miele. Use at your own risk.
The package is released under the MIT license.
This project is supported by