Compare commits

..

3 Commits

Author SHA1 Message Date
228cf3cf73 Bump version 2023-06-07 02:33:53 +02:00
1a50e8112d Update readme, fix typo 2023-05-30 05:33:11 +02:00
57ecd7c3a5 Adding HO integration (#56)
* Update button.py

* Update number.py

* Update sensor.py
2023-05-30 05:22:02 +02:00
26 changed files with 154 additions and 23 deletions

View File

@ -15,6 +15,7 @@ Home Assistant integration for [Haier's mobile app hOn](https://hon-smarthome.co
- [Hob](https://github.com/Andre0512/hon#hob) [BETA] - [Hob](https://github.com/Andre0512/hon#hob) [BETA]
- [Air conditioner](https://github.com/Andre0512/hon#air-conditioner) [BETA] - [Air conditioner](https://github.com/Andre0512/hon#air-conditioner) [BETA]
- [Fridge](https://github.com/Andre0512/hon#fridge) [BETA] - [Fridge](https://github.com/Andre0512/hon#fridge) [BETA]
- [Hood](https://github.com/Andre0512/hon#hood) [BETA]
## Installation ## Installation
**Method 1:** [![Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=Andre0512&repository=hon&category=integration) **Method 1:** [![Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=Andre0512&repository=hon&category=integration)
@ -62,9 +63,12 @@ Translation of internal names like programs are available for all languages whic
Support has been confirmed for these models, but many more will work. Please add already supported devices [with this form to complete the list](https://forms.gle/bTSD8qFotdZFytbf8). Support has been confirmed for these models, but many more will work. Please add already supported devices [with this form to complete the list](https://forms.gle/bTSD8qFotdZFytbf8).
- Haier AD105S2SM3FA - Haier AD105S2SM3FA
- Haier AS25PBAHRA - Haier AS25PBAHRA
- Haier AS25S2SF1FA-WH
- Haier AS25TADHRA-2 - Haier AS25TADHRA-2
- Haier AS35TADHRA-2 - Haier AS35TADHRA-2
- Haier EG9012B19SU1JD - Haier EG9012B19SU1JD
- Haier HA2MTSJ68MC
- Haier HADG6DS46BWIFI
- Haier HD80-A3959 - Haier HD80-A3959
- Haier HW90-B14TEAM5 - Haier HW90-B14TEAM5
- Haier HW100-B14959U1 - Haier HW100-B14959U1
@ -76,6 +80,7 @@ Support has been confirmed for these models, but many more will work. Please add
- Candy CCE4T620EWU - Candy CCE4T620EWU
- Candy CIS633SCTTWIFI - Candy CIS633SCTTWIFI
- Candy CSOE C10DE-80 - Candy CSOE C10DE-80
- Candy RO44 1286DWMC4-07
- Candy ROE H9A3TCEX-S - Candy ROE H9A3TCEX-S
- Candy RPW41066BWMR/1-S - Candy RPW41066BWMR/1-S
- Hoover H-WASH 500 - Hoover H-WASH 500
@ -225,6 +230,34 @@ For every device exists a hidden button which can be used to log all infos of yo
| Rinse Aid | `spray-bottle` | `binary_sensor` | `rinseAidStatus` | | Rinse Aid | `spray-bottle` | `binary_sensor` | `rinseAidStatus` |
| Salt | `shaker-outline` | `binary_sensor` | `saltStatus` | | Salt | `shaker-outline` | `binary_sensor` | `saltStatus` |
### Hood
#### Controls
| Name | Icon | Entity | Key |
| --- | --- | --- | --- |
| Start Program | `hvac` | `button` | `startProgram` |
| Stop Program | `hvac-off` | `button` | `stopProgram` |
#### Configs
| Name | Icon | Entity | Key |
| --- | --- | --- | --- |
| Light status | `lightbulb` | `number` | `startProgram.lightStatus` |
| Wind speed | `fan` | `number` | `startProgram.windSpeed` |
#### Sensors
| Name | Icon | Entity | Key |
| --- | --- | --- | --- |
| Delay time | `clock-start` | `sensor` | `delayTime` |
| Delay time status | `clock-start` | `sensor` | `delayTimeStatus` |
| Errors | `alert-circle` | `sensor` | `errors` |
| Filter Cleaning Alarm Status | | `sensor` | `filterCleaningAlarmStatus` |
| Filter Cleaning Status | | `sensor` | `filterCleaningStatus` |
| Last Work Time | `clock-start` | `sensor` | `lastWorkTime` |
| Light Status | `lightbulb` | `sensor` | `lightStatus` |
| Mach Mode | | `sensor` | `machMode` |
| On / Off Status | `lightbulb` | `sensor` | `onOffStatus` |
| Quick Delay Time Status | | `sensor` | `quickDelayTimeStatus` |
| RGB Light Color | `lightbulb` | `sensor` | `rgbLightColors` |
| RGB Light Status | `lightbulb` | `sensor` | `rgbLightStatus` |
| Wind Speed | `fan` | `sensor` | `windSpeed` |
### Hob ### Hob
#### Controls #### Controls
| Name | Icon | Entity | Key | | Name | Icon | Entity | Key |

View File

@ -35,6 +35,20 @@ BUTTONS: dict[str, tuple[ButtonEntityDescription, ...]] = {
translation_key="stop_program", translation_key="stop_program",
), ),
), ),
"HO": (
ButtonEntityDescription(
key="startProgram",
name="Start Program",
icon="mdi:hvac",
translation_key="start_program",
),
ButtonEntityDescription(
key="stopProgram",
name="Stop Program",
icon="mdi:hvac-off",
translation_key="stop_program",
),
),
} }

View File

@ -111,7 +111,7 @@ TUMBLE_DRYER_PR_PHASE = {
"2": "WASHING_CMD&CTRL.PHASE_DRYING.TITLE", "2": "WASHING_CMD&CTRL.PHASE_DRYING.TITLE",
"3": "TD_CMD&CTRL.STATUS_PHASE.PHASE_COOLDOWN", "3": "TD_CMD&CTRL.STATUS_PHASE.PHASE_COOLDOWN",
"11": "WASHING_CMD&CTRL.PHASE_READY.TITLE", "11": "WASHING_CMD&CTRL.PHASE_READY.TITLE",
"12": "unkown", "12": "unknown",
"13": "TD_CMD&CTRL.STATUS_PHASE.PHASE_COOLDOWN", "13": "TD_CMD&CTRL.STATUS_PHASE.PHASE_COOLDOWN",
"14": "TD_CMD&CTRL.STATUS_PHASE.PHASE_HEAT_STROKE", "14": "TD_CMD&CTRL.STATUS_PHASE.PHASE_HEAT_STROKE",
"15": "TD_CMD&CTRL.STATUS_PHASE.PHASE_HEAT_STROKE", "15": "TD_CMD&CTRL.STATUS_PHASE.PHASE_HEAT_STROKE",

View File

@ -9,7 +9,7 @@
"iot_class": "cloud_polling", "iot_class": "cloud_polling",
"issue_tracker": "https://github.com/Andre0512/hon/issues", "issue_tracker": "https://github.com/Andre0512/hon/issues",
"requirements": [ "requirements": [
"pyhOn==0.12.0" "pyhOn==0.12.1"
], ],
"version": "0.8.0-beta.8" "version": "0.8.0-beta.9"
} }

View File

@ -162,6 +162,20 @@ NUMBERS: dict[str, tuple[NumberEntityDescription, ...]] = {
translation_key="freezer_temp_sel", translation_key="freezer_temp_sel",
), ),
), ),
"HO": (
HonNumberEntityDescription(
key="startProgram.windSpeed",
name="Wind speed",
icon="mdi:fan",
entity_category=EntityCategory.CONFIG,
),
HonNumberEntityDescription(
key="startProgram.lightStatus",
name="Light status",
icon="mdi:lightbulb",
entity_category=EntityCategory.CONFIG,
),
),
} }
NUMBERS["WD"] = unique_entities(NUMBERS["WM"], NUMBERS["TD"]) NUMBERS["WD"] = unique_entities(NUMBERS["WM"], NUMBERS["TD"])

