Control all your Miele devices from KNX! Everything is possible using the new Miele LBS (Logic Building Block: 14360) for the Gira Homeserver.
See the video for some examples and see how easy it is to configure!
Change the color of your Kitchen Hood, Start the Coffee Machine when you wake up or set the Freezer to Vacation Mode when you’re on holiday. Everything is possible using the Gira Homeserver and the new (free!) Miele Building Block.
Inputs
Input | Name | Init | Type | Description |
---|---|---|---|---|
1 | Debug | 0 | Boolean (0/1) | 0=off, 1=on. When ON it will only show debug output on the Homeserver display (VGA/console) itself. |
2 | Client ID | “” | Text | See instructions above how to receive a free Cliend ID. |
3 | Client Secret | “” | Text | See instructions above how to receive a free Cliend Secret. |
4 | Username | “” | Text | Same username as you use on the Miele App (usually your e-mail address). |
5 | Password | “” | Text | Please note that I found some issues with the Miele API and passwords with special characters. Only passwords using a-z, A-Z and 0-9 are tested. |
6 | Account Language | “” | Text | In example: nl-NL or de-DE. |
7 | Device | “” | Text | In example: 345934593535. |
8 | Get All Devices | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get all the devices info and write output to Output 3. |
9 | Get Device | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get the single device information (as on input 7) and write output to Output 3. |
10 | Get Ident | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get the single device information (as on input 7) and write output to Output 4. |
11 | Get State | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get State information for the device (as on input 7) and write output to Output 5, 8, 9 and 10. |
12 | Get Actions | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get Actions information for the device (as on input 7) and write output to Output 6. |
13 | Get Programs | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get Programs information for the device (as on input 7) and write output to Output 7. |
14 | Set JSON Actions | “” | Text | Any text will trigger. Can be any advanced action (for the device on input 7), in example: {“targetTemperature”:[{“zone”:2,”value”:-20}]} |
15 | Set JSON Programs | “” | Text | Any text will trigger. Can be any advanced Program (for the device on input 7), example: {“programId”:24,”duration”:[1,15],”temperature”:220} |
16 | Set Power | 0 | Boolean (0/1) | Turns On/Off the device (as on input 7) 0=off, 1=on. Will write output to output 8. |
17 | Set Light | 0 | Boolean (0/1) | Triggers the light of a device (as on input 7). 0=off, 1=on. Will write output to output 9. |
18 | Set Color | “” | Text | Triggers color of i.e. a Kitchen Hood device (as on input 7). Can be: white, blue, red, yellow, orange, green, pink, purple or turquoise. Will write output to output 10. |
19 | Set Modes | 0 | Numeric | Triggers a different mode for the device (as on input 7). 0=Normal operation mode, 1=Sabbath mode. |
20 | Set DeviceName | “” | Text | Changes the devicename of a device (as on input 7). |
21 | Set ProcessAction | 0 | Numeric | Processes an action for a device (as on input 7). 1=Start, 2=Stop, 3=Pause, 4=Start superfreezing, 5=Stop superfreezing, 6=Start supercooling, 7=Stop supercooling. |
22 | Set VentilationStep | 0 | Numeric | Set the VentilationStep for a device (as on input 7). 1=Step1, 2=Step2, 3=Step3, 4=Step4. |
23 | Set ProgramId | 0 | Numeric | Set a ProgramId of a device (as on input 7). Trigger a Get Programs (input 13) to see all available ProgramIds. |
24 | Get Rooms | 0 | Boolean (0/1) | Both 0 and 1 will trigger to get the Room information for the device (as on input 7) and write output to Output 11. |
25 | Room: Set Map ID | 0 | Numeric | This will not trigger the Clean Room function, only the Set Room ID will do that. This just sets the Map ID and is needed before setting the Room ID. |
26 | Room: Set Room ID | 0 | Numeric | Any number will trigger the Clean Room function. The Room ID of the device (as on input 7) to clean. |
Outputs
Output | Name | Init | Type | SBC | Description |
---|---|---|---|---|---|
1 | Error | 0 | Boolean (0/1) | No | 0=no error, 1=an error occured during triggering this Building Block. |
2 | Error Text | “” | Text | No | Detailed error text in JSON, >14 characters. |
3 | Device Info | “” | Text | No | JSON, >14 characters), triggered by Input 8 or Input 9. |
4 | Ident Info | “” | Text | No | JSON, >14 characters, triggered by Input 10. |
5 | State Info | “” | Text | No | JSON, >14 characters, triggered by Input 11. |
6 | Available Actions | “” | Text | No | JSON, >14 characters, triggered by Input 12. |
7 | Available Programs | “” | Text | No | JSON, >14 characters, triggered by Input 13. |
8 | Power | 0 | Boolean (0/1) | No | 0=off, 1=on, triggered by Input 16 or Input 11. |
9 | Light | 0 | Boolean (0/1) | No | 0=off, 1=on, triggered by Input 17 or Input 11. |
10 | Color | 0 | Boolean (0/1) | No | Color like ‘white’, ‘blue’, ‘red’, etc. Triggered by Input 18 or Input 11. |
11 | Rooms | “” | Text | No | JSON, >14 characters, triggered by Input 24. |
Release Notes
v1.5 21-07-2023 – Miele_14360_v1.5.zip
- Set timeout to 5 seconds to the Miele API, so the Homeserver will not become slow/overloaded/queued.
- Close all connections as to Miele API as soon as possible to keep memory free.
- Added vacuum cleaner options: Get Rooms and Set Map ID/Room ID to start cleaning in a specific room.
- Updated to be Python v3 compatible (for any future HS updates).
v1.4 22-06-2022 Miele_14360_v1.4.zip
- Fix for initiating module / fix for need a reboot first.
- Automatically corrects uppercase/lowercase country like de-de or de-DE (an often made mistake).
- Fixes the Set ProgramID (input23) which didn’t work. Thanks to knxhans for mentioning this bug.
v1.3 29-12-2021 – Miele_14360_v1.3.zip
- Does not check for validity of Miele SSL certificate anymore since some homeservers have old root certificates. This resulted in v1.2 doing nothing on some physical homeservers (even they were running 4.11.1).
v1.2 22-12-2021 – Miele_14360_v1.2.zip
- Small contextual changes in the Help file.
v1.1 – 25-11-2021 – Miele_14360_v1.1.zip
- Added raw JSON input for Actions so any action can be set.
- Added raw JSON input for Programs so any program can be set.
- Added Set Modes to set the device in normal or Sabbath mode.
- Added Set Devicename to change the devicename.
- Added Set ProcessAction to set various actions. Depends on device type (most freezers have options 4-7, an oven has only 1 and 2).
- Added Set VentilationStep to set the ventilation step between 1 and 4.
- Added Set ProgramId to start a program on the washingmachine, dryer or oven. To check which programs are available: Trigger a Get Programs at Input 13.
v1.0 – 24-11-2021
- Compatible and tested with Homeserver 4.11 and 4.11.1.
- Power and Light tested with Miele CVA 7845.
Installation instructions
- Download the Building block: Miele_14360_v1.5.zip
- Add it to a new Homeserver Logic tab.
- Go to: https://www.miele.com/f/com/en/register_api.aspx and just add a new Application Name and enter your e-mail address. You will receive an email with an activation link.
- Click on the activation link. Login with your Miele account (and set your language to the language/country in which you have this account.
- Copy the Client ID and Client Secret to the Building Block.
- Set the Username/Password and Language of your account. See the Youtube movie for examples.
More information about the Miele API: https://www.miele.com/developer/
Hoi Roel,
Ik ben erg geïnteresseerd in de koppeling tussen Miele en KNX. Helaas heb ik geen Homeserver maar een Gira X1. Hoe ver ben jij met de ontwikkeling van het logicablock voor GPA?
Hi Alex, Yes I’m currenlty working on an X1 version of this logic. I think that would be great addition for everyone because it then only needs some basic knowledge and a Gira X1 to control your kitchen, restaurant or your washing room!
I’m planning to put everything on Github if time permits, for the time being, you can unzip the .hslz file and base64decode the string in that file to see the code.
Fantastic to see this use of the Miele API in combination with KNX. Question: did you also plan to build a logic block for the X1 and Gira Project Assistant? Would be really cool. Also, you mentioned that this block is open source. Where can I find the source code to this?
Thanks for this contribution.
Alex