Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plateStep entities are not enabled for hob types 14 and 27 #355

Closed
astrandb opened this issue Nov 1, 2023 · 12 comments · Fixed by #357
Closed

plateStep entities are not enabled for hob types 14 and 27 #355

astrandb opened this issue Nov 1, 2023 · 12 comments · Fixed by #357
Assignees
Labels
bug Something isn't working

Comments

@astrandb
Copy link
Owner

astrandb commented Nov 1, 2023

The problem

Subject says it all

Version of miele integration having the issue?

v0.1.16

Version of Home Assistant Core having the issue?

All

Anything in the logs that might be useful for us?

No response

Additional information

No response

@astrandb astrandb added the bug Something isn't working label Nov 1, 2023
@astrandb astrandb self-assigned this Nov 1, 2023
@purcell-lab
Copy link

Here is the entity with no cooking:

image

Here is the entity with two pots on the boil.

image

Here is the diagnostics with two pots on the boil.

miele-b84f9299c9ead9f1c198899dc34761a6-Hob-d34d2ef3991e2f9be68560cfdee76aa7.json (1).txt

Do let me know if you want me to test a beta update or if there is any other details I can provide.

Some power profiles from my Shelly, the 300 W tail after the hob has been switched off (10:35-10:57) is interesting, I suspect that is the cooling fans running on.

image

@astrandb
Copy link
Owner Author

astrandb commented Nov 2, 2023

@purcell-lab Thank you for all the details.
It is a challenge to represent all different appliances and models when there is very limited documentation available. The feedback and assistance from end-user is invaluable.

There are a number of different Miele hobs. The API varies by number of cooking zones, number of steps on the power scale, how the power setting on the hob panel is represented in the API etc.

In order to prepare the first version for your model I need your help to map out the power settings. Please try different power settings for a zone and capture a diagnostic download, look for plateStep Value raw and value localized and fill in a table like the one below.

Example for KMDA7634 (Induction hob with extraction fan)

Panel step Example Value raw Value localized
Off 0 0 0
Lowest 1 110 0.5
Second lowest 2 1 1
Middle... 3 2 1.5
Middle...
Middle... 8 16 8.5
Second highest 9 17 9
Highest 10 117 10

@purcell-lab
Copy link

I'll likely get some time for some measurements over the weekend.

In the meantime, I have my cooktop hood integrated as well and that is also reporting via the integration.

image

"integration_manifest": {
    "domain": "miele",
    "name": "Miele",
    "codeowners": [
      "@astrandb"
    ],
    "config_flow": true,
    "dependencies": [
      "application_credentials",
      "http"
    ],
    "documentation": "https://github.com/astrandb/miele",
    "homekit": {},
    "integration_type": "hub",
    "iot_class": "cloud_push",
    "issue_tracker": "https://github.com/astrandb/miele/issues",
    "loggers": [
      "pymiele"
    ],
    "requirements": [
      "flatdict==4.0.1",
      "pymiele==0.1.7"
    ],
    "ssdp": [],
    "version": "0.1.16",
    "zeroconf": [
      "_mieleathome._tcp.local."
    ],
    "is_built_in": false
  },
  "data": {
    "info": {
      "manufacturer": "Miele",
      "model": "DAS 4920"
    },
    "data": {
      "ident|type|key_localized": "Device type",
      "ident|type|value_raw": 18,
      "ident|type|value_localized": "Cooker hood",
      "ident|deviceName": "",
      "ident|protocolVersion": 2,
      "ident|deviceIdentLabel|fabNumber": "**REDACTED**",
      "ident|deviceIdentLabel|fabIndex": "00",
      "ident|deviceIdentLabel|techType": "DAS 4920",
      "ident|deviceIdentLabel|matNumber": "11878420",
      "ident|deviceIdentLabel|swids|0": "5604",
      "ident|deviceIdentLabel|swids|1": "20550",
      "ident|deviceIdentLabel|swids|2": "25226",
      "ident|xkmIdentLabel|techType": "EK039W",
      "ident|xkmIdentLabel|releaseVersion": "02.72",
      "state|ProgramID|value_raw": 0,
      "state|ProgramID|value_localized": "",
      "state|ProgramID|key_localized": "Program name",
      "state|status|value_raw": 2,
      "state|status|value_localized": "On",
      "state|status|key_localized": "status",
      "state|programType|value_raw": 0,
      "state|programType|value_localized": "Program",
      "state|programType|key_localized": "Program type",
      "state|programPhase|value_raw": 4608,
      "state|programPhase|value_localized": "",
      "state|programPhase|key_localized": "Program phase",
      "state|remainingTime|0": 0,
      "state|remainingTime|1": 0,
      "state|startTime|0": 0,
      "state|startTime|1": 0,
      "state|targetTemperature|0|value_raw": -32768,
      "state|targetTemperature|0|value_localized": null,
      "state|targetTemperature|0|unit": "Celsius",
      "state|coreTargetTemperature": {},
      "state|temperature|0|value_raw": -32768,
      "state|temperature|0|value_localized": null,
      "state|temperature|0|unit": "Celsius",
      "state|temperature|1|value_raw": -32768,
      "state|temperature|1|value_localized": null,
      "state|temperature|1|unit": "Celsius",
      "state|temperature|2|value_raw": -32768,
      "state|temperature|2|value_localized": null,
      "state|temperature|2|unit": "Celsius",
      "state|coreTemperature": {},
      "state|signalInfo": false,
      "state|signalFailure": false,
      "state|signalDoor": false,
      "state|remoteEnable|fullRemoteControl": false,
      "state|remoteEnable|smartGrid": false,
      "state|remoteEnable|mobileStart": false,
      "state|ambientLight": null,
      "state|light": 1,
      "state|elapsedTime": {},
      "state|spinningSpeed|unit": "rpm",
      "state|spinningSpeed|value_raw": null,
      "state|spinningSpeed|value_localized": null,
      "state|spinningSpeed|key_localized": "Spin speed",
      "state|dryingStep|value_raw": null,
      "state|dryingStep|value_localized": "",
      "state|dryingStep|key_localized": "Drying level",
      "state|ventilationStep|value_raw": 0,
      "state|ventilationStep|value_localized": "",
      "state|ventilationStep|key_localized": "Fan level",
      "state|plateStep": {},
      "state|ecoFeedback": null,
      "state|batteryLevel": null
    },
    "actions": {
      "processAction": [],
      "light": [
        2
      ],
      "ambientLight": [],
      "startTime": [],
      "ventilationStep": [
        1,
        2,
        3,
        4
      ],
      "programId": [],
      "targetTemperature": [],
      "deviceName": true,
      "powerOn": true,
      "powerOff": false,
      "colors": [],
      "modes": [],
      "runOnTime": []
    },
    "programs": [],
    "id_log": [],
    "local_mappings": {}
  }
}

Screenshot_20231103-071201

Screenshot_20231103-071206

@purcell-lab
Copy link

purcell-lab commented Nov 3, 2023

One pot, keeping warm. 560W