View File

@ -535,6 +535,71 @@ SENSORS: dict[str, tuple[SensorEntityDescription, ...]] = {
key="errors", name="Error", icon="mdi:math-log", translation_key="errors" key="errors", name="Error", icon="mdi:math-log", translation_key="errors"
), ),
), ),
"HO": (
HonSensorEntityDescription(
key="delayTime",
name="Delay time",
icon="mdi:clock-start",
state_class=SensorStateClass.MEASUREMENT,
native_unit_of_measurement=UnitOfTime.MINUTES,
),
HonSensorEntityDescription(
key="delayTimeStatus",
name="Delay time status",
icon="mdi:clock-start",
),
HonSensorEntityDescription(
key="errors",
name="Errors",
icon="mdi:alert-circle",
),
HonSensorEntityDescription(
key="filterCleaningAlarmStatus",
name="Filter Cleaning Alarm Status",
),
HonSensorEntityDescription(
key="filterCleaningStatus",
name="Filter Cleaning Status",
),
HonSensorEntityDescription(
key="lastWorkTime",
name="Last Work Time",
icon="mdi:clock-start",
),
HonSensorEntityDescription(
key="lightStatus",
name="Light Status",
icon="mdi:lightbulb",
),
HonSensorEntityDescription(
key="machMode",
name="Mach Mode",
),
HonSensorEntityDescription(
key="onOffStatus",
name="On / Off Status",
icon="mdi:lightbulb",
),
HonSensorEntityDescription(
key="quickDelayTimeStatus",
name="Quick Delay Time Status",
),
HonSensorEntityDescription(
key="rgbLightColors",
name="RGB Light Color",
icon="mdi:lightbulb",
),
HonSensorEntityDescription(
key="rgbLightStatus",
name="RGB Light Status",
icon="mdi:lightbulb",
),
HonSensorEntityDescription(
key="windSpeed",
name="Wind Speed",
icon="mdi:fan",
),
),
} }
SENSORS["WD"] = unique_entities(SENSORS["WM"], SENSORS["TD"]) SENSORS["WD"] = unique_entities(SENSORS["WM"], SENSORS["TD"])

