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.29k stars 2.47k forks source link

Device shows up sensor work but controls dont #20

Closed skillfullsheep closed 1 year ago

skillfullsheep commented 1 year ago

Just installed this and it looks brilliant. I have a tumble dryer that shows up fine but the controls dont seem to work. If I start a program from the hOn app the the switch changes state in HA but if I click the switch in HA then the program doesnt run and the switch will flip back afte a couple of seconds. Here is the data from the Log Device Info button.

data:
  active: False
  appliance:
    applianceId: 12-34-56-78-90-ab#2022-02-27T15:20:01Z
    applianceModelId: 1085
    applianceStatus: 1
    applianceTypeId: 8
    applianceTypeName: TD
    attributes:
      acuVersion: 3.C.0
      chipset: ESP32D0WDQ5
      dictionaryId: 198
      lang: it-IT
      uiVersion: 3.B.6
    brand: candy
    connectivity: wifi|ble
    eepromId: 707
    eepromName: 70008880
    enrollmentDate: 2022-02-27T15:20:01.188Z
    fwVersion: 3.1.6
    id: 1085
    lastUpdate: 2022-02-27T15:20:13Z
    macAddress: 12-34-56-78-90-ab
    modelName: CSOE C10DE-80
    nickName: Tumble dryer
    purchaseDate: 2022-02-15T00:00:00.000Z
    sections:
      chatbot: True
      demo: True
      ecoDelayStart: True
      inventory: True
      snap_and_dry: True
      snap_wash: True
    series: smartPro
    structure: thermicCondensed
    topics:
      publish:
      subscribe:
        - $aws/events/presence/disconnected/12-34-56-78-90-ab
        - $aws/events/presence/connected/12-34-56-78-90-ab
        - haier/things/12-34-56-78-90-ab/event/appliancestatus/update
        - haier/things/12-34-56-78-90-ab/event/discovery/update
  attributes:
    activity:
    commandHistory:
      command:
        ancillaryParameters:
          dryTimeMM: 30
          ecoDelayStart: 0
          energyLabel: 0
          functionalId: 8
          programFamily: [hidden]
          programRules:
            dryLevel:
              opt3:
                1:
                  fixedValue: 1
                  typology: fixed
            dryTime:
              dryTimeMM:
                100:
                  fixedValue: 7
                  typology: fixed
                110:
                  fixedValue: 8
                  typology: fixed
                120:
                  fixedValue: 9
                  typology: fixed
                130:
                  fixedValue: 10
                  typology: fixed
                140:
                  fixedValue: 11
                  typology: fixed
                150:
                  fixedValue: 12
                  typology: fixed
                160:
                  fixedValue: 13
                  typology: fixed
                170:
                  fixedValue: 14
                  typology: fixed
                180:
                  fixedValue: 15
                  typology: fixed
                190:
                  fixedValue: 16
                  typology: fixed
                200:
                  fixedValue: 17
                  typology: fixed
                210:
                  fixedValue: 18
                  typology: fixed
                220:
                  fixedValue: 19
                  typology: fixed
                30:
                  fixedValue: 1
                  typology: fixed
                45:
                  fixedValue: 2
                  typology: fixed
                59:
                  fixedValue: 3
                  typology: fixed
                70:
                  fixedValue: 4
                  typology: fixed
                80:
                  fixedValue: 5
                  typology: fixed
                90:
                  fixedValue: 6
                  typology: fixed
            opt3:
              dryLevel:
                2|3|4:
                  fixedValue: 0
                  typology: fixed
          remoteActionable: 1
          remoteVisible: 1
          suggestedLoadD: 2.5
        applianceOptions:
          opt1: anticrease
          opt2: dryingManager
          opt3: bestIroning
          opt4: hybrid
        applianceType: TD
        attributes:
          channel: mobileApp
          energyLabel: 0
          origin: lastProgram
          prStr: Rapid 30
        commandName: startProgram
        device:
          appVersion: 1.54.9
          deviceModel: iPhone15,2
          mobileId: 80DC0C44-2C44-49A6-81B0-1190B8690656
          mobileOs: ios
          osVersion: 16.3.1
        macAddress: 12-34-56-78-90-ab
        parameters:
          anticrease: 1
          bestIroning: 0
          checkUpStatus: 0
          delayTime: 0
          dryLevel: 0
          dryingManager: 0
          hybrid: 1
          onOffStatus: 1
          opt5: 0
          opt6: 0
          opt7: 0
          opt8: 0
          prCode: 29
          prPosition: 17
          remainingTimeMM: 30
        programName: PROGRAMS.TD.RAPID_30
        timestamp: 2023-04-12T11:11:57.732Z
        transactionId: 12-34-56-78-90-ab_2023-04-12T11:11:57.732Z
      timestampAccepted: 2023-04-12T11:11:59.9Z
      timestampExecuted: 2023-04-12T11:12:00.9Z
    lastConnEvent:
      category: CONNECTED
      instantTime: 2023-04-12T11:42:19Z
      macAddress: 12-34-56-78-90-ab
      timestampEvent: 1681299739947
    parameters:
      anticrease: 1
      bestIroning: 0
      checkUpStatus: 0
      delayTime: 0
      doorStatus: 0
      dryCotton120: 0
      dryCotton180: 0
      dryCotton60: 245
      dryCottonBone: 0
      dryCottonHang: 4
      dryCottonIron: 0
      dryCottonMax: 0
      dryCottonStore: 0
      dryFilterStatus: 0
      dryLevel: 2
      dryLevelMgmt: 0
      drySynth120: 0
      drySynth180: 0
      drySynth60: 0
      drySynthBone: 0
      drySynthHang: 0
      drySynthIron: 0
      drySynthMax: 0
      drySynthStore: 0
      dryTime: 0
      dryingManager: 1
      errors: 00
      hybrid: 0
      machMode: 1
      opt5: 0
      opt6: 0
      opt7: 0
      opt8: 0
      prCode: 0
      prPhase: 0
      prPosition: 1
      program1: 0
      program10: 3
      program10t: 45
      program11: 158
      program11t: 30
      program12: 1
      program12t: 20
      program13: 0
      program13t: 0
      program14: 0
      program14t: 0
      program15: 0
      program15t: 0
      program16: 0
      program16t: 0
      program17: 83
      program17t: 30
      program18: 0
      program18t: 0
      program19: 0
      program19t: 0
      program1t: 0
      program2: 3
      program20: 0
      program20t: 0
      program21: 0
      program21t: 0
      program2t: 58
      program3: 0
      program3t: 0
      program4: 0
      program4t: 0
      program5: 1
      program5t: 67
      program6: 0
      program6t: 0
      program7: 0
      program7t: 0
      program8: 0
      program8t: 0
      program9: 0
      program9t: 0
      remainingTimeMM: 180
      remoteCtrValid: 1
      tumblingStatus: 0
      waterTankStatus: 0
    resultCode: 0
  pause: False
  pauseProgram:
    pause: 1
  resumeProgram:
    pause: 0
  startProgram:
    checkUpStatus: 1
    prStr: 0
    program: iot_checkup
  statistics:
    mostUsedPrograms:
      - count: 619
        prCode: 0
        prPosition: 11
        programName: PROGRAMS.TD.SAVING_30_MIN
        programType: D
      - count: 85
        prCode: 29
        prPosition: 17
        programName: PROGRAMS.TD.RAPID_30
        programType: D
      - count: 3
        prCode: 0
        prPosition: 10
        programName: PROGRAMS.TD.DAILY_45_MIN
        programType: D
      - count: 3
        prCode: 1
        prPosition: 2
        programName: PROGRAMS.TD.ECO
        programType: D
      - count: 1
        prCode: 0
        prPosition: 12
        programName: PROGRAMS.TD.REFRESH
        programType: D
    programsCounter: 712
    resultCode: 0
  stopProgram:
    onOffStatus: 0 commands:
  pauseProgram:
  resumeProgram:
  startProgram:
    program:
      - daily_45_min
      - daily_perfect_59_min
      - darks_and_coloured
      - eco
      - iot_checkup
      - iot_dry_anti_mites
      - iot_dry_baby
      - iot_dry_backpacks
      - iot_dry_bathrobe
      - iot_dry_bed_linen
      - iot_dry_bed_quilt
      - iot_dry_cotton
      - iot_dry_cuddly_toys
      - iot_dry_curtains
      - iot_dry_dehumidifier
      - iot_dry_delicate_tablecloths
      - iot_dry_delicates
      - iot_dry_denim_jeans
      - iot_dry_down_jacket
      - iot_dry_duvet
      - iot_dry_easy_iron_cotton
      - iot_dry_easy_iron_synthetics
      - iot_dry_gym_fit
      - iot_dry_lingerie
      - iot_dry_mixed
      - iot_dry_playsuits
      - iot_dry_rapid_30
      - iot_dry_rapid_59
      - iot_dry_regenerates_waterproof
      - iot_dry_shirts
      - iot_dry_small_load
      - iot_dry_swimsuits_and_bikinis
      - iot_dry_synthetics
      - iot_dry_tablecloths
      - iot_dry_technical_fabrics
      - iot_dry_warm_embrace
      - iot_dry_wool
      - jeans
      - mix_and_dry
      - rapid_30
      - refresh
      - relax_creases
      - saving_30_min
      - shirts
      - small_load
      - sport_plus
      - synthetics
      - trainers
      - whites
      - woolmark
      - xxl_load
  stopProgram:
finalbillybong commented 1 year ago

I am having the same issue with both my washing machine and tumble dryer. The sensors work fine but the controls do not.

Andre0512 commented 1 year ago

Hi, thanks for reporting! I found the problem, I had overlooked that the naming of the mobile device attributes of the hon api is somewhat inconsistent. Fixed in v0.5.1 :+1:

finalbillybong commented 1 year ago

Hi, thanks for reporting! I found the problem, I had overlooked that the naming of the mobile device attributes of the hon api is somewhat inconsistent. Fixed in v0.5.1 👍

This fix has not worked for me, I'm afraid. The tumble dryer beeps when I tap the switch in HA but a few seconds later the switch turns off.

finalbillybong commented 1 year ago

I restarted HA again and it seems to be working now.