Haier hOn

Home Assistant integration for Haier hOn: support for Haier/Candy/Hoover home appliances like washing machines.
Supported Appliances
Installation
Method 1: 
Method 2: HACS > Integrations > Add Integration > Haier hOn > Install
Method 3: Manually copy hon folder from latest release to config/custom_components folder.
Restart Home Assistant
Configuration
Method 1: 
Method 2: Settings > Devices & Services > Add Integration > Haier hOn
If the integration is not in the list, you need to clear the browser cache.
Supported Models
Support was confirmed for these models. If a supported model is missing, please add it with this form.
- Haier WD90-B14TEAM5
- Haier HD80-A3959
- Haier HWO60SM2F3XH
- Hoover H-WASH 500
- Candy CIS633SCTTWIFI
- Haier XIB 3B2SFS-80
- Haier XIB 6B2D3FB
Supported Languages
Translation of internal names like programs are available for all languages which are official supported by the hOn app:
- 🇨🇳 Chinese
- 🇭🇷 Croatian
- 🇨🇿 Czech
- 🇳🇱 Dutch
- 🇬🇧 English
- 🇫🇷 French
- 🇩🇪 German
- 🇬🇷 Greek
- 🇮🇱 Hebrew
- 🇮🇹 Italian
- 🇵🇱 Polish
- 🇵🇹 Portuguese
- 🇷🇴 Romanian
- 🇷🇺 Russian
- 🇷🇸 Serbian
- 🇸🇰 Slovak
- 🇸🇮 Slovenian
- 🇪🇸 Spanish
- 🇹🇷 Turkish
Contribute
Any kind of contribution is welcome!
Read out device data
If you want to make a request for adding new appliances or additional attributes and don't want to use the command line, here is how you can read out your device data.
For every device exists a hidden button which can be used to log all info of your appliance.
- Enable the "Log Device Info" button
This button can be found in the diagnostic section of your device or in the entity overview if "show disabled entities" is enabled.
- Press the button
- Go to Settings > System > Logs, click load full logs and scroll down
The formatting is messy if you not load full logs
- Here you can find all data which can be read out via the api
- Copy this data and create a new issue with your request
Add appliances or additional attributes
- Install pyhOn
- Use the command line tool to read out all appliance data from your account
- Fork this repository and clone it to your local machine
- Add the keys of the attributes you'd like to have as
EntityDescription into this Repository
Example: Add pause button
- Create a pull request
Tips and Tricks
- If you want to have some states humanreadable, have a look at the
translation_key parameter of the EntityDescription.
- If you need to implement some more logic, create a pull request to the underlying library. There we collect special requirements in the
appliances directory.
- Use pyhOn's translate command to read out the official translations
About this Repo
The existing integrations missed some features from the app I liked to have in HomeAssistant.
I tried to create a pull request, but in the structures of these existing repos, I find it hard to fit in my needs, so I basically rewrote everything.
I moved the api related stuff into the package pyhOn.
Appliance Features
Air conditioner
Configs
| Name |
Icon |
Entity |
Key |
| 10° Heating |
heat-wave |
switch |
settings.10degreeHeatingStatus |
| Echo |
account-voice |
switch |
settings.echoStatus |
| Eco Mode |
|
switch |
settings.ecoMode |
| Eco Pilot |
run |
select |
settings.humanSensingStatus |
| Health Mode |
medication-outline |
switch |
settings.healthMode |
| Mute |
volume-off |
switch |
settings.muteStatus |
| Program |
|
select |
startProgram.program |
| Rapid Mode |
run-fast |
switch |
settings.rapidMode |
| Screen Display |
monitor-small |
switch |
settings.screenDisplayStatus |
| Self Cleaning |
air-filter |
switch |
settings.selfCleaningStatus |
| Self Cleaning 56 |
air-filter |
switch |
settings.selfCleaning56Status |
| Silent Sleep |
bed |
switch |
settings.silentSleepStatus |
| Target Temperature |
thermometer |
number |
settings.tempSel |
Dish washer
Controls
| Name |
Icon |
Entity |
Key |
| Dish Washer |
dishwasher |
switch |
startProgram / stopProgram |
Configs
| Name |
Icon |
Entity |
Key |
| Add Dish |
silverware-fork-knife |
switch |
startProgram.addDish |
| Delay time |
timer-plus |
number |
startProgram.delayTime |
| Eco Express |
sprout |
switch |
startProgram.ecoExpress |
| Eco Index |
sprout |
sensor |
startProgram.ecoIndex |
| Energy Label |
lightning-bolt-circle |
sensor |
startProgram.energyLabel |
| Extra Dry |
hair-dryer |
switch |
startProgram.extraDry |
| Half Load |
fraction-one-half |
switch |
startProgram.halfLoad |
| Open Door |
door-open |
switch |
startProgram.openDoor |
| Program |
|
select |
startProgram.program |
| Temperature |
thermometer |
sensor |
startProgram.temp |
| Three in One |
numeric-3-box-outline |
switch |
startProgram.threeInOne |
| Time |
timer |
sensor |
startProgram.remainingTime |
| Water Efficiency |
water |
sensor |
startProgram.waterEfficiency |
| Water Saving |
water-percent |
sensor |
startProgram.waterSaving |
| Water hard |
water |
number |
startProgram.waterHard |
Sensors
| Name |
Icon |
Entity |
Key |
| Connection |
|
binary_sensor |
attributes.lastConnEvent.category |
| Door |
|
binary_sensor |
doorStatus |
| Error |
math-log |
sensor |
errors |
| Machine Status |
information |
sensor |
machMode |
| Program Phase |
washing-machine |
sensor |
prPhase |
| Remaining Time |
timer |
sensor |
remainingTimeMM |
| Rinse Aid |
spray-bottle |
binary_sensor |
rinseAidStatus |
| Salt |
shaker-outline |
binary_sensor |
saltStatus |
Hob
Controls
| Name |
Icon |
Entity |
Key |
| Start Program |
pot-steam |
button |
startProgram |
Configs
| Name |
Icon |
Entity |
Key |
| Power Management |
timelapse |
number |
startProgram.powerManagement |
| Program |
|
select |
startProgram.program |
| Temperature |
thermometer |
number |
startProgram.temp |
Sensors
| Name |
Icon |
Entity |
Key |
| Connection |
wifi |
binary_sensor |
attributes.lastConnEvent.category |
| Error |
math-log |
sensor |
errors |
| Hob Lock |
|
binary_sensor |
hobLockStatus |
| Hot Status |
|
binary_sensor |
hotStatus |
| On |
power-cycle |
binary_sensor |
attributes.parameters.onOffStatus |
| Pan Status |
pot-mix |
binary_sensor |
panStatus |
| Power |
lightning-bolt |
sensor |
power |
| Remaining Time |
timer |
sensor |
remainingTimeMM |
| Temperature |
thermometer |
sensor |
temp |
Oven
Controls
| Name |
Icon |
Entity |
Key |
| Oven |
toaster-oven |
switch |
startProgram / stopProgram |
Configs
| Name |
Icon |
Entity |
Key |
| Delay time |
timer-plus |
number |
startProgram.delayTime |
| Preheat |
thermometer-chevron-up |
switch |
startProgram.preheatStatus |
| Program |
|
select |
startProgram.program |
| Program Duration |
timelapse |
number |
startProgram.prTime |
| Target Temperature |
thermometer |
number |
startProgram.tempSel |
Sensors
| Name |
Icon |
Entity |
Key |
| Connection |
wifi |
binary_sensor |
attributes.lastConnEvent.category |
| On |
power-cycle |
binary_sensor |
attributes.parameters.onOffStatus |
| Remaining Time |
timer |
sensor |
remainingTimeMM |
| Start Time |
clock-start |
sensor |
delayTime |
| Temperature |
thermometer |
sensor |
temp |
| Temperature Selected |
thermometer |
sensor |
tempSel |
Tumble dryer
Controls
| Name |
Icon |
Entity |
Key |
| Pause Tumble Dryer |
pause |
switch |
pauseProgram / resumeProgram |
| Tumble Dryer |
tumble-dryer |
switch |
startProgram / stopProgram |
Configs
| Name |
Icon |
Entity |
Key |
| Anti-Crease |
timer |
switch |
startProgram.antiCreaseTime |
| Anti-Crease |
timer |
switch |
startProgram.anticrease |
| Delay time |
timer-plus |
number |
startProgram.delayTime |
| Dry Time |
|
number |
startProgram.dryTime |
| Dry Time |
timer |
select |
startProgram.dryTimeMM |
| Dry level |
hair-dryer |
select |
startProgram.dryLevel |
| Energy Label |
lightning-bolt-circle |
sensor |
startProgram.energyLabel |
| Program |
|
select |
startProgram.program |
| Steam Type |
weather-dust |
sensor |
steamType |
| Steam level |
smoke |
sensor |
startProgram.steamLevel |
| Sterilization |
clock-start |
switch |
startProgram.sterilizationStatus |
| Suggested Load |
weight-kilogram |
sensor |
startProgram.suggestedLoadD |
| Temperature level |
thermometer |
number |
startProgram.tempLevel |
Sensors
| Name |
Icon |
Entity |
Key |
| Anti-Crease |
|
binary_sensor |
anticrease |
| Connection |
|
binary_sensor |
attributes.lastConnEvent.category |
| Door |
|
binary_sensor |
doorStatus |
| Dry level |
hair-dryer |
sensor |
dryLevel |
| Error |
math-log |
sensor |
errors |
| Machine Status |
information |
sensor |
machMode |
| Program |
tumble-dryer |
sensor |
programName |
| Program Phase |
washing-machine |
sensor |
prPhase |
| Remaining Time |
timer |
sensor |
remainingTimeMM |
| Start Time |
clock-start |
sensor |
delayTime |
| Steam level |
smoke |
sensor |
steamLevel |
| Temperature level |
thermometer |
sensor |
tempLevel |
Washer dryer
Controls
| Name |
Icon |
Entity |
Key |
| Pause Washer Dryer |
pause |
switch |
pauseProgram / resumeProgram |
| Washer Dryer |
washing-machine |
switch |
startProgram / stopProgram |
Configs
| Name |
Icon |
Entity |
Key |
| Acqua Plus |
water-plus |
switch |
startProgram.acquaplus |
| Anti-Crease |
timer |
switch |
startProgram.antiCreaseTime |
| Anti-Crease |
timer |
switch |
startProgram.anticrease |
| Auto Dose |
cup |
switch |
startProgram.autoDetergentStatus |
| Delay Status |
timer-check |
switch |
startProgram.delayStatus |
| Delay Time |
timer-plus |
number |
startProgram.delayTime |
| Dry Time |
|
number |
startProgram.dryTime |
| Dry Time |
timer |
select |
startProgram.dryTimeMM |
| Dry level |
hair-dryer |
select |
startProgram.dryLevel |
| Energy Label |
lightning-bolt-circle |
sensor |
startProgram.energyLabel |
| Extra Rinse 1 |
numeric-1-box-multiple-outline |
switch |
extraRinse1 |
| Extra Rinse 2 |
numeric-2-box-multiple-outline |
switch |
extraRinse2 |
| Extra Rinse 3 |
numeric-3-box-multiple-outline |
switch |
extraRinse3 |
| Good Night |
weather-night |
switch |
goodNight |
| Keep Fresh |
refresh-circle |
switch |
startProgram.autoSoftenerStatus |
| Liquid Detergent Dose |
cup-water |
sensor |
startProgram.liquidDetergentDose |
| Main Wash Time |
clock-start |
number |
startProgram.mainWashTime |
| Powder Detergent Dose |
cup |
sensor |
startProgram.powderDetergentDose |
| Program |
|
select |
startProgram.program |
| Remaining Time |
timer |
sensor |
startProgram.remainingTime |
| Rinse Iterations |
rotate-right |
number |
startProgram.rinseIterations |
| Soak Prewash Selection |
tshirt-crew |
switch |
startProgram.haier_SoakPrewashSelection |
| Spin speed |
numeric |
select |
startProgram.spinSpeed |
| Steam Level |
weather-dust |
number |
startProgram.steamLevel |
| Steam Type |
weather-dust |
sensor |
steamType |
| Steam level |
smoke |
sensor |
startProgram.steamLevel |
| Sterilization |
clock-start |
switch |
startProgram.sterilizationStatus |
| Suggested Load |
weight-kilogram |
sensor |
startProgram.suggestedLoadW |
| Suggested Load |
weight-kilogram |
sensor |
startProgram.suggestedLoadD |
| Suggested weight |
weight-kilogram |
sensor |
startProgram.weight |
| Temperature |
thermometer |
select |
startProgram.temp |
| Temperature level |
thermometer |
number |
startProgram.tempLevel |
| Water hard |
water |
number |
startProgram.waterHard |
| lang |
|
number |
startProgram.lang |
Sensors
| Name |
Icon |
Entity |
Key |
| Acqua Plus |
|
binary_sensor |
acquaplus |
| Anti-Crease |
|
binary_sensor |
anticrease |
| Current Electricity Used |
lightning-bolt |
sensor |
currentElectricityUsed |
| Current Water Used |
water |
sensor |
currentWaterUsed |
| Dirt level |
liquid-spot |
sensor |
dirtyLevel |
| Door |
|
binary_sensor |
doorStatus |
| Door Lock |
|
binary_sensor |
doorLockStatus |
| Dry level |
hair-dryer |
sensor |
dryLevel |
| Error |
math-log |
sensor |
errors |
| Extra Rinse 1 |
|
binary_sensor |
extraRinse1 |
| Extra Rinse 2 |
|
binary_sensor |
extraRinse2 |
| Extra Rinse 3 |
|
binary_sensor |
extraRinse3 |
| Good Night Mode |
|
binary_sensor |
goodNight |
| Machine Status |
information |
sensor |
machMode |
| Pre Wash |
|
binary_sensor |
startProgram.prewash |
| Program |
tumble-dryer |
sensor |
programName |
| Program Phase |
washing-machine |
sensor |
prPhase |
| Remaining Time |
timer |
sensor |
remainingTimeMM |
| Remote Control |
remote |
binary_sensor |
attributes.lastConnEvent.category |
| Spin Speed |
speedometer |
sensor |
spinSpeed |
| Start Time |
clock-start |
sensor |
delayTime |
| Steam level |
smoke |
sensor |
steamLevel |
| Temperature level |
thermometer |
sensor |
tempLevel |
| Total Power |
|
sensor |
totalElectricityUsed |
| Total Wash Cycle |
counter |
sensor |
totalWashCycle |
| Total Water |
|
sensor |
totalWaterUsed |
Washing machine
Controls
| Name |
Icon |
Entity |
Key |
| Pause Washing Machine |
pause |
switch |
pauseProgram / resumeProgram |
| Washing Machine |
washing-machine |
switch |
startProgram / stopProgram |
Configs
| Name |
Icon |
Entity |
Key |
| Acqua Plus |
water-plus |
switch |
startProgram.acquaplus |
| Auto Dose |
cup |
switch |
startProgram.autoDetergentStatus |
| Delay Status |
timer-check |
switch |
startProgram.delayStatus |
| Delay Time |
timer-plus |
number |
startProgram.delayTime |
| Energy Label |
lightning-bolt-circle |
sensor |
startProgram.energyLabel |
| Extra Rinse 1 |
numeric-1-box-multiple-outline |
switch |
extraRinse1 |
| Extra Rinse 2 |
numeric-2-box-multiple-outline |
switch |
extraRinse2 |
| Extra Rinse 3 |
numeric-3-box-multiple-outline |
switch |
extraRinse3 |
| Good Night |
weather-night |
switch |
goodNight |
| Keep Fresh |
refresh-circle |
switch |
startProgram.autoSoftenerStatus |
| Liquid Detergent Dose |
cup-water |
sensor |
startProgram.liquidDetergentDose |
| Main Wash Time |
clock-start |
number |
startProgram.mainWashTime |
| Powder Detergent Dose |
cup |
sensor |
startProgram.powderDetergentDose |
| Program |
|
select |
startProgram.program |
| Remaining Time |
timer |
sensor |
startProgram.remainingTime |
| Rinse Iterations |
rotate-right |
number |
startProgram.rinseIterations |
| Soak Prewash Selection |
tshirt-crew |
switch |
startProgram.haier_SoakPrewashSelection |
| Spin speed |
numeric |
select |
startProgram.spinSpeed |
| Steam Level |
weather-dust |
number |
startProgram.steamLevel |
| Suggested Load |
weight-kilogram |
sensor |
startProgram.suggestedLoadW |
| Suggested weight |
weight-kilogram |
sensor |
startProgram.weight |
| Temperature |
thermometer |
select |
startProgram.temp |
| Water hard |
water |
number |
startProgram.waterHard |
| lang |
|
number |
startProgram.lang |
Sensors
| Name |
Icon |
Entity |
Key |
| Acqua Plus |
|
binary_sensor |
acquaplus |
| Current Electricity Used |
lightning-bolt |
sensor |
currentElectricityUsed |
| Current Water Used |
water |
sensor |
currentWaterUsed |
| Dirt level |
liquid-spot |
sensor |
dirtyLevel |
| Door |
|
binary_sensor |
doorStatus |
| Door Lock |
|
binary_sensor |
doorLockStatus |
| Error |
math-log |
sensor |
errors |
| Extra Rinse 1 |
|
binary_sensor |
extraRinse1 |
| Extra Rinse 2 |
|
binary_sensor |
extraRinse2 |
| Extra Rinse 3 |
|
binary_sensor |
extraRinse3 |
| Good Night Mode |
|
binary_sensor |
goodNight |
| Machine Status |
information |
sensor |
machMode |
| Pre Wash |
|
binary_sensor |
startProgram.prewash |
| Program Phase |
washing-machine |
sensor |
prPhase |
| Remaining Time |
timer |
sensor |
remainingTimeMM |
| Remote Control |
remote |
binary_sensor |
attributes.lastConnEvent.category |
| Spin Speed |
speedometer |
sensor |
spinSpeed |
| Total Power |
|
sensor |
totalElectricityUsed |
| Total Wash Cycle |
counter |
sensor |
totalWashCycle |
| Total Water |
|
sensor |
totalWaterUsed |