View File

@ -59,7 +59,7 @@
"20": "Sušení", "20": "Sušení",
"11": "Připraveno", "11": "Připraveno",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fáze" "name": "Fáze"
}, },

View File

@ -59,7 +59,7 @@
"20": "Trocknen", "20": "Trocknen",
"11": "Bereit", "11": "Bereit",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Phase" "name": "Phase"
}, },

View File

@ -59,7 +59,7 @@
"20": "Στέγνωμα", "20": "Στέγνωμα",
"11": "Ετοιμος", "11": "Ετοιμος",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Φάση" "name": "Φάση"
}, },

View File

@ -127,7 +127,7 @@
"20": "Drying", "20": "Drying",
"11": "Ready", "11": "Ready",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Phase" "name": "Phase"
}, },

View File

@ -59,7 +59,7 @@
"20": "Secado", "20": "Secado",
"11": "Listo", "11": "Listo",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fase" "name": "Fase"
}, },

View File

@ -59,7 +59,7 @@
"20": "Séchage", "20": "Séchage",
"11": "Prêt", "11": "Prêt",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Phase" "name": "Phase"
}, },

View File

@ -59,7 +59,7 @@
"20": "יִבּוּשׁ", "20": "יִבּוּשׁ",
"11": "מוּכָן", "11": "מוּכָן",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "שלב" "name": "שלב"
}, },

View File

@ -59,7 +59,7 @@
"20": "Sušenje", "20": "Sušenje",
"11": "Spremno", "11": "Spremno",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Faza" "name": "Faza"
}, },

View File

@ -117,7 +117,7 @@
"20": "Asciugatura", "20": "Asciugatura",
"11": "Pronta", "11": "Pronta",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fase" "name": "Fase"
}, },

View File

@ -59,7 +59,7 @@
"20": "Drogen", "20": "Drogen",
"11": "Klaar", "11": "Klaar",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fase" "name": "Fase"
}, },

View File

@ -59,7 +59,7 @@
"20": "Suszenie", "20": "Suszenie",
"11": "Gotowe", "11": "Gotowe",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Faza" "name": "Faza"
}, },

View File

@ -59,7 +59,7 @@
"20": "Secagem", "20": "Secagem",
"11": "Pronto", "11": "Pronto",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fase" "name": "Fase"
}, },

View File

@ -59,7 +59,7 @@
"20": "Uscare", "20": "Uscare",
"11": "Pregătit", "11": "Pregătit",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fază" "name": "Fază"
}, },

