Andre0512 / hon

Home Assistant integration for Haier hOn: support for Haier/Candy/Hoover home appliances like washing machines and air conditioners in 28 languages.
MIT License
1.3k stars 2.46k forks source link

Add support for CANDY RO44 1286DWMC4-07 #53

Closed tlf5000 closed 1 year ago

tlf5000 commented 1 year ago

Hello! I would like to get full support for this washing machine.In versions v0.8.0-beta.3 and v0.8.0-beta.4 the input works, but only 7 sensors are visible and there is no control. Here is the output of "Show Device Info":

data:
  additional_data:
  appliance:
    applianceModelId: 216
    applianceStatus: 1
    applianceTypeName: WM
    attributes:
      acuVersion: 4.B.A
      chipset: ESP32D0WDQ5
      dictionaryId: 117
      lang: it-IT
      uiVersion: 6.A.0
    brand: candy
    eepromId: 95
    eepromName: 45320308
    enrollmentDate: 2020-10-03T07:17:55.434Z
    fwVersion: 5.12.0
    lastUpdate: 2022-03-02T18:31:31Z
    macAddress: xx-xx-xx-xx-xx-xx
    modelName: RO441286DWMC4-07
    nickName: Стиралка
    sections:
      ecoDelayStart: True
    topics:
      publish:
      subscribe:
        - $aws/events/presence/disconnected/xx-xx-xx-xx-xx-xx
        - $aws/events/presence/connected/xx-xx-xx-xx-xx-xx
        - haier/things/xx-xx-xx-xx-xx-xx/event/appliancestatus/update
        - haier/things/xx-xx-xx-xx-xx-xx/event/discovery/update
    waterHard: 2
  attributes:
    activity:
    commandHistory:
      command:
        ancillaryParameters:
          disTestOn: 0
          liquidDetergentDose: 2
          powderDetergentDose: 2
          programFamily: [dashboard]
          programType: W+D+S
          remoteActionable: 1
          remoteVisible: 1
          steamType: S
          suggestedLoadW: 3.5
          tempContribution: 1
        applianceOptions:
          opt1: prewash
          opt2: hygiene
          opt3: anticrease
          opt4: goodNight
          opt5: extraRinse1
          opt6: extraRinse2
          opt7: extraRinse3
          opt8: acquaplus
        applianceType: WM
        attributes:
          channel: mobileApp
          origin: standardProgram
        commandName: pauseProgram
        device:
          appVersion: 1.32.4
          deviceModel: exynos7870
          mobileId: f6bc9499a3f6a68b
          mobileOs: android
          osVersion: 29
        macAddress: xx-xx-xx-xx-xx-xx
        parameters:
          pause: 1
        timestamp: 2021-11-28T13:04:38.739Z
        transactionId: xx-xx-xx-xx-xx-xx_2021-11-28T13:04:38.739Z
      timestampAccepted: 2021-11-28T13:04:40.2Z
      timestampExecuted: 2021-11-28T13:04:40.6Z
    lastConnEvent:
      category: CONNECTED
      instantTime: 2023-05-19T04:54:55Z
      macAddress: xx-xx-xx-xx-xx-xx
      timestampEvent: 1684472095180
    parameters:
      acquaplus: 0
      anticrease: 0
      apsFreq: 62539
      apsOff: 0
      chartL: 0
      checkUpStatus: 0
      counterMV: 0
      delayTime: 0
      dirtyLevel: 3
      disTestOn: 0
      disTestRes: 0
      dryCotton120: 0
      dryCotton30: 0
      dryCotton60: 0
      dryCotton90: 0
      dryCottonExtra: 0
      dryCottonPA: 0
      dryCottonPS: 0
      dryLevel: 0
      drySynt120: 0
      drySynt30: 0
      drySynt60: 0
      drySynt90: 0
      drySyntExtra: 0
      drySyntPA: 0
      drySyntPS: 0
      dryTime: 0
      error: 00
      extraRinse1: 0
      extraRinse2: 0
      extraRinse3: 0
      fillR: 0
      goodNight: 0
      hygiene: 0
      lang: 16
      machMode: 1
      motS: 0
      nightWashStatus: 0
      ntcD: 7
      ntcW: 201
      numF: 0
      opt9: 0
      prCode: 37
      prCodeFav: 0
      prPhase: 0
      prPosition: 1
      prewash: 0
      program1: 97
      program10: 13
      program11: 173
      program12: 0
      program13: 11
      program14: 186
      program15: 0
      program16: 0
      program17: 0
      program18: 0
      program19: 5
      program2: 187
      program20: 3
      program21: 0
      program3: 8
      program4: 1
      program5: 43
      program6: 27
      program7: 104
      program8: 6
      program9: 21
      recipeId: 0
      remainingTimeMM: 39
      remoteCtrValid: 1
      spinSpeed: 1200
      steamLevel: 0
      t0R: 0
      t0W: 0
      tIW: 0
      temp: 40
      temp0to30: 648
      temp40: 182
      temp60to90: 55
      unbC: 0
      unbF: 0
    resultCode: 0
  statistics:
    drumCleaning:
      count: 885
      percentage: 885
      remaining: -785
      tot: 100
    filterCleaning:
      count: 885
      percentage: 885
      remaining: -785
      tot: 100
    lastCheckup: None
    loadingPercentage:
      - current: None
        date: 2023-05-18T04:02:59Z
        max: None
      - current: None
        date: 2023-05-18T04:02:59.2Z
        max: None
      - current: None
        date: 2023-05-16T04:07:11Z
        max: None
      - current: None
        date: 2023-05-16T04:07:11.0Z
        max: None
      - current: None
        date: 2023-05-15T16:30:16Z
        max: None
    mostUsedPrograms:
      - count: 78
        prCode: 4
        prPosition: 11
        programName: PROGRAMS.WD.SYNTHETIC_AND_COLOURED
        programType: W+D+S
      - count: 56
        prCode: 37
        prPosition: 1
        programName: PROGRAMS.WM_WD.SPECIAL_39
        programType: W+D
      - count: 37
        prCode: 12
        prPosition: 2
        programName: PROGRAMS.WD.MIX_AND_COLOUR_59
        programType: W+D+S
      - count: 33
        prCode: 37
        prPosition: 1
        programName: PROGRAMS.WD.SPECIAL_39
        programType: W+D
      - count: 28
        prCode: 10
        prPosition: 7
        programName: PROGRAMS.WM_WD.RAPID_30_MIN
        programType: W+D
    programsCounter: 456
    resultCode: 0
    temperatureUsage:
      temp0to30: 648
      temp40: 182
      temp60to90: 55
