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.
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
data :
appliance :
applianceId : 12-34-56-78-90 -ab#2022-10-25T19:47:11Z
applianceModelId : 1569
...
Copy this data and create a new issue with your request
Add appliances or additional attributes
Install pyhOn
$ pip install pyhOn
Use the command line tool to read out all appliance data from your account
$ pyhOn
User for hOn account: user.name@example.com
Password for hOn account: ********
========== WM - Washing Machine ==========
commands:
pauseProgram: pauseProgram command
resumeProgram: resumeProgram command
startProgram: startProgram command
stopProgram: stopProgram command
data:
actualWeight: 0
airWashTempLevel: 0
airWashTime: 0
antiAllergyStatus: 0
...
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
BUTTONS : dict [ str , tuple [ ButtonEntityDescription , ... ]] = {
"WM" : ( # WM is the applianceTypeName
ButtonEntityDescription (
key = "pauseProgram" , # key from pyhOn
name = "Pause Program" , # name in home assistant
icon = "mdi:pause" , # icon in home assistant
...
),
...
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
Tested Devices
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
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
Dish washer
Controls
Name
Icon
Entity
Key
Auto-Translation
Dish Washer
dishwasher
switch
startProgram
/ stopProgram
✔
Configs
Name
Icon
Entity
Key
Auto-Translation
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
Auto-Translation
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
Auto-Translation
Start Program
pot-steam
button
startProgram
✔
Configs
Name
Icon
Entity
Key
Auto-Translation
Power Management
timelapse
number
startProgram.powerManagement
✔
Program
select
startProgram.program
✔
Temperature
thermometer
number
startProgram.temp
✔
Sensors
Name
Icon
Entity
Key
Auto-Translation
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
✔
Remote Control
remote
binary_sensor
attributes.parameters.remoteCtrValid
✔
Temperature
thermometer
sensor
temp
✔
Oven
Controls
Name
Icon
Entity
Key
Auto-Translation
Oven
toaster-oven
switch
startProgram
/ stopProgram
✔
Configs
Name
Icon
Entity
Key
Auto-Translation
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
Auto-Translation
Connection
wifi
binary_sensor
attributes.lastConnEvent.category
✔
On
power-cycle
binary_sensor
attributes.parameters.onOffStatus
❌
Remaining Time
timer
sensor
remainingTimeMM
✔
Remote Control
remote
binary_sensor
attributes.parameters.remoteCtrValid
✔
Start Time
clock-start
sensor
delayTime
✔
Temperature
thermometer
sensor
temp
✔
Temperature Selected
thermometer
sensor
tempSel
✔
Tumble dryer
Controls
Name
Icon
Entity
Key
Auto-Translation
Pause Tumble Dryer
pause
switch
pauseProgram
/ resumeProgram
✔
Tumble Dryer
tumble-dryer
switch
startProgram
/ stopProgram
✔
Configs
Name
Icon
Entity
Key
Auto-Translation
Anti-Crease
timer
switch
startProgram.antiCreaseTime
✔
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
✔
Sterilization
clock-start
switch
startProgram.sterilizationStatus
❌
Suggested Load
weight-kilogram
sensor
startProgram.suggestedLoadD
✔
Temperature level
thermometer
number
startProgram.tempLevel
✔
Sensors
Name
Icon
Entity
Key
Auto-Translation
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
prCode
✔
Program Phase
washing-machine
sensor
prPhase
✔
Remaining Time
timer
sensor
remainingTimeMM
✔
Start Time
clock-start
sensor
delayTime
✔
Temperature level
thermometer
sensor
tempLevel
✔
Washer dryer
Controls
Name
Icon
Entity
Key
Auto-Translation
Pause Washing Machine
pause
switch
pauseProgram
/ resumeProgram
✔
Washing Machine
washing-machine
switch
startProgram
/ stopProgram
✔
Configs
Name
Icon
Entity
Key
Auto-Translation
Delay Time
timer-plus
number
startProgram.delayTime
✔
Program
select
startProgram.program
✔
Suggested weight
weight-kilogram
sensor
startProgram.weight
✔
Sensors
Name
Icon
Entity
Key
Auto-Translation
Acqua Plus
binary_sensor
acquaplus
✔
Anti-Crease
binary_sensor
anticrease
✔
Current Electricity Used
lightning-bolt
sensor
currentElectricityUsed
❌
Current Program
tumble-dryer
sensor
prCode
❌
Current Temperature
thermometer
sensor
temp
✔
Current Water Used
water
sensor
currentWaterUsed
❌
Dirt level
liquid-spot
sensor
dirtyLevel
✔
Dry level
hair-dryer
sensor
dryLevel
✔
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
fast-forward-outline
sensor
spinSpeed
✔
Steam level
smoke
sensor
steamLevel
✔
Total Power
sensor
totalElectricityUsed
❌
Total Wash Cycle
counter
sensor
totalWashCycle
❌
Total Water
sensor
totalWaterUsed
❌
Washing machine
Controls
Name
Icon
Entity
Key
Auto-Translation
Pause Washing Machine
pause
switch
pauseProgram
/ resumeProgram
✔
Washing Machine
washing-machine
switch
startProgram
/ stopProgram
✔
Configs
Name
Icon
Entity
Key
Auto-Translation
Delay Status
timer-check
switch
startProgram.delayStatus
❌
Delay Time
timer-plus
number
startProgram.delayTime
✔
Energy Label
lightning-bolt-circle
sensor
startProgram.energyLabel
✔
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
✔
Rinse Iterations
rotate-right
number
startProgram.rinseIterations
✔
Soak Prewash Selection
tshirt-crew
switch
startProgram.haier_SoakPrewashSelection
✔
Spin speed
numeric
select
startProgram.spinSpeed
✔
Suggested weight
weight-kilogram
sensor
startProgram.weight
✔
Temperature
thermometer
select
startProgram.temp
✔
Sensors
Name
Icon
Entity
Key
Auto-Translation
Current Electricity Used
lightning-bolt
sensor
currentElectricityUsed
❌
Current Water Used
water
sensor
currentWaterUsed
❌
Door
binary_sensor
doorStatus
✔
Door Lock
binary_sensor
doorLockStatus
✔
Error
math-log
sensor
errors
✔
Machine Status
information
sensor
machMode
✔
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
❌