View File

@ -59,7 +59,7 @@
"20": "Сушка", "20": "Сушка",
"11": "Готово", "11": "Готово",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Фаза" "name": "Фаза"
}, },

View File

@ -59,7 +59,7 @@
"20": "Sušenie", "20": "Sušenie",
"11": "Pripravené", "11": "Pripravené",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Fáza" "name": "Fáza"
}, },

View File

@ -59,7 +59,7 @@
"20": "Sušenje", "20": "Sušenje",
"11": "Pripravljen", "11": "Pripravljen",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Faza" "name": "Faza"
}, },

View File

@ -59,7 +59,7 @@
"20": "Sušenje", "20": "Sušenje",
"11": "Spremno", "11": "Spremno",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Faza" "name": "Faza"
}, },

View File

@ -59,7 +59,7 @@
"20": "Kurutma", "20": "Kurutma",
"11": "Hazır", "11": "Hazır",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "Aşama" "name": "Aşama"
}, },

View File

@ -59,7 +59,7 @@
"20": "烘干", "20": "烘干",
"11": "就绪", "11": "就绪",
"17": "unknown", "17": "unknown",
"12": "unkown" "12": "unknown"
}, },
"name": "阶段" "name": "阶段"
}, },

View File

@ -9,10 +9,11 @@ Support for home appliances of Haier's mobile app hOn.
- [Tumble Dryer](https://github.com/Andre0512/hon#tumble-dryer) - [Tumble Dryer](https://github.com/Andre0512/hon#tumble-dryer)
- [Washer Dryer](https://github.com/Andre0512/hon#washer-dryer) - [Washer Dryer](https://github.com/Andre0512/hon#washer-dryer)
- [Oven](https://github.com/Andre0512/hon#oven) - [Oven](https://github.com/Andre0512/hon#oven)
- [Hob](https://github.com/Andre0512/hon#hob)
- [Dish Washer](https://github.com/Andre0512/hon#dish-washer) - [Dish Washer](https://github.com/Andre0512/hon#dish-washer)
- [Hob](https://github.com/Andre0512/hon#hob) [BETA]
- [Air conditioner](https://github.com/Andre0512/hon#air-conditioner) [BETA] - [Air conditioner](https://github.com/Andre0512/hon#air-conditioner) [BETA]
- [Fridge](https://github.com/Andre0512/hon#fridge) [BETA] - [Fridge](https://github.com/Andre0512/hon#fridge) [BETA]
- [Hood](https://github.com/Andre0512/hon#hood) [BETA]
## Configuration ## Configuration
@ -51,9 +52,12 @@ Translation of internal names like programs are available for all languages whic
Support has been confirmed for these models, but many more will work. Please add already supported devices [with this form to complete the list](https://forms.gle/bTSD8qFotdZFytbf8). Support has been confirmed for these models, but many more will work. Please add already supported devices [with this form to complete the list](https://forms.gle/bTSD8qFotdZFytbf8).
- Haier AD105S2SM3FA - Haier AD105S2SM3FA
- Haier AS25PBAHRA - Haier AS25PBAHRA
- Haier AS25S2SF1FA-WH
- Haier AS25TADHRA-2 - Haier AS25TADHRA-2
- Haier AS35TADHRA-2 - Haier AS35TADHRA-2
- Haier EG9012B19SU1JD - Haier EG9012B19SU1JD
- Haier HA2MTSJ68MC
- Haier HADG6DS46BWIFI
- Haier HD80-A3959 - Haier HD80-A3959
- Haier HW90-B14TEAM5 - Haier HW90-B14TEAM5
- Haier HW100-B14959U1 - Haier HW100-B14959U1
@ -65,6 +69,7 @@ Support has been confirmed for these models, but many more will work. Please add
- Candy CCE4T620EWU - Candy CCE4T620EWU
- Candy CIS633SCTTWIFI - Candy CIS633SCTTWIFI
- Candy CSOE C10DE-80 - Candy CSOE C10DE-80
- Candy RO44 1286DWMC4-07
- Candy ROE H9A3TCEX-S - Candy ROE H9A3TCEX-S
- Candy RPW41066BWMR/1-S - Candy RPW41066BWMR/1-S
- Hoover H-WASH 500 - Hoover H-WASH 500