Awesome
Miele Integration for Home Assistant
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
Installation
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.
Preferred download method
- Use HACS, search for Miele integration and download it.
- Restart Home Assistant
Manual download method
- Copy all files from custom_components/miele in this repo to your config custom_components/miele
- Restart Home Assistant
Setup
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.
Support - Wiki - Documentation
Documentation (at least some...) can be found in the wiki
Development
There are many ways to setup a development environment.
Dev Container
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).
Without a Dev 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
Translation
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.
Debugging and filing issues
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
Disclaimer
The package and its author are not affiliated with Miele. Use at your own risk.
License
The package is released under the MIT license.
Support and cooperation
This project is supported by