Open neopsyko opened 1 year ago
Hey, I added support for your hob in v0.6.0-beta.1
.
I implemented it to have a device for each plate in home assistant make it easier to call every hob with an unknown number of plates. But I think it's likely to fail somewhere, because I didn't been able to test it, so I hope on your feedback :smiley:
I expect you see these devices:
Hi,
Thank you for your quick work :) I have update to v0.6.0-beta.1, but i have 2 error on startup :
Logger: homeassistant.util.json Source: util/json.py:68 First occurred: 18:09:26 (20 occurrences) Last logged: 18:12:22
Could not parse JSON content: /config/custom_components/hon/translations/en.json Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/util/json.py", line 68, in load_json return orjson.loads(fdesc.read()) # type: ignore[no-any-return] orjson.JSONDecodeError: trailing comma is not allowed: line 463 column 10 (char 20159)
Logger: homeassistant.config_entries Source: custom_components/hon/init.py:31 Integration: hon (documentation, issues) First occurred: 18:09:28 (1 occurrences) Last logged: 18:09:28
Error setting up entry XXXXX@gmail.com for hon Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 383, in async_setup result = await component.async_setup_entry(hass, self) File "/config/custom_components/hon/init.py", line 31, in async_setup_entry hon = await Hon( File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 35, in create await self.setup() File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 58, in setup await self._create_appliance(appliance, zone=zone + 1) File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 46, in _create_appliance await asyncio.gather( File "/usr/local/lib/python3.10/site-packages/pyhon/appliance.py", line 165, in load_attributes for name, values in self._attributes.pop("shadow").get("parameters").items(): KeyError: 'shadow'
Fixed! Please test v0.6.0-beta.2
:slightly_smiling_face:
Logger: homeassistant.config_entries Source: custom_components/hon/init.py:31 Integration: Haier hOn (documentation, issues) First occurred: 22:16:37 (2 occurrences) Last logged: 22:20:14
Error setting up entry XXXXX@gmail.com for hon Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 383, in async_setup result = await component.async_setup_entry(hass, self) File "/config/custom_components/hon/init.py", line 31, in async_setup_entry hon = await Hon( File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 36, in create await self.setup() File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 60, in setup await self._create_appliance(appliance.copy(), zone=zone + 1) File "/usr/local/lib/python3.10/site-packages/pyhon/hon.py", line 47, in _create_appliance await asyncio.gather( File "/usr/local/lib/python3.10/site-packages/pyhon/appliance.py", line 147, in load_commands cmd = HonCommand( File "/usr/local/lib/python3.10/site-packages/pyhon/commands.py", line 17, in init self._parameters = self._create_parameters(attributes.get("parameters", {})) File "/usr/local/lib/python3.10/site-packages/pyhon/commands.py", line 28, in _create_parameters if parameter == "zoneMap" and self._device.zone: AttributeError: 'HonAppliance' object has no attribute 'zone'
Oh, than v0.6.0-beta.3
please :sweat_smile:
It starts 🎉
Now i have 4 devices, 1 for main unit and 3 for zones. But there are no entities, only the log button All log are the same as my first post.
Hi, thank you, I found what's wrong. I used the wrong appliance name :facepalm: :smile:
Please test v0.6.0-beta.4
Hehe 😄, It works !! I need to do more test, but for now :
- Hot Status --> OK
- On --> OK
- Remaining Time --> OK
- Temperature -- > not working (always at 0°). Maybe because it's not a temp in degree but a value between 1-9
- If I turn off the device, sensors stay in their previous state and don't reset.
- Program part is more buggy, I will do more test tomorrow and i report you back
Thank you so much :)
Nice! 😁
v0.6.0-beta.7
Hello,
1st log Zone 1 : ON thermostat 1 (min) Zone 2 : ON thermostat 9 (max) Zone 3 : I have launched a program (frying)
So temp seem's at 0 in the log. Can you add a entity powerZ ? :)
2nd log Power off. In home assitant "On" is display "running"
hope you understand my bad english x)
data:
appliance:
applianceId: 12-34-56-78-90-ab#2022-09-25T18:36:05Z
applianceModelId: 974
applianceStatus: 1
applianceTypeId: 3
applianceTypeName: IH
attributes:
acuVersion: 1.A.0
chipset: ESP32D0WDQ5
dictionaryId: 159
lang: it-IT
uiVersion: 0.0.0
brand: candy
connectivity: wifi|ble
defaultWarrantyYears: 2
eepromId: 41
eepromName: no_eeprom
enrollmentDate: 2022-09-25T18:36:06.054Z
firstEnrollment: True
firstEnrollmentTBC: True
fwVersion: 4.3.0
id: 974
lastUpdate: 2022-09-25T18:36:16Z
macAddress: xx-xx-xx-xx-xx-xx
modelName: CIS633SCTTWIFI
nickName: Plaque de cuisson
purchaseDate: 2022-09-24T22:00:00.000Z
sections:
chatbot: True
double_pairing_hidden: True
series: timeless
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
zone: 3
attributes:
activity:
activityExecutionStarted: 2023-04-17 16:46:38
activityStarted: 2023-04-17T16:46:38Z
applianceTypeName: IH
attributes:
channel: appliance
combiMapZ1: 00
combiMapZ2: 00
combiMapZ3: 00
combiMapZ4: 08
combiModeZ1: 0
combiModeZ2: 0
combiModeZ3: 0
combiModeZ4: 0
onOffStatusZ1: 1
onOffStatusZ2: 1
onOffStatusZ3: 1
onOffStatusZ4: 0
origin: dashboard
powerManagement: 0
powerZ1: 1
powerZ2: 9
powerZ3: 9
powerZ4: 0
prCodeZ1: 0
prCodeZ2: 0
prCodeZ3: 6
prCodeZ4: 0
remainingTimeMMZ1: 479
remainingTimeMMZ2: 119
remainingTimeMMZ3: 60
remainingTimeMMZ4: 0
remoteCtrValid: 1
category: CYCLE
macAddress: xx-xx-xx-xx-xx-xx
resultCode: 0
ttl: 1689525999
commandHistory:
command:
ancillaryParameters:
programFamily: [standard]
remoteActionable: 1
remoteVisible: 1
applianceOptions:
applianceType: IH
attributes:
channel: mobileApp
origin: standardProgram
prStr: Frire
commandName: startProgram
device:
appVersion: 1.54.9
deviceModel: sdm845
mobileId: xxxxxxxxxxxx
mobileOs: android
osVersion: 30
macAddress: xx-xx-xx-xx-xx-xx
parameters:
powerManagement: 10
prCode: 6
prPhase1_Power: 0
prPhase1_Temp: 0
prPhase1_Time: 0
prPhase2_Power: 0
prPhase2_Temp: 0
prPhase2_Time: 0
prPhase3_Power: 0
prPhase3_Temp: 0
prPhase3_Time: 0
prPhase4_Power: 0
prPhase4_Temp: 0
prPhase4_Time: 0
prPhase5_Power: 0
prPhase5_Temp: 0
prPhase5_Time: 0
probe: 0
temp: 10
zoneMap: 04
programName: PROGRAMS.IH.IOT_STANDARD_FRYING
timestamp: 2023-04-17T16:48:00.435Z
transactionId: 12-34-56-78-90-ab_2023-04-17T16:48:00.435Z
lastConnEvent:
category: CONNECTED
instantTime: 2023-04-17T16:45:55Z
macAddress: xx-xx-xx-xx-xx-xx
timestampEvent: 1681749955861
parameters:
combiMapZ1: 00
combiMapZ2: 00
combiMapZ3: 00
combiMapZ4: 08
combiModeZ1: 0
combiModeZ2: 0
combiModeZ3: 0
combiModeZ4: 0
errorsZ1: 00
errorsZ2: 00
errorsZ3: 00
errorsZ4: 00
hobLockStatus: 0
hotStatusZ1: 0
hotStatusZ2: 1
hotStatusZ3: 0
hotStatusZ4: 0
onOffStatusZ1: 1
onOffStatusZ2: 1
onOffStatusZ3: 1
onOffStatusZ4: 0
panStatusZ1: 1
panStatusZ2: 1
panStatusZ3: 1
panStatusZ4: 0
powerManagement: 0
powerZ1: 1
powerZ2: 9
powerZ3: 9
powerZ4: 0
prCode: 6
prCodeZ1: 0
prCodeZ2: 0
prCodeZ3: 6
prCodeZ4: 0
prPhaseZ1: 0
prPhaseZ2: 0
prPhaseZ3: 0
prPhaseZ4: 0
remainingTimeMMZ1: 479
remainingTimeMMZ2: 119
remainingTimeMMZ3: 60
remainingTimeMMZ4: 0
remoteCtrValid: 1
tempZ1: 0
tempZ2: 0
tempZ3: 0
tempZ4: 0
timerHH: 0
timerMM: 0
resultCode: 0
startProgram:
powerManagement: 10
prCode: 1
prPhase1_Power: 0
prPhase1_Temp: 0
prPhase1_Time: 0
prPhase2_Power: 0
prPhase2_Temp: 0
prPhase2_Time: 0
prPhase3_Power: 0
prPhase3_Temp: 0
prPhase3_Time: 0
prPhase4_Power: 0
prPhase4_Temp: 0
prPhase4_Time: 0
prPhase5_Power: 0
prPhase5_Temp: 0
prPhase5_Time: 0
probe: 0
program: iot_standard_keep_warm
programFamily: [standard]
remoteActionable: 1
remoteVisible: 1
temp: 10
zoneMap: 0
statistics:
mostUsedPrograms:
mostUsedRecipes:
programsCounter: 0
commands:
startProgram:
powerManagement:
max: 10
min: 0
step: 1
program:
- iot_standard_boiling
- iot_standard_frying
- iot_standard_keep_warm
- iot_standard_melting
- iot_standard_simmering
programFamily:
- standard
temp:
max: 10
min: 0
step: 1
zoneMap:
- 1
- 2
- 3
data:
appliance:
applianceId: 12-34-56-78-90-ab#2022-09-25T18:36:05Z
applianceModelId: 974
applianceStatus: 1
applianceTypeId: 3
applianceTypeName: IH
attributes:
acuVersion: 1.A.0
chipset: ESP32D0WDQ5
dictionaryId: 159
lang: it-IT
uiVersion: 0.0.0
brand: candy
connectivity: wifi|ble
defaultWarrantyYears: 2
eepromId: 41
eepromName: no_eeprom
enrollmentDate: 2022-09-25T18:36:06.054Z
firstEnrollment: True
firstEnrollmentTBC: True
fwVersion: 4.3.0
id: 974
lastUpdate: 2022-09-25T18:36:16Z
macAddress: xx-xx-xx-xx-xx-xx
modelName: CIS633SCTTWIFI
nickName: Plaque de cuisson
purchaseDate: 2022-09-24T22:00:00.000Z
sections:
chatbot: True
double_pairing_hidden: True
series: timeless
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
zone: 3
attributes:
activity:
activityExecutionStarted: 2023-04-17 16:46:38
activityStarted: 2023-04-17T16:46:38Z
applianceTypeName: IH
attributes:
channel: appliance
combiMapZ1: 00
combiMapZ2: 00
combiMapZ3: 00
combiMapZ4: 08
combiModeZ1: 0
combiModeZ2: 0
combiModeZ3: 0
combiModeZ4: 0
onOffStatusZ1: 1
onOffStatusZ2: 1
onOffStatusZ3: 1
onOffStatusZ4: 0
origin: dashboard
powerManagement: 0
powerZ1: 1
powerZ2: 9
powerZ3: 9
powerZ4: 0
prCodeZ1: 0
prCodeZ2: 0
prCodeZ3: 6
prCodeZ4: 0
remainingTimeMMZ1: 479
remainingTimeMMZ2: 119
remainingTimeMMZ3: 60
remainingTimeMMZ4: 0
remoteCtrValid: 1
category: CYCLE
macAddress: xx-xx-xx-xx-xx-xx
resultCode: 0
ttl: 1689525999
commandHistory:
command:
ancillaryParameters:
programFamily: [standard]
remoteActionable: 1
remoteVisible: 1
applianceOptions:
applianceType: IH
attributes:
channel: mobileApp
origin: standardProgram
prStr: Frire
commandName: startProgram
device:
appVersion: 1.54.9
deviceModel: sdm845
mobileId: xxxxxxxxxxxx
mobileOs: android
osVersion: 30
macAddress: xx-xx-xx-xx-xx-xx
parameters:
powerManagement: 10
prCode: 6
prPhase1_Power: 0
prPhase1_Temp: 0
prPhase1_Time: 0
prPhase2_Power: 0
prPhase2_Temp: 0
prPhase2_Time: 0
prPhase3_Power: 0
prPhase3_Temp: 0
prPhase3_Time: 0
prPhase4_Power: 0
prPhase4_Temp: 0
prPhase4_Time: 0
prPhase5_Power: 0
prPhase5_Temp: 0
prPhase5_Time: 0
probe: 0
temp: 10
zoneMap: 04
programName: PROGRAMS.IH.IOT_STANDARD_FRYING
timestamp: 2023-04-17T16:48:00.435Z
transactionId: 12-34-56-78-90-ab_2023-04-17T16:48:00.435Z
lastConnEvent:
category: CONNECTED
instantTime: 2023-04-17T16:45:55Z
macAddress: xx-xx-xx-xx-xx-xx
timestampEvent: 1681749955861
parameters:
combiMapZ1: 00
combiMapZ2: 00
combiMapZ3: 00
combiMapZ4: 08
combiModeZ1: 0
combiModeZ2: 0
combiModeZ3: 0
combiModeZ4: 0
errorsZ1: 00
errorsZ2: 00
errorsZ3: 00
errorsZ4: 00
hobLockStatus: 0
hotStatusZ1: 0
hotStatusZ2: 1
hotStatusZ3: 0
hotStatusZ4: 0
onOffStatusZ1: 1
onOffStatusZ2: 1
onOffStatusZ3: 1
onOffStatusZ4: 0
panStatusZ1: 1
panStatusZ2: 1
panStatusZ3: 1
panStatusZ4: 0
powerManagement: 0
powerZ1: 1
powerZ2: 9
powerZ3: 9
powerZ4: 0
prCode: 6
prCodeZ1: 0
prCodeZ2: 0
prCodeZ3: 6
prCodeZ4: 0
prPhaseZ1: 0
prPhaseZ2: 0
prPhaseZ3: 0
prPhaseZ4: 0
remainingTimeMMZ1: 479
remainingTimeMMZ2: 119
remainingTimeMMZ3: 60
remainingTimeMMZ4: 0
remoteCtrValid: 1
tempZ1: 0
tempZ2: 0
tempZ3: 0
tempZ4: 0
timerHH: 0
timerMM: 0
resultCode: 0
startProgram:
powerManagement: 10
prCode: 1
prPhase1_Power: 0
prPhase1_Temp: 0
prPhase1_Time: 0
prPhase2_Power: 0
prPhase2_Temp: 0
prPhase2_Time: 0
prPhase3_Power: 0
prPhase3_Temp: 0
prPhase3_Time: 0
prPhase4_Power: 0
prPhase4_Temp: 0
prPhase4_Time: 0
prPhase5_Power: 0
prPhase5_Temp: 0
prPhase5_Time: 0
probe: 0
program: iot_standard_keep_warm
programFamily: [standard]
remoteActionable: 1
remoteVisible: 1
temp: 10
zoneMap: 0
statistics:
mostUsedPrograms:
mostUsedRecipes:
programsCounter: 0
commands:
startProgram:
powerManagement:
max: 10
min: 0
step: 1
program:
- iot_standard_boiling
- iot_standard_frying
- iot_standard_keep_warm
- iot_standard_melting
- iot_standard_simmering
programFamily:
- standard
temp:
max: 10
min: 0
step: 1
zoneMap:
- 1
- 2
- 3
Hi, I added power
and also found panStatus
, maybe it can also be useful :slightly_smiling_face:
First and second logs seems to be absolutely identical, you can see the same data under activity
and parameters
and I made a diff :smiley:
So maybe the device didn't report it's status correct when turned off? Do the status gets correct after a while? or after the next start of the appliance?
Is the state in the app the same? When yes, it's a problem of the appliance, not the integration.
PS: Don't worry, I understand very well what you mean, English isn't also my first language
Hello,
First of all, thank you for adding the 2 sensors :)
I do believe that the cooktop no longer sends any information when it is turned off. The values remain indefinitely in their previous states. That may be because the wifi is disconnected at the same time as the cooktop.
I understand that the issue is with the appliance, but would it be possible to implement a reset of the sensors if the cooktop is disconnected? and/or to only make requests when the cooktop is connected ? Otherwise, I will try to do it through an automation. In the application, everything is hidden if the cooktop is disconnected.
I also tested the program part, but it doesn't seem to be working. The cooktop displays an error 7.4 and then turns off. In the application, it's possible to define a timer with the program, maybe this value is missing. I don't have any logs on the HA side, so I don't know how to help you debug.
In any case, thank you very much because the integration is already very advanced :)
Hello,
It could be really nice if you can add support for this device :