commands:
pyhOnVersion: 0.10.9
Andre0512 commented 1 year ago

Hey, I think the problem of missing controls is related to #51 and the commands can't still be fetched correct. Can you see something in the logs?

tlf5000 commented 1 year ago

Yes, you are right there are errors in the logs.

Logger: pyhon.hon
Source: custom_components/hon/__init__.py:31
Integration: Haier hOn ([documentation](https://github.com/Andre0512/hon/), [issues](https://github.com/Andre0512/hon/issues))
First occurred: 06:45:10 (1 occurrences)
Last logged: 06:45:10

Device data - {'fwVersion': '5.12.0', 'waterHard': 2, 'nickName': 'Стиралка', 'enrollmentDate': '2020-10-03T07:17:55.434Z', 'brand': 'candy', 'attributes': {'acuVersion': '4.B.A', 'chipset': 'ESP32D0WDQ5', 'dictionaryId': '117', 'lang': 'it-IT', 'uiVersion': '6.A.0'}, 'lastUpdate': '2022-03-02T18:31:31Z', 'applianceModelId': 216, 'eepromId': 95, 'applianceStatus': 1, 'coords': {'lng': 38.3624008, 'lat': 55.9939834}, 'SK': 'app#24-6f-28-71-b0-50', 'macAddress': '24-6f-28-71-b0-50', 'eepromName': '45320308', 'PK': 'user#eu-west-1:ae2c7fa0-2584-419f-9ea5-6ca136329ef6', 'modelName': 'RO441286DWMC4-07', 'applianceTypeName': 'WM', 'serialNumber': '3101111720310044', 'sections': {'ecoDelayStart': True}, 'topics': {'publish': [], 'subscribe': ['$aws/events/presence/disconnected/24-6f-28-71-b0-50', '$aws/events/presence/connected/24-6f-28-71-b0-50', 'haier/things/24-6f-28-71-b0-50/event/appliancestatus/update', 'haier/things/24-6f-28-71-b0-50/event/discovery/update']}}
Logger: pyhon.hon
Source: /usr/local/lib/python3.10/site-packages/pyhon/hon.py:85
First occurred: 06:45:10 (1 occurrences)
Last logged: 06:45:10

'series'
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 77, in _create_appliance
    await asyncio.gather(
  File "/usr/local/lib/python3.10/site-packages/pyhon/appliance.py", line 205, in load_commands
    raw = await self.api.load_commands(self)
  File "/usr/local/lib/python3.10/site-packages/pyhon/connection/api.py", line 79, in load_commands
    "series": appliance.info["series"],
KeyError: 'series'
Andre0512 commented 1 year ago

Hi, thanks I think I now understand how the appliance code is parsed correctly, please test the latest beta :slightly_smiling_face:

tlf5000 commented 1 year ago

Hi!This weekend was the time to test the operation of the washing machine.All functions work!That's great!Thanks!The only thing I didn't see was the condition of the door, as I understand it is not in this model?

Andre0512 commented 1 year ago

Hey, good to hear thanks! 👍 You're right, your appliance does not expose a door status 🙂