{
  "home_assistant": {
    "installation_type": "Home Assistant Supervised",
    "version": "2023.11.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Australia/Brisbane",
    "os_name": "Linux",
    "os_version": "5.14.0-odroid-arm64",
    "supervisor": "2023.10.1",
    "host_os": "Debian GNU/Linux 11 (bullseye)",
    "docker_version": "24.0.5",
    "chassis": "",
    "run_as_root": true
  },
  "custom_components": {
    "huawei_solar": {
      "version": "1.2.4",
      "requirements": [
        "huawei-solar>=1.2.0,<2.0.0"
      ]
    },
    "googlewifi": {
      "version": "0.1.34",
      "requirements": [
        "googlewifi==0.0.21"
      ]
    },
    "meross_lan": {
      "version": "4.4.0-alpha.1",
      "requirements": []
    },
    "tesla_custom": {
      "version": "3.19.0",
      "requirements": [
        "teslajsonpy==3.9.6"
      ]
    },
    "dyson_cloud": {
      "version": "0.15.0",
      "requirements": [
        "libdyson==0.8.7"
      ]
    },
    "solaredge_modbus_multi": {
      "version": "2.4.6",
      "requirements": [
        "pymodbus>=3.5.1"
      ]
    },
    "garmin_connect": {
      "version": "0.2.17",
      "requirements": [
        "garminconnect==0.2.3",
        "tzlocal"
      ]
    },
    "battery_consumption": {
      "version": "1.0.4",
      "requirements": []
    },
    "miele": {
      "version": "0.1.16",
      "requirements": [
        "flatdict==4.0.1",
        "pymiele==0.1.7"
      ]
    },
    "scheduler": {
      "version": "v0.0.0",
      "requirements": []
    },
    "climate_template": {
      "version": "0.6.1",
      "requirements": []
    },
    "dyson_local": {
      "version": "0.16.4-4",
      "requirements": [
        "libdyson==0.8.11"
      ]
    },
    "versatile_thermostat": {
      "version": "3.8.0",
      "requirements": []
    },
    "localtuya": {
      "version": "5.2.1",
      "requirements": []
    },
    "smartthinq_sensors": {
      "version": "0.34.0",
      "requirements": [
        "pycountry>=20.7.3",
        "xmltodict>=0.12.0",
        "charset_normalizer>=2.0.0"
      ]
    },
    "solcast_solar": {
      "version": "4.0.12",
      "requirements": [
        "aiohttp>=3.6.2",
        "datetime>=4.3",
        "isodate>=0.6.1"
      ]
    },
    "deebot": {
      "version": "3.0.0b0",
      "requirements": [
        "deebot-client==4.0.0b0",
        "numpy>=1.23.2"
      ]
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "bureau_of_meteorology": {
      "version": "1.2.0",
      "requirements": [
        "iso8601"
      ]
    },
    "powercalc": {
      "version": "v1.9.6",
      "requirements": [
        "numpy>=1.21.1"
      ]
    },
    "opennem": {
      "version": "2022.09.1",
      "requirements": []
    },
    "solaredge_modbus": {
      "version": "1.10.0",
      "requirements": [
        "pymodbus==3.5.2"
      ]
    },
    "tesla_gateway": {
      "version": "0.1.0",
      "requirements": [
        "teslapy==2.8.0"
      ]
    }
  },
  "integration_manifest": {
    "domain": "miele",
    "name": "Miele",
    "codeowners": [
      "@astrandb"
    ],
    "config_flow": true,
    "dependencies": [
      "application_credentials",
      "http"
    ],
    "documentation": "https://github.com/astrandb/miele",
    "homekit": {},
    "integration_type": "hub",
    "iot_class": "cloud_push",
    "issue_tracker": "https://github.com/astrandb/miele/issues",
    "loggers": [
      "pymiele"
    ],
    "requirements": [
      "flatdict==4.0.1",
      "pymiele==0.1.7"
    ],
    "ssdp": [],
    "version": "0.1.16",
    "zeroconf": [
      "_mieleathome._tcp.local."
    ],
    "is_built_in": false
  },
  "data": {
    "info": {
      "manufacturer": "Miele",
      "model": "KM7897"
    },
    "data": {
      "ident|type|key_localized": "Device type",
      "ident|type|value_raw": 27,
      "ident|type|value_localized": "Hob",
      "ident|deviceName": "",
      "ident|protocolVersion": 2,
      "ident|deviceIdentLabel|fabNumber": "**REDACTED**",
      "ident|deviceIdentLabel|fabIndex": "00",
      "ident|deviceIdentLabel|techType": "KM7897",
      "ident|deviceIdentLabel|matNumber": "11230270",
      "ident|deviceIdentLabel|swids|0": "4889",
      "ident|deviceIdentLabel|swids|1": "20446",
      "ident|deviceIdentLabel|swids|2": "25122",
      "ident|deviceIdentLabel|swids|3": "20447",
      "ident|deviceIdentLabel|swids|4": "4741",
      "ident|deviceIdentLabel|swids|5": "20270",
      "ident|deviceIdentLabel|swids|6": "25123",
      "ident|deviceIdentLabel|swids|7": "4741",
      "ident|deviceIdentLabel|swids|8": "20270",
      "ident|deviceIdentLabel|swids|9": "25123",
      "ident|deviceIdentLabel|swids|10": "4741",
      "ident|deviceIdentLabel|swids|11": "20270",
      "ident|deviceIdentLabel|swids|12": "25123",
      "ident|deviceIdentLabel|swids|13": "4741",
      "ident|deviceIdentLabel|swids|14": "20270",
      "ident|deviceIdentLabel|swids|15": "25123",
      "ident|deviceIdentLabel|swids|16": "4310",
      "ident|deviceIdentLabel|swids|17": "20270",
      "ident|deviceIdentLabel|swids|18": "25278",
      "ident|xkmIdentLabel|techType": "EK039W",
      "ident|xkmIdentLabel|releaseVersion": "02.72",
      "state|ProgramID|value_raw": 0,
      "state|ProgramID|value_localized": "",
      "state|ProgramID|key_localized": "Program name",
      "state|status|value_raw": 5,
      "state|status|value_localized": "In use",
      "state|status|key_localized": "status",
      "state|programType|value_raw": 0,
      "state|programType|value_localized": "Program",
      "state|programType|key_localized": "Program type",
      "state|programPhase|value_raw": 0,
      "state|programPhase|value_localized": "",
      "state|programPhase|key_localized": "Program phase",
      "state|remainingTime|0": 0,
      "state|remainingTime|1": 0,
      "state|startTime|0": 0,
      "state|startTime|1": 0,
      "state|targetTemperature|0|value_raw": -32768,
      "state|targetTemperature|0|value_localized": null,
      "state|targetTemperature|0|unit": "Celsius",
      "state|coreTargetTemperature": {},
      "state|temperature|0|value_raw": -32768,
      "state|temperature|0|value_localized": null,
      "state|temperature|0|unit": "Celsius",
      "state|temperature|1|value_raw": -32768,
      "state|temperature|1|value_localized": null,
      "state|temperature|1|unit": "Celsius",
      "state|temperature|2|value_raw": -32768,
      "state|temperature|2|value_localized": null,
      "state|temperature|2|unit": "Celsius",
      "state|coreTemperature": {},
      "state|signalInfo": false,
      "state|signalFailure": false,
      "state|signalDoor": false,
      "state|remoteEnable|fullRemoteControl": true,
      "state|remoteEnable|smartGrid": false,
      "state|remoteEnable|mobileStart": false,
      "state|ambientLight": null,
      "state|light": null,
      "state|elapsedTime": {},
      "state|spinningSpeed|unit": "rpm",
      "state|spinningSpeed|value_raw": null,
      "state|spinningSpeed|value_localized": null,
      "state|spinningSpeed|key_localized": "Spin speed",
      "state|dryingStep|value_raw": null,
      "state|dryingStep|value_localized": "",
      "state|dryingStep|key_localized": "Drying level",
      "state|ventilationStep|value_raw": null,
      "state|ventilationStep|value_localized": "",
      "state|ventilationStep|key_localized": "Fan level",
      "state|plateStep|0|value_raw": 220,
      "state|plateStep|0|value_localized": "",
      "state|plateStep|0|key_localized": "Power level",
      "state|plateStep|1|value_raw": 0,
      "state|plateStep|1|value_localized": "0",
      "state|plateStep|1|key_localized": "Power level",
      "state|plateStep|2|value_raw": 0,
      "state|plateStep|2|value_localized": "0",
      "state|plateStep|2|key_localized": "Power level",
      "state|plateStep|3|value_raw": 0,
      "state|plateStep|3|value_localized": "0",
      "state|plateStep|3|key_localized": "Power level",
      "state|plateStep|4|value_raw": 0,
      "state|plateStep|4|value_localized": "0",
      "state|plateStep|4|key_localized": "Power level",
      "state|plateStep|5|value_raw": 0,
      "state|plateStep|5|value_localized": "0",
      "state|plateStep|5|key_localized": "Power level",
      "state|ecoFeedback": null,
      "state|batteryLevel": null
    },
    "actions": {
      "processAction": [],
      "light": [],
      "ambientLight": [],
      "startTime": [],
      "ventilationStep": [],
      "programId": [],
      "targetTemperature": [],
      "deviceName": true,
      "powerOn": false,
      "powerOff": false,
      "colors": [],
      "modes": [],
      "runOnTime": []
    },
    "programs": [],
    "id_log": [],
    "local_mappings": {}
  }
}

One pot medium level 5: 560W
Screenshot_20231103-205151

{
  "home_assistant": {
    "installation_type": "Home Assistant Supervised",
    "version": "2023.11.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Australia/Brisbane",
    "os_name": "Linux",
    "os_version": "5.14.0-odroid-arm64",
    "supervisor": "2023.10.1",
    "host_os": "Debian GNU/Linux 11 (bullseye)",
    "docker_version": "24.0.5",
    "chassis": "",
    "run_as_root": true
  },
  "custom_components": {
    "huawei_solar": {
      "version": "1.2.4",
      "requirements": [
        "huawei-solar>=1.2.0,<2.0.0"
      ]
    },
    "googlewifi": {
      "version": "0.1.34",
      "requirements": [
        "googlewifi==0.0.21"
      ]
    },
    "meross_lan": {
      "version": "4.4.0-alpha.1",
      "requirements": []
    },
    "tesla_custom": {
      "version": "3.19.0",
      "requirements": [
        "teslajsonpy==3.9.6"
      ]
    },
    "dyson_cloud": {
      "version": "0.15.0",
      "requirements": [
        "libdyson==0.8.7"
      ]
    },
    "solaredge_modbus_multi": {
      "version": "2.4.6",
      "requirements": [
        "pymodbus>=3.5.1"
      ]
    },
    "garmin_connect": {
      "version": "0.2.17",
      "requirements": [
        "garminconnect==0.2.3",
        "tzlocal"
      ]
    },
    "battery_consumption": {
      "version": "1.0.4",
      "requirements": []
    },
    "miele": {
      "version": "0.1.16",
      "requirements": [
        "flatdict==4.0.1",
        "pymiele==0.1.7"
      ]
    },
    "scheduler": {
      "version": "v0.0.0",
      "requirements": []
    },
    "climate_template": {
      "version": "0.6.1",
      "requirements": []
    },
    "dyson_local": {
      "version": "0.16.4-4",
      "requirements": [
        "libdyson==0.8.11"
      ]
    },
    "versatile_thermostat": {
      "version": "3.8.0",
      "requirements": []
    },
    "localtuya": {
      "version": "5.2.1",
      "requirements": []
    },
    "smartthinq_sensors": {
      "version": "0.34.0",
      "requirements": [
        "pycountry>=20.7.3",
        "xmltodict>=0.12.0",
        "charset_normalizer>=2.0.0"
      ]
    },
    "solcast_solar": {
      "version": "4.0.12",
      "requirements": [
        "aiohttp>=3.6.2",
        "datetime>=4.3",
        "isodate>=0.6.1"
      ]
    },
    "deebot": {
      "version": "3.0.0b0",
      "requirements": [
        "deebot-client==4.0.0b0",
        "numpy>=1.23.2"
      ]
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "bureau_of_meteorology": {
      "version": "1.2.0",
      "requirements": [
        "iso8601"
      ]
    },
    "powercalc": {
      "version": "v1.9.6",
      "requirements": [
        "numpy>=1.21.1"
      ]
    },
    "opennem": {
      "version": "2022.09.1",
      "requirements": []
    },
    "solaredge_modbus": {
      "version": "1.10.0",
      "requirements": [
        "pymodbus==3.5.2"
      ]
    },
    "tesla_gateway": {
      "version": "0.1.0",
      "requirements": [
        "teslapy==2.8.0"
      ]
    }
  },
  "integration_manifest": {
    "domain": "miele",
    "name": "Miele",
    "codeowners": [
      "@astrandb"
    ],
    "config_flow": true,
    "dependencies": [
      "application_credentials",
      "http"
    ],
    "documentation": "https://github.com/astrandb/miele",
    "homekit": {},
    "integration_type": "hub",
    "iot_class": "cloud_push",
    "issue_tracker": "https://github.com/astrandb/miele/issues",
    "loggers": [
      "pymiele"
    ],
    "requirements": [
      "flatdict==4.0.1",
      "pymiele==0.1.7"
    ],
    "ssdp": [],
    "version": "0.1.16",
    "zeroconf": [
      "_mieleathome._tcp.local."
    ],
    "is_built_in": false
  },
  "data": {
    "info": {
      "manufacturer": "Miele",
      "model": "KM7897"
    },
    "data": {
      "ident|type|key_localized": "Device type",
      "ident|type|value_raw": 27,
      "ident|type|value_localized": "Hob",
      "ident|deviceName": "",
      "ident|protocolVersion": 2,
      "ident|deviceIdentLabel|fabNumber": "**REDACTED**",
      "ident|deviceIdentLabel|fabIndex": "00",
      "ident|deviceIdentLabel|techType": "KM7897",
      "ident|deviceIdentLabel|matNumber": "11230270",
      "ident|deviceIdentLabel|swids|0": "4889",
      "ident|deviceIdentLabel|swids|1": "20446",
      "ident|deviceIdentLabel|swids|2": "25122",
      "ident|deviceIdentLabel|swids|3": "20447",
      "ident|deviceIdentLabel|swids|4": "4741",
      "ident|deviceIdentLabel|swids|5": "20270",
      "ident|deviceIdentLabel|swids|6": "25123",
      "ident|deviceIdentLabel|swids|7": "4741",
      "ident|deviceIdentLabel|swids|8": "20270",
      "ident|deviceIdentLabel|swids|9": "25123",
      "ident|deviceIdentLabel|swids|10": "4741",
      "ident|deviceIdentLabel|swids|11": "20270",
      "ident|deviceIdentLabel|swids|12": "25123",
      "ident|deviceIdentLabel|swids|13": "4741",
      "ident|deviceIdentLabel|swids|14": "20270",
      "ident|deviceIdentLabel|swids|15": "25123",
      "ident|deviceIdentLabel|swids|16": "4310",
      "ident|deviceIdentLabel|swids|17": "20270",
      "ident|deviceIdentLabel|swids|18": "25278",
      "ident|xkmIdentLabel|techType": "EK039W",
      "ident|xkmIdentLabel|releaseVersion": "02.72",
      "state|ProgramID|value_raw": 0,
      "state|ProgramID|value_localized": "",
      "state|ProgramID|key_localized": "Program name",
      "state|status|value_raw": 5,
      "state|status|value_localized": "In use",
      "state|status|key_localized": "status",
      "state|programType|value_raw": 0,
      "state|programType|value_localized": "Program",
      "state|programType|key_localized": "Program type",
      "state|programPhase|value_raw": 0,
      "state|programPhase|value_localized": "",
      "state|programPhase|key_localized": "Program phase",
      "state|remainingTime|0": 0,
      "state|remainingTime|1": 0,
      "state|startTime|0": 0,
      "state|startTime|1": 0,
      "state|targetTemperature|0|value_raw": -32768,
      "state|targetTemperature|0|value_localized": null,
      "state|targetTemperature|0|unit": "Celsius",
      "state|coreTargetTemperature": {},
      "state|temperature|0|value_raw": -32768,
      "state|temperature|0|value_localized": null,
      "state|temperature|0|unit": "Celsius",
      "state|temperature|1|value_raw": -32768,
      "state|temperature|1|value_localized": null,
      "state|temperature|1|unit": "Celsius",
      "state|temperature|2|value_raw": -32768,
      "state|temperature|2|value_localized": null,
      "state|temperature|2|unit": "Celsius",
      "state|coreTemperature": {},
      "state|signalInfo": false,
      "state|signalFailure": false,
      "state|signalDoor": false,
      "state|remoteEnable|fullRemoteControl": true,
      "state|remoteEnable|smartGrid": false,
      "state|remoteEnable|mobileStart": false,
      "state|ambientLight": null,
      "state|light": null,
      "state|elapsedTime": {},
      "state|spinningSpeed|unit": "rpm",
      "state|spinningSpeed|value_raw": null,
      "state|spinningSpeed|value_localized": null,
      "state|spinningSpeed|key_localized": "Spin speed",
      "state|dryingStep|value_raw": null,
      "state|dryingStep|value_localized": "",
      "state|dryingStep|key_localized": "Drying level",
      "state|ventilationStep|value_raw": null,
      "state|ventilationStep|value_localized": "",
      "state|ventilationStep|key_localized": "Fan level",
      "state|plateStep|0|value_raw": 10,
      "state|plateStep|0|value_localized": "5.",
      "state|plateStep|0|key_localized": "Power level",
      "state|plateStep|1|value_raw": 0,
      "state|plateStep|1|value_localized": "0",
      "state|plateStep|1|key_localized": "Power level",
      "state|plateStep|2|value_raw": 0,
      "state|plateStep|2|value_localized": "0",
      "state|plateStep|2|key_localized": "Power level",
      "state|plateStep|3|value_raw": 0,
      "state|plateStep|3|value_localized": "0",
      "state|plateStep|3|key_localized": "Power level",
      "state|plateStep|4|value_raw": 0,
      "state|plateStep|4|value_localized": "0",
      "state|plateStep|4|key_localized": "Power level",
      "state|plateStep|5|value_raw": 0,
      "state|plateStep|5|value_localized": "0",
      "state|plateStep|5|key_localized": "Power level",
      "state|ecoFeedback": null,
      "state|batteryLevel": null
    },
    "actions": {
      "processAction": [],
      "light": [],
      "ambientLight": [],
      "startTime": [],
      "ventilationStep": [],
      "programId": [],
      "targetTemperature": [],
      "deviceName": true,
      "powerOn": false,
      "powerOff": false,
      "colors": [],
      "modes": [],
      "runOnTime": []
    },
    "programs": [],
    "id_log": [],
    "local_mappings": {}
  }
}

One pot level 9; 1200W

{
  "home_assistant": {
    "installation_type": "Home Assistant Supervised",
    "version": "2023.11.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Australia/Brisbane",
    "os_name": "Linux",
    "os_version": "5.14.0-odroid-arm64",
    "supervisor": "2023.10.1",
    "host_os": "Debian GNU/Linux 11 (bullseye)",
    "docker_version": "24.0.5",
    "chassis": "",
    "run_as_root": true
  },
  "custom_components": {
    "huawei_solar": {
      "version": "1.2.4",
      "requirements": [
        "huawei-solar>=1.2.0,<2.0.0"
      ]
    },
    "googlewifi": {
      "version": "0.1.34",
      "requirements": [
        "googlewifi==0.0.21"
      ]
    },
    "meross_lan": {
      "version": "4.4.0-alpha.1",
      "requirements": []
    },
    "tesla_custom": {
      "version": "3.19.0",
      "requirements": [
        "teslajsonpy==3.9.6"
      ]
    },
    "dyson_cloud": {
      "version": "0.15.0",
      "requirements": [
        "libdyson==0.8.7"
      ]
    },
    "solaredge_modbus_multi": {
      "version": "2.4.6",
      "requirements": [
        "pymodbus>=3.5.1"
      ]
    },
    "garmin_connect": {
      "version": "0.2.17",
      "requirements": [
        "garminconnect==0.2.3",
        "tzlocal"
      ]
    },
    "battery_consumption": {
      "version": "1.0.4",
      "requirements": []
    },
    "miele": {
      "version": "0.1.16",
      "requirements": [
        "flatdict==4.0.1",
        "pymiele==0.1.7"
      ]
    },
    "scheduler": {
      "version": "v0.0.0",
      "requirements": []
    },
    "climate_template": {
      "version": "0.6.1",
      "requirements": []
    },
    "dyson_local": {
      "version": "0.16.4-4",
      "requirements": [
        "libdyson==0.8.11"
      ]
    },
    "versatile_thermostat": {
      "version": "3.8.0",
      "requirements": []
    },
    "localtuya": {
      "version": "5.2.1",
      "requirements": []
    },
    "smartthinq_sensors": {
      "version": "0.34.0",
      "requirements": [
        "pycountry>=20.7.3",
        "xmltodict>=0.12.0",
        "charset_normalizer>=2.0.0"
      ]
    },
    "solcast_solar": {
      "version": "4.0.12",
      "requirements": [
        "aiohttp>=3.6.2",
        "datetime>=4.3",
        "isodate>=0.6.1"
      ]
    },
    "deebot": {
      "version": "3.0.0b0",
      "requirements": [
        "deebot-client==4.0.0b0",
        "numpy>=1.23.2"
      ]
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "bureau_of_meteorology": {
      "version": "1.2.0",
      "requirements": [
        "iso8601"
      ]
    },
    "powercalc": {
      "version": "v1.9.6",
      "requirements": [
        "numpy>=1.21.1"
      ]
    },
    "opennem": {
      "version": "2022.09.1",
      "requirements": []
    },
    "solaredge_modbus": {
      "version": "1.10.0",
      "requirements": [
        "pymodbus==3.5.2"
      ]
    },
    "tesla_gateway": {
      "version": "0.1.0",
      "requirements": [
        "teslapy==2.8.0"
      ]
    }
  },
  "integration_manifest": {
    "domain": "miele",
    "name": "Miele",
    "codeowners": [
      "@astrandb"
    ],
    "config_flow": true,
    "dependencies": [
      "application_credentials",
      "http"
    ],
    "documentation": "https://github.com/astrandb/miele",
    "homekit": {},
    "integration_type": "hub",
    "iot_class": "cloud_push",
    "issue_tracker": "https://github.com/astrandb/miele/issues",
    "loggers": [
      "pymiele"
    ],
    "requirements": [
      "flatdict==4.0.1",
      "pymiele==0.1.7"
    ],
    "ssdp": [],
    "version": "0.1.16",
    "zeroconf": [
      "_mieleathome._tcp.local."
    ],
    "is_built_in": false
  },
  "data": {
    "info": {
      "manufacturer": "Miele",
      "model": "KM7897"
    },
    "data": {
      "ident|type|key_localized": "Device type",
      "ident|type|value_raw": 27,
      "ident|type|value_localized": "Hob",
      "ident|deviceName": "",
      "ident|protocolVersion": 2,
      "ident|deviceIdentLabel|fabNumber": "**REDACTED**",
      "ident|deviceIdentLabel|fabIndex": "00",
      "ident|deviceIdentLabel|techType": "KM7897",
      "ident|deviceIdentLabel|matNumber": "11230270",
      "ident|deviceIdentLabel|swids|0": "4889",
      "ident|deviceIdentLabel|swids|1": "20446",
      "ident|deviceIdentLabel|swids|2": "25122",
      "ident|deviceIdentLabel|swids|3": "20447",
      "ident|deviceIdentLabel|swids|4": "4741",
      "ident|deviceIdentLabel|swids|5": "20270",
      "ident|deviceIdentLabel|swids|6": "25123",
      "ident|deviceIdentLabel|swids|7": "4741",
      "ident|deviceIdentLabel|swids|8": "20270",
      "ident|deviceIdentLabel|swids|9": "25123",
      "ident|deviceIdentLabel|swids|10": "4741",
      "ident|deviceIdentLabel|swids|11": "20270",
      "ident|deviceIdentLabel|swids|12": "25123",
      "ident|deviceIdentLabel|swids|13": "4741",
      "ident|deviceIdentLabel|swids|14": "20270",
      "ident|deviceIdentLabel|swids|15": "25123",
      "ident|deviceIdentLabel|swids|16": "4310",
      "ident|deviceIdentLabel|swids|17": "20270",
      "ident|deviceIdentLabel|swids|18": "25278",
      "ident|xkmIdentLabel|techType": "EK039W",
      "ident|xkmIdentLabel|releaseVersion": "02.72",
      "state|ProgramID|value_raw": 0,
      "state|ProgramID|value_localized": "",
      "state|ProgramID|key_localized": "Program name",
      "state|status|value_raw": 5,
      "state|status|value_localized": "In use",
      "state|status|key_localized": "status",
      "state|programType|value_raw": 0,
      "state|programType|value_localized": "Program",
      "state|programType|key_localized": "Program type",
      "state|programPhase|value_raw": 0,
      "state|programPhase|value_localized": "",
      "state|programPhase|key_localized": "Program phase",
      "state|remainingTime|0": 0,
      "state|remainingTime|1": 0,
      "state|startTime|0": 0,
      "state|startTime|1": 0,
      "state|targetTemperature|0|value_raw": -32768,
      "state|targetTemperature|0|value_localized": null,
      "state|targetTemperature|0|unit": "Celsius",
      "state|coreTargetTemperature": {},
      "state|temperature|0|value_raw": -32768,
      "state|temperature|0|value_localized": null,
      "state|temperature|0|unit": "Celsius",
      "state|temperature|1|value_raw": -32768,
      "state|temperature|1|value_localized": null,
      "state|temperature|1|unit": "Celsius",
      "state|temperature|2|value_raw": -32768,
      "state|temperature|2|value_localized": null,
      "state|temperature|2|unit": "Celsius",
      "state|coreTemperature": {},
      "state|signalInfo": false,
      "state|signalFailure": false,
      "state|signalDoor": false,
      "state|remoteEnable|fullRemoteControl": true,
      "state|remoteEnable|smartGrid": false,
      "state|remoteEnable|mobileStart": false,
      "state|ambientLight": null,
      "state|light": null,
      "state|elapsedTime": {},
      "state|spinningSpeed|unit": "rpm",
      "state|spinningSpeed|value_raw": null,
      "state|spinningSpeed|value_localized": null,
      "state|spinningSpeed|key_localized": "Spin speed",
      "state|dryingStep|value_raw": null,
      "state|dryingStep|value_localized": "",
      "state|dryingStep|key_localized": "Drying level",
      "state|ventilationStep|value_raw": null,
      "state|ventilationStep|value_localized": "",
      "state|ventilationStep|key_localized": "Fan level",
      "state|plateStep|0|value_raw": 18,
      "state|plateStep|0|value_localized": "9.",
      "state|plateStep|0|key_localized": "Power level",
      "state|plateStep|1|value_raw": 0,
      "state|plateStep|1|value_localized": "0",
      "state|plateStep|1|key_localized": "Power level",
      "state|plateStep|2|value_raw": 0,
      "state|plateStep|2|value_localized": "0",
      "state|plateStep|2|key_localized": "Power level",
      "state|plateStep|3|value_raw": 0,
      "state|plateStep|3|value_localized": "0",
      "state|plateStep|3|key_localized": "Power level",
      "state|plateStep|4|value_raw": 0,
      "state|plateStep|4|value_localized": "0",
      "state|plateStep|4|key_localized": "Power level",
      "state|plateStep|5|value_raw": 0,
      "state|plateStep|5|value_localized": "0",
      "state|plateStep|5|key_localized": "Power level",
      "state|ecoFeedback": null,
      "state|batteryLevel": null
    },
    "actions": {
      "processAction": [],
      "light": [],
      "ambientLight": [],
      "startTime": [],
      "ventilationStep": [],
      "programId": [],
      "targetTemperature": [],
      "deviceName": true,
      "powerOn": false,
      "powerOff": false,
      "colors": [],
      "modes": [],
      "runOnTime": []
    },
    "programs": [],
    "id_log": [],
    "local_mappings": {}
  }
}

One pot level B; 1500W

{
  "home_assistant": {
    "installation_type": "Home Assistant Supervised",
    "version": "2023.11.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Australia/Brisbane",
    "os_name": "Linux",
    "os_version": "5.14.0-odroid-arm64",
    "supervisor": "2023.10.1",
    "host_os": "Debian GNU/Linux 11 (bullseye)",
    "docker_version": "24.0.5",
    "chassis": "",
    "run_as_root": true
  },
  "custom_components": {
    "huawei_solar": {
      "version": "1.2.4",
      "requirements": [
        "huawei-solar>=1.2.0,<2.0.0"
      ]
    },
    "googlewifi": {
      "version": "0.1.34",
      "requirements": [
        "googlewifi==0.0.21"
      ]
    },
    "meross_lan": {
      "version": "4.4.0-alpha.1",
      "requirements": []
    },
    "tesla_custom": {
      "version": "3.19.0",
      "requirements": [
        "teslajsonpy==3.9.6"
      ]
    },
    "dyson_cloud": {
      "version": "0.15.0",
      "requirements": [
        "libdyson==0.8.7"
      ]
    },
    "solaredge_modbus_multi": {
      "version": "2.4.6",
      "requirements": [
        "pymodbus>=3.5.1"
      ]
    },
    "garmin_connect": {
      "version": "0.2.17",
      "requirements": [
        "garminconnect==0.2.3",
        "tzlocal"
      ]
    },
    "battery_consumption": {
      "version": "1.0.4",
      "requirements": []
    },
    "miele": {
      "version": "0.1.16",
      "requirements": [
        "flatdict==4.0.1",
        "pymiele==0.1.7"
      ]
    },
    "scheduler": {
      "version": "v0.0.0",
      "requirements": []
    },
    "climate_template": {
      "version": "0.6.1",
      "requirements": []
    },
    "dyson_local": {
      "version": "0.16.4-4",
      "requirements": [
        "libdyson==0.8.11"
      ]
    },
    "versatile_thermostat": {
      "version": "3.8.0",
      "requirements": []
    },
    "localtuya": {
      "version": "5.2.1",
      "requirements": []
    },
    "smartthinq_sensors": {
      "version": "0.34.0",
      "requirements": [
        "pycountry>=20.7.3",
        "xmltodict>=0.12.0",
        "charset_normalizer>=2.0.0"
      ]
    },
    "solcast_solar": {
      "version": "4.0.12",
      "requirements": [
        "aiohttp>=3.6.2",
        "datetime>=4.3",
        "isodate>=0.6.1"
      ]
    },
    "deebot": {
      "version": "3.0.0b0",
      "requirements": [
        "deebot-client==4.0.0b0",
        "numpy>=1.23.2"
      ]
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "bureau_of_meteorology": {
      "version": "1.2.0",
      "requirements": [
        "iso8601"
      ]
    },
    "powercalc": {
      "version": "v1.9.6",
      "requirements": [
        "numpy>=1.21.1"
      ]
    },
    "opennem": {
      "version": "2022.09.1",
      "requirements": []
    },
    "solaredge_modbus": {
      "version": "1.10.0",
      "requirements": [
        "pymodbus==3.5.2"
      ]
    },
    "tesla_gateway": {
      "version": "0.1.0",
      "requirements": [
        "teslapy==2.8.0"
      ]
    }
  },
  "integration_manifest": {
    "domain": "miele",
    "name": "Miele",
    "codeowners": [
      "@astrandb"
    ],
    "config_flow": true,
    "dependencies": [
      "application_credentials",
      "http"
    ],
    "documentation": "https://github.com/astrandb/miele",
    "homekit": {},
    "integration_type": "hub",
    "iot_class": "cloud_push",
    "issue_tracker": "https://github.com/astrandb/miele/issues",
    "loggers": [
      "pymiele"
    ],
    "requirements": [
      "flatdict==4.0.1",
      "pymiele==0.1.7"
    ],
    "ssdp": [],
    "version": "0.1.16",
    "zeroconf": [
      "_mieleathome._tcp.local."
    ],
    "is_built_in": false
  },
  "data": {
    "info": {
      "manufacturer": "Miele",
      "model": "KM7897"
    },
    "data": {
      "ident|type|key_localized": "Device type",
      "ident|type|value_raw": 27,
      "ident|type|value_localized": "Hob",
      "ident|deviceName": "",
      "ident|protocolVersion": 2,
      "ident|deviceIdentLabel|fabNumber": "**REDACTED**",
      "ident|deviceIdentLabel|fabIndex": "00",
      "ident|deviceIdentLabel|techType": "KM7897",
      "ident|deviceIdentLabel|matNumber": "11230270",
      "ident|deviceIdentLabel|swids|0": "4889",
      "ident|deviceIdentLabel|swids|1": "20446",
      "ident|deviceIdentLabel|swids|2": "25122",
      "ident|deviceIdentLabel|swids|3": "20447",
      "ident|deviceIdentLabel|swids|4": "4741",
      "ident|deviceIdentLabel|swids|5": "20270",
      "ident|deviceIdentLabel|swids|6": "25123",
      "ident|deviceIdentLabel|swids|7": "4741",
      "ident|deviceIdentLabel|swids|8": "20270",
      "ident|deviceIdentLabel|swids|9": "25123",
      "ident|deviceIdentLabel|swids|10": "4741",
      "ident|deviceIdentLabel|swids|11": "20270",
      "ident|deviceIdentLabel|swids|12": "25123",
      "ident|deviceIdentLabel|swids|13": "4741",
      "ident|deviceIdentLabel|swids|14": "20270",
      "ident|deviceIdentLabel|swids|15": "25123",
      "ident|deviceIdentLabel|swids|16": "4310",
      "ident|deviceIdentLabel|swids|17": "20270",
      "ident|deviceIdentLabel|swids|18": "25278",
      "ident|xkmIdentLabel|techType": "EK039W",
      "ident|xkmIdentLabel|releaseVersion": "02.72",
      "state|ProgramID|value_raw": 0,
      "state|ProgramID|value_localized": "",
      "state|ProgramID|key_localized": "Program name",
      "state|status|value_raw": 5,
      "state|status|value_localized": "In use",
      "state|status|key_localized": "status",
      "state|programType|value_raw": 0,
      "state|programType|value_localized": "Program",
      "state|programType|key_localized": "Program type",
      "state|programPhase|value_raw": 0,
      "state|programPhase|value_localized": "",
      "state|programPhase|key_localized": "Program phase",
      "state|remainingTime|0": 0,
      "state|remainingTime|1": 0,
      "state|startTime|0": 0,
      "state|startTime|1": 0,
      "state|targetTemperature|0|value_raw": -32768,
      "state|targetTemperature|0|value_localized": null,
      "state|targetTemperature|0|unit": "Celsius",
      "state|coreTargetTemperature": {},
      "state|temperature|0|value_raw": -32768,
      "state|temperature|0|value_localized": null,
      "state|temperature|0|unit": "Celsius",
      "state|temperature|1|value_raw": -32768,
      "state|temperature|1|value_localized": null,
      "state|temperature|1|unit": "Celsius",
      "state|temperature|2|value_raw": -32768,
      "state|temperature|2|value_localized": null,
      "state|temperature|2|unit": "Celsius",
      "state|coreTemperature": {},
      "state|signalInfo": false,
      "state|signalFailure": false,
      "state|signalDoor": false,
      "state|remoteEnable|fullRemoteControl": true,
      "state|remoteEnable|smartGrid": false,
      "state|remoteEnable|mobileStart": false,
      "state|ambientLight": null,
      "state|light": null,
      "state|elapsedTime": {},
      "state|spinningSpeed|unit": "rpm",
      "state|spinningSpeed|value_raw": null,
      "state|spinningSpeed|value_localized": null,
      "state|spinningSpeed|key_localized": "Spin speed",
      "state|dryingStep|value_raw": null,
      "state|dryingStep|value_localized": "",
      "state|dryingStep|key_localized": "Drying level",
      "state|ventilationStep|value_raw": null,
      "state|ventilationStep|value_localized": "",
      "state|ventilationStep|key_localized": "Fan level",
      "state|plateStep|0|value_raw": 118,
      "state|plateStep|0|value_localized": "Boost\u00a01",
      "state|plateStep|0|key_localized": "Power level",
      "state|plateStep|1|value_raw": 0,
      "state|plateStep|1|value_localized": "0",
      "state|plateStep|1|key_localized": "Power level",
      "state|plateStep|2|value_raw": 0,
      "state|plateStep|2|value_localized": "0",
      "state|plateStep|2|key_localized": "Power level",
      "state|plateStep|3|value_raw": 0,
      "state|plateStep|3|value_localized": "0",
      "state|plateStep|3|key_localized": "Power level",
      "state|plateStep|4|value_raw": 0,
      "state|plateStep|4|value_localized": "0",
      "state|plateStep|4|key_localized": "Power level",
      "state|plateStep|5|value_raw": 0,
      "state|plateStep|5|value_localized": "0",
      "state|plateStep|5|key_localized": "Power level",
      "state|ecoFeedback": null,
      "state|batteryLevel": null
    },
    "actions": {
      "processAction": [],
      "light": [],
      "ambientLight": [],
      "startTime": [],
      "ventilationStep": [],
      "programId": [],
      "targetTemperature": [],
      "deviceName": true,
      "powerOn": false,
      "powerOff": false,
      "colors": [],
      "modes": [],
      "runOnTime": []
    },
    "programs": [],
    "id_log": [],
    "local_mappings": {}
  }
}

Six pots; levels 1-6; 1000W, Power Factor 15%

{
  "home_assistant": {
    "installation_type": "Home Assistant Supervised",
    "version": "2023.11.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Australia/Brisbane",
    "os_name": "Linux",
    "os_version": "5.14.0-odroid-arm64",
    "supervisor": "2023.10.1",
    "host_os": "Debian GNU/Linux 11 (bullseye)",
    "docker_version": "24.0.5",
    "chassis": "",
    "run_as_root": true
  },
  "custom_components": {
    "huawei_solar": {
      "version": "1.2.4",
      "requirements": [
        "huawei-solar>=1.2.0,<2.0.0"
      ]
    },
    "googlewifi": {
      "version": "0.1.34",
      "requirements": [
        "googlewifi==0.0.21"
      ]
    },
    "meross_lan": {
      "version": "4.4.0-alpha.1",
      "requirements": []
    },
    "tesla_custom": {
      "version": "3.19.0",
      "requirements": [
        "teslajsonpy==3.9.6"
      ]
    },
    "dyson_cloud": {
      "version": "0.15.0",
      "requirements": [
        "libdyson==0.8.7"
      ]
    },
    "solaredge_modbus_multi": {
      "version": "2.4.6",
      "requirements": [
        "pymodbus>=3.5.1"
      ]
    },
    "garmin_connect": {
      "version": "0.2.17",
      "requirements": [
        "garminconnect==0.2.3",
        "tzlocal"
      ]
    },
    "battery_consumption": {
      "version": "1.0.4",
      "requirements": []
    },
    "miele": {
      "version": "0.1.16",
      "requirements": [
        "flatdict==4.0.1",
        "pymiele==0.1.7"
      ]
    },
    "scheduler": {
      "version": "v0.0.0",
      "requirements": []
    },
    "climate_template": {
      "version": "0.6.1",
      "requirements": []
    },
    "dyson_local": {
      "version": "0.16.4-4",
      "requirements": [
        "libdyson==0.8.11"
      ]
    },
    "versatile_thermostat": {
      "version": "3.8.0",
      "requirements": []
    },
    "localtuya": {
      "version": "5.2.1",
      "requirements": []
    },
    "smartthinq_sensors": {
      "version": "0.34.0",
      "requirements": [
        "pycountry>=20.7.3",
        "xmltodict>=0.12.0",
        "charset_normalizer>=2.0.0"
      ]
    },
    "solcast_solar": {
      "version": "4.0.12",
      "requirements": [
        "aiohttp>=3.6.2",
        "datetime>=4.3",
        "isodate>=0.6.1"
      ]
    },
    "deebot": {
      "version": "3.0.0b0",
      "requirements": [
        "deebot-client==4.0.0b0",
        "numpy>=1.23.2"
      ]
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "bureau_of_meteorology": {
      "version": "1.2.0",
      "requirements": [
        "iso8601"
      ]
    },
    "powercalc": {
      "version": "v1.9.6",
      "requirements": [
        "numpy>=1.21.1"
      ]
    },
    "opennem": {
      "version": "2022.09.1",
      "requirements": []
    },
    "solaredge_modbus": {
      "version": "1.10.0",
      "requirements": [
        "pymodbus==3.5.2"
      ]
    },
    "tesla_gateway": {
      "version": "0.1.0",
      "requirements": [
        "teslapy==2.8.0"
      ]
    }
  },
  "integration_manifest": {
    "domain": "miele",
    "name": "Miele",
    "codeowners": [
      "@astrandb"
    ],
    "config_flow": true,
    "dependencies": [
      "application_credentials",
      "http"
    ],
    "documentation": "https://github.com/astrandb/miele",
    "homekit": {},
    "integration_type": "hub",
    "iot_class": "cloud_push",
    "issue_tracker": "https://github.com/astrandb/miele/issues",
    "loggers": [
      "pymiele"
    ],
    "requirements": [
      "flatdict==4.0.1",
      "pymiele==0.1.7"
    ],
    "ssdp": [],
    "version": "0.1.16",
    "zeroconf": [
      "_mieleathome._tcp.local."
    ],
    "is_built_in": false
  },
  "data": {
    "info": {
      "manufacturer": "Miele",
      "model": "KM7897"
    },
    "data": {
      "ident|type|key_localized": "Device type",
      "ident|type|value_raw": 27,
      "ident|type|value_localized": "Hob",
      "ident|deviceName": "",
      "ident|protocolVersion": 2,
      "ident|deviceIdentLabel|fabNumber": "**REDACTED**",
      "ident|deviceIdentLabel|fabIndex": "00",
      "ident|deviceIdentLabel|techType": "KM7897",
      "ident|deviceIdentLabel|matNumber": "11230270",
      "ident|deviceIdentLabel|swids|0": "4889",
      "ident|deviceIdentLabel|swids|1": "20446",
      "ident|deviceIdentLabel|swids|2": "25122",
      "ident|deviceIdentLabel|swids|3": "20447",
      "ident|deviceIdentLabel|swids|4": "4741",
      "ident|deviceIdentLabel|swids|5": "20270",
      "ident|deviceIdentLabel|swids|6": "25123",
      "ident|deviceIdentLabel|swids|7": "4741",
      "ident|deviceIdentLabel|swids|8": "20270",
      "ident|deviceIdentLabel|swids|9": "25123",
      "ident|deviceIdentLabel|swids|10": "4741",
      "ident|deviceIdentLabel|swids|11": "20270",
      "ident|deviceIdentLabel|swids|12": "25123",
      "ident|deviceIdentLabel|swids|13": "4741",
      "ident|deviceIdentLabel|swids|14": "20270",
      "ident|deviceIdentLabel|swids|15": "25123",
      "ident|deviceIdentLabel|swids|16": "4310",
      "ident|deviceIdentLabel|swids|17": "20270",
      "ident|deviceIdentLabel|swids|18": "25278",
      "ident|xkmIdentLabel|techType": "EK039W",
      "ident|xkmIdentLabel|releaseVersion": "02.72",
      "state|ProgramID|value_raw": 0,
      "state|ProgramID|value_localized": "",
      "state|ProgramID|key_localized": "Program name",
      "state|status|value_raw": 5,
      "state|status|value_localized": "In use",
      "state|status|key_localized": "status",
      "state|programType|value_raw": 0,
      "state|programType|value_localized": "Program",
      "state|programType|key_localized": "Program type",
      "state|programPhase|value_raw": 0,
      "state|programPhase|value_localized": "",
      "state|programPhase|key_localized": "Program phase",
      "state|remainingTime|0": 0,
      "state|remainingTime|1": 0,
      "state|startTime|0": 0,
      "state|startTime|1": 0,
      "state|targetTemperature|0|value_raw": -32768,
      "state|targetTemperature|0|value_localized": null,
      "state|targetTemperature|0|unit": "Celsius",
      "state|coreTargetTemperature": {},
      "state|temperature|0|value_raw": -32768,
      "state|temperature|0|value_localized": null,
      "state|temperature|0|unit": "Celsius",
      "state|temperature|1|value_raw": -32768,
      "state|temperature|1|value_localized": null,
      "state|temperature|1|unit": "Celsius",
      "state|temperature|2|value_raw": -32768,
      "state|temperature|2|value_localized": null,
      "state|temperature|2|unit": "Celsius",
      "state|coreTemperature": {},
      "state|signalInfo": false,
      "state|signalFailure": false,
      "state|signalDoor": false,
      "state|remoteEnable|fullRemoteControl": true,
      "state|remoteEnable|smartGrid": false,
      "state|remoteEnable|mobileStart": false,
      "state|ambientLight": null,
      "state|light": null,
      "state|elapsedTime": {},
      "state|spinningSpeed|unit": "rpm",
      "state|spinningSpeed|value_raw": null,
      "state|spinningSpeed|value_localized": null,
      "state|spinningSpeed|key_localized": "Spin speed",
      "state|dryingStep|value_raw": null,
      "state|dryingStep|value_localized": "",
      "state|dryingStep|key_localized": "Drying level",
      "state|ventilationStep|value_raw": null,
      "state|ventilationStep|value_localized": "",
      "state|ventilationStep|key_localized": "Fan level",
      "state|plateStep|0|value_raw": 6,
      "state|plateStep|0|value_localized": "3.",
      "state|plateStep|0|key_localized": "Power level",
      "state|plateStep|1|value_raw": 12,
      "state|plateStep|1|value_localized": "6.",
      "state|plateStep|1|key_localized": "Power level",
      "state|plateStep|2|value_raw": 2,
      "state|plateStep|2|value_localized": "1.",
      "state|plateStep|2|key_localized": "Power level",
      "state|plateStep|3|value_raw": 4,
      "state|plateStep|3|value_localized": "2.",
      "state|plateStep|3|key_localized": "Power level",
      "state|plateStep|4|value_raw": 8,
      "state|plateStep|4|value_localized": "4.",
      "state|plateStep|4|key_localized": "Power level",
      "state|plateStep|5|value_raw": 10,
      "state|plateStep|5|value_localized": "5.",
      "state|plateStep|5|key_localized": "Power level",
      "state|ecoFeedback": null,
      "state|batteryLevel": null
    },
    "actions": {
      "processAction": [],
      "light": [],
      "ambientLight": [],
      "startTime": [],
      "ventilationStep": [],
      "programId": [],
      "targetTemperature": [],
      "deviceName": true,
      "powerOn": false,
      "powerOff": false,
      "colors": [],
      "modes": [],
      "runOnTime": []
    },
    "programs": [],
    "id_log": [],
    "local_mappings": {}
  }
}

PXL_20231103_090458220

@astrandb
Copy link
Owner Author

astrandb commented Nov 3, 2023

Thank you, I will prepare a release for you to test later today (CET).

@astrandb
Copy link
Owner Author

astrandb commented Nov 3, 2023

OK, here we go for a test:
If guess you are using HACS for download of custom integrations.

In that case:

  • Enter HACS and select redownload of the Miele integration
  • Select version main in the dropdown box
  • Execute and restart Home Assistant

The cooking zones should now be displayed with the actual power settings. If you change the power settings nothing will happen on your cooktop. The API does not allow any changes on hobs.

I hope it works as expected.

@purcell-lab
Copy link

I downloaded main (via HACS).

I haven't been able to see my hot plates should they show up as attributes?

@astrandb
Copy link
Owner Author

astrandb commented Nov 4, 2023

Did you restart HA? The plates should appear as slider controls.

@purcell-lab
Copy link

purcell-lab commented Nov 4, 2023

Yes restarted a couple of times since then.

main presents itself as version cafc566, can I check any of the code inside config to check I have the right version?

Checked within __init and I can see Type 27 so I have the right version.

image

Redownloaded and restarted and I have sliders now.

image

looks good.

Screenshot_20231104-184257

@astrandb astrandb linked a pull request Nov 4, 2023 that will close this issue
@astrandb
Copy link
Owner Author

astrandb commented Nov 4, 2023

OK, thank you for all your help with the reverse engineering and debugging.
I will prepare a new release with these additions included.

@astrandb astrandb closed this as completed Nov 4, 2023
@purcell-lab
Copy link

As the plateStep entities are not able to be changed by the user, is there a reason you represent these as a number entity, with a slider that cannot be changed, instead of a regular sensor entity?

https://developers.home-assistant.io/docs/core/entity/number/

@astrandb
Copy link
Owner Author

astrandb commented Nov 5, 2023

My initial thought was to mimic the analog sliders on the cooktop. I also had a vague hope that Miele eventually would allow remote control of the zones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants