Cool and heat hvac modes dont work #63
Closed
opened 2023-06-07 23:39:26 +02:00 by andremain
·
10 comments
No Branch/Tag Specified
main
v0.9
v0.8
v0.7
v0.11.0
v0.11.0-beta.1
v0.10.1
v0.10.1-beta.1
v0.10.0
v0.10.0-beta.1
v0.9.2-beta.1
v0.9.1
v0.9.1-beta.1
v0.9.0
v0.9.0-beta.10
v0.9.0-beta.9
v0.9.0-beta.8
v0.9.0-beta.7
v0.9.0-beta.6
v0.9.0-beta.5
v0.9.0-beta.4
v0.9.0-beta.3
v0.9.0-beta.2
v0.9.0-beta.1
v0.8.1
v0.8.1-beta.1
v0.8.0
v0.8.0-beta.10
v0.8.0-beta.9
v0.8.0-beta.8
v0.8.0-beta.7
v0.8.0-beta.6
v0.8.0-beta.5
v0.8.0-beta.4
v0.8.0-beta.3
v0.8.0-beta.2
v0.8.0-beta.1
v0.7.3
v0.7.3-beta.2
v0.7.3-beta.1
v0.7.2
v0.7.1
v0.7.0
v0.7.0-beta.8
v0.7.0-beta.7
v0.7.0-beta.6
v0.7.0-beta.5
v0.7.0-beta.4
v0.7.0-beta.3
v0.7.0-beta.2
v0.7.0-beta.1
v0.6.1
v0.6.0
v0.6.0-beta.8
v0.6.0-beta.7
v0.6.0-beta.6
v0.6.0-beta.5
v0.6.0-beta.4
v0.6.0-beta.3
v0.6.0-beta.2
v0.6.0-beta.1
v0.5.1
test
v0.5.1-beta.1
v0.5.0
v0.5.0-beta.5
v0.5.0-beta.4
v0.5.0-beta.3
v0.5.0-beta.2
v0.5.0-beta.1
v0.4.0
v0.3.0
v0.2.5
v0.2.4
v0.2.3
v0.2.2
v0.2.1
v0.2.0
v0.1.1
v0.1.0
Labels
Clear labels
air conditioner
air purifier
air scanner
authentication error
bug
candy
dish washer
documentation
duplicate
enhancement
fridge
good first issue
haier
help wanted
hob
hood
hoover
invalid
microwave
new appliance
oven
pyhOn
question
robot vacuum cleaner
tumble dryer
washer dryer
washing machine
water heater
wine cellar
wontfix
Air conditioner (AC)
Air purifier (AP)
Air scanner (AS)
Authentication Error
Something isn't working
Candy
Dish washer (DW)
Improvements or additions to documentation
This issue or pull request already exists
New feature or request
Fridge (REF)
Good for newcomers
Haier
Extra attention is needed
Hob (IH)
Hood (HO)
Hoover
This doesn't seem right
Microwave (MW)
New Appliance Request
Oven (OV)
Issue in pyhOn
Further information is requested
Robot vacuum cleaner (RVC)
Tumble dryer (TD)
Washer dryer (WD)
Washing machine (WM)
Water Heater (WH)
Wine Cellar (WC)
This will not be worked on
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: xiconfjs/hon#63
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Since latest beta, cool and heat hvac modes dont do anything. Auto, dry, fan and off work just fine.
Hi, I couldn't find a reason for that, but did a little refactor in the latest beta. Can you test
v0.8.0-beta.10? If it still doesn't work, did you see something in the logs? Can you send your device data?When i try to change the hvac mode to either heat or cool or change the temperature it switches to auto for a couple of seconds, does nothing in reality and returns back to the previous state.
The error i am getting is this: {"payload":{"resultCode":"1","errorCode":"1000","errorDescription":"Invalid parameter: parValue"},"authInfo":{}}
I am using v8 and hassos version 2023.6.
Interesting, I think I found the issue, but I couldn't really test it.
Please try version
v0.8.1-beta.1, it could be working else there should be more logs now 🙂Thank you for your effort andre, however it still does not work. Here are some more logs..
This error originated from a custom integration.
Logger: pyhon.connection.api
Source: custom_components/hon/climate.py:158
Integration: Haier hOn (documentation, issues)
First occurred: 8:43:29 AM (8 occurrences)
Last logged: 8:43:44 AM
{"payload":{"resultCode":"1","errorCode":"1000","errorDescription":"Invalid parameter: parValue"},"authInfo":{}}
https://api-iot.he.services/commands/v1/send - Payload: {'ancillaryParameters': {'ecoMode': '0', 'programFamily': '[standard]', 'programRules': "{'tempSel': {'ecoMode': {'1': " "{'machMode': {'1': {'typology': " "'fixed', 'fixedValue': '26'}, '4': " "{'typology': 'fixed', 'fixedValue': " "'20'}}}}}, 'windSpeed': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'enum', 'defaultValue': " "'1', 'enumValues': '1|2|3|5'}}}}}, " "'windDirectionVertical': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'fixed', 'fixedValue': " "'3'}}}}}}", 'remoteActionable': '1', 'remoteVisible': '1'}, 'applianceOptions': {}, 'applianceType': 'AC', 'attributes': {'channel': 'mobileApp', 'energyLabel': '0', 'origin': 'standardProgram'}, 'commandName': 'startProgram', 'device': {'appVersion': '2.0.10', 'deviceModel': 'exynos9820', 'mobileId': '71eccab74d0ceb24', 'mobileOs': 'android', 'osVersion': 31}, 'macAddress': 'a8-48-fa-3a-da-88', 'parameters': {'10degreeHeatingStatus': '0', 'ch2oCleaningStatus': '0', 'cleaningTimeStatus': '0', 'echoStatus': '0', 'electricHeatingStatus': '0', 'energySavePeriod': '15', 'energySavingStatus': '0', 'filterChangeStatusCloud': '0', 'freshAirStatus': '0', 'halfDegreeSettingStatus': '0', 'healthMode': '0', 'heatAccumulationStatus': '0', 'humanSensingStatus': '0', 'humidificationStatus': '0', 'humiditySel': '30', 'intelligenceStatus': '0', 'lightStatus': '0', 'lockStatus': '0', 'machMode': '4', 'muteStatus': '0', 'onOffStatus': '1', 'operationName': 'grSetDAC', 'pm2p5CleaningStatus': '0', 'pmvStatus': '0', 'rapidMode': '0', 'screenDisplayStatus': '1', 'selfCleaning56Status': '0', 'selfCleaningStatus': '0', 'silentSleepStatus': '0', 'specialMode': '0', 'tempSel': '22', 'tempUnit': '0', 'voiceSignStatus': '0', 'voiceStatus': '0', 'windDirectionHorizontal': '0', 'windDirectionVertical': '5', 'windSensingStatus': '0', 'windSpeed': '5'}, 'timestamp': '2023-06-09T05:43:29.401Z', 'transactionId': 'a8-48-fa-3a-da-88_2023-06-09T05:43:29.401Z'}
https://api-iot.he.services/commands/v1/send - Payload: {'ancillaryParameters': {'ecoMode': '0', 'programFamily': '[standard]', 'programRules': "{'tempSel': {'ecoMode': {'1': " "{'machMode': {'1': {'typology': " "'fixed', 'fixedValue': '26'}, '4': " "{'typology': 'fixed', 'fixedValue': " "'20'}}}}}, 'windSpeed': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'enum', 'defaultValue': " "'1', 'enumValues': '1|2|3|5'}}}}}, " "'windDirectionVertical': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'fixed', 'fixedValue': " "'3'}}}}}}", 'remoteActionable': '1', 'remoteVisible': '1'}, 'applianceOptions': {}, 'applianceType': 'AC', 'attributes': {'channel': 'mobileApp', 'energyLabel': '0', 'origin': 'standardProgram'}, 'commandName': 'startProgram', 'device': {'appVersion': '2.0.10', 'deviceModel': 'exynos9820', 'mobileId': '71eccab74d0ceb24', 'mobileOs': 'android', 'osVersion': 31}, 'macAddress': 'a8-48-fa-3a-da-88', 'parameters': {'10degreeHeatingStatus': '0', 'ch2oCleaningStatus': '0', 'cleaningTimeStatus': '0', 'echoStatus': '0', 'electricHeatingStatus': '0', 'energySavePeriod': '15', 'energySavingStatus': '0', 'filterChangeStatusCloud': '0', 'freshAirStatus': '0', 'halfDegreeSettingStatus': '0', 'healthMode': '0', 'heatAccumulationStatus': '0', 'humanSensingStatus': '0', 'humidificationStatus': '0', 'humiditySel': '30', 'intelligenceStatus': '0', 'lightStatus': '0', 'lockStatus': '0', 'machMode': '1', 'muteStatus': '0', 'onOffStatus': '1', 'operationName': 'grSetDAC', 'pm2p5CleaningStatus': '0', 'pmvStatus': '0', 'rapidMode': '0', 'screenDisplayStatus': '1', 'selfCleaning56Status': '0', 'selfCleaningStatus': '0', 'silentSleepStatus': '0', 'specialMode': '0', 'tempSel': '22', 'tempUnit': '0', 'voiceSignStatus': '0', 'voiceStatus': '0', 'windDirectionHorizontal': '0', 'windDirectionVertical': '5', 'windSensingStatus': '0', 'windSpeed': '5'}, 'timestamp': '2023-06-09T05:43:38.482Z', 'transactionId': 'a8-48-fa-3a-da-88_2023-06-09T05:43:38.482Z'}
https://api-iot.he.services/commands/v1/send - Payload: {'ancillaryParameters': {'ecoMode': '0', 'programFamily': '[standard]', 'programRules': "{'tempSel': {'ecoMode': {'1': " "{'machMode': {'1': {'typology': " "'fixed', 'fixedValue': '26'}, '4': " "{'typology': 'fixed', 'fixedValue': " "'20'}}}}}, 'windSpeed': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'enum', 'defaultValue': " "'1', 'enumValues': '1|2|3|5'}}}}}, " "'windDirectionVertical': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'fixed', 'fixedValue': " "'3'}}}}}}", 'remoteActionable': '1', 'remoteVisible': '1'}, 'applianceOptions': {}, 'applianceType': 'AC', 'attributes': {'channel': 'mobileApp', 'energyLabel': '0', 'origin': 'standardProgram'}, 'commandName': 'startProgram', 'device': {'appVersion': '2.0.10', 'deviceModel': 'exynos9820', 'mobileId': '71eccab74d0ceb24', 'mobileOs': 'android', 'osVersion': 31}, 'macAddress': 'a8-48-fa-3a-da-88', 'parameters': {'10degreeHeatingStatus': '0', 'ch2oCleaningStatus': '0', 'cleaningTimeStatus': '0', 'echoStatus': '0', 'electricHeatingStatus': '0', 'energySavePeriod': '15', 'energySavingStatus': '0', 'filterChangeStatusCloud': '0', 'freshAirStatus': '0', 'halfDegreeSettingStatus': '0', 'healthMode': '0', 'heatAccumulationStatus': '0', 'humanSensingStatus': '0', 'humidificationStatus': '0', 'humiditySel': '30', 'intelligenceStatus': '0', 'lightStatus': '0', 'lockStatus': '0', 'machMode': '1', 'muteStatus': '0', 'onOffStatus': '1', 'operationName': 'grSetDAC', 'pm2p5CleaningStatus': '0', 'pmvStatus': '0', 'rapidMode': '0', 'screenDisplayStatus': '1', 'selfCleaning56Status': '0', 'selfCleaningStatus': '0', 'silentSleepStatus': '0', 'specialMode': '0', 'tempSel': '22', 'tempUnit': '0', 'voiceSignStatus': '0', 'voiceStatus': '0', 'windDirectionHorizontal': '0', 'windDirectionVertical': '5', 'windSensingStatus': '0', 'windSpeed': '5'}, 'timestamp': '2023-06-09T05:43:43.543Z', 'transactionId': 'a8-48-fa-3a-da-88_2023-06-09T05:43:43.543Z'}
https://api-iot.he.services/commands/v1/send - Payload: {'ancillaryParameters': {'ecoMode': '0', 'programFamily': '[standard]', 'programRules': "{'tempSel': {'ecoMode': {'1': " "{'machMode': {'1': {'typology': " "'fixed', 'fixedValue': '26'}, '4': " "{'typology': 'fixed', 'fixedValue': " "'20'}}}}}, 'windSpeed': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'enum', 'defaultValue': " "'1', 'enumValues': '1|2|3|5'}}}}}, " "'windDirectionVertical': {'ecoMode': " "{'1': {'machMode': {'1|4': " "{'typology': 'fixed', 'fixedValue': " "'3'}}}}}}", 'remoteActionable': '1', 'remoteVisible': '1'}, 'applianceOptions': {}, 'applianceType': 'AC', 'attributes': {'channel': 'mobileApp', 'energyLabel': '0', 'origin': 'standardProgram'}, 'commandName': 'startProgram', 'device': {'appVersion': '2.0.10', 'deviceModel': 'exynos9820', 'mobileId': '71eccab74d0ceb24', 'mobileOs': 'android', 'osVersion': 31}, 'macAddress': 'a8-48-fa-3a-da-88', 'parameters': {'10degreeHeatingStatus': '0', 'ch2oCleaningStatus': '0', 'cleaningTimeStatus': '0', 'echoStatus': '0', 'electricHeatingStatus': '0', 'energySavePeriod': '15', 'energySavingStatus': '0', 'filterChangeStatusCloud': '0', 'freshAirStatus': '0', 'halfDegreeSettingStatus': '0', 'healthMode': '0', 'heatAccumulationStatus': '0', 'humanSensingStatus': '0', 'humidificationStatus': '0', 'humiditySel': '30', 'intelligenceStatus': '0', 'lightStatus': '0', 'lockStatus': '0', 'machMode': '1', 'muteStatus': '0', 'onOffStatus': '1', 'operationName': 'grSetDAC', 'pm2p5CleaningStatus': '0', 'pmvStatus': '0', 'rapidMode': '0', 'screenDisplayStatus': '1', 'selfCleaning56Status': '0', 'selfCleaningStatus': '0', 'silentSleepStatus': '0', 'specialMode': '0', 'tempSel': '22', 'tempUnit': '0', 'voiceSignStatus': '0', 'voiceStatus': '0', 'windDirectionHorizontal': '0', 'windDirectionVertical': '5', 'windSensingStatus': '0', 'windSpeed': '5'}, 'timestamp': '2023-06-09T05:43:43.795Z', 'transactionId': 'a8-48-fa-3a-da-88_2023-06-09T05:43:43.795Z'}
Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/hon/climate.py:158
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 8:43:29 AM (4 occurrences)
Last logged: 8:43:44 AM
[140602509897488] Can't send command
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 205, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1910, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1950, in _execute_service
await cast(CallableServiceCall], Awaitable[None, handler.job.target)(
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 226, in handle_service
await service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 811, in entity_service_call
future.result() # pop exception if have
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1034, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 851, in _handle_entity_call
await result
File "/config/custom_components/hon/climate.py", line 158, in async_set_hvac_mode
await self._device.commands[command].send()
File "/usr/local/lib/python3.11/site-packages/pyhon/commands.py", line 119, in send
raise ApiError("Can't send command")
pyhon.exceptions.ApiError: Can't send command
So the hOn server answers that a value is wrong, but don't specify which one. It's hard to find the right, but I think it could be
programRules, can you please tryv0.8.1?Moving to beta 9.1 seems to have fixed the issue!
However the changes feel a bit sluggish tbh. The changes are performed on the ac side, on ha it changes back to the previous state and after a few seconds, ha finally switches to the function originally set to.
With the latest beta, this should be works better now. Thanks for reporting!