Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error : indisponible since the new version #29

Open
jeo25550 opened this issue Jan 14, 2025 · 22 comments
Open

Error : indisponible since the new version #29

jeo25550 opened this issue Jan 14, 2025 · 22 comments

Comments

@jeo25550
Copy link

L'intégration ne fonctionne plus depuis quelques jour (Maj ?) Message indisponible.

2025-01-14 09:47:19.433 DEBUG (MainThread) [pyintesishome] Sending command {"command":"get","data":{"deviceId":127927475490,"uid":10}}
2025-01-14 09:47:19.433 ERROR (MainThread) [pyintesishome] <class 'ConnectionResetError'> Exception. ('Connection lost',) / Connection lost

@srkoster
Copy link
Contributor

srkoster commented Jan 15, 2025

@jeo25550 its still working here with intesishome local and airconwithme cloud connections.

Is this since you did an update? What version are you on and what kind of device / connection did you configure?

@jeo25550
Copy link
Author

@srkoster Hello, i use version 1.1.1 of intesishome on HA. my device is an heater pump panasonic Aquarea with tank .

I have create rest sensor , they always run.

I send you a part of the response of a postman request.

Hope that can help.

"devices": [
{
"id": "127927475490",
"name": "PAC_DUNG",
"familyId": 6656,
"modelId": 310,
"installationId": 7236,
"zoneId": 7236,
"order": 1,
"widgets": [
16,
3,
18,
27,
25,
28,
23,
46,
54
]
}

@srkoster
Copy link
Contributor

Sounds like you're using the cloud control and not a local connection to the device.

I've had issue with my cloud connection due to a change in the referenced python package pyintesishome version 1.8.5 see jnimmo/pyIntesisHome#57

Could you try to manually revert back to 1.8.4 by editing the following line in the manifest.json file in your Home Assistant custom_components\intesishome folder and restarting HA?

"requirements": ["pyintesishome==1.8.5"],

@jeo25550
Copy link
Author

jeo25550 commented Jan 19, 2025

@srkoster I change my manifest like that :
{
"domain": "intesishome",
"name": "IntesisHome",
"codeowners": ["@jnimmo"],
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/intesishome",
"iot_class": "cloud_push",
"issue_tracker": "https://github.com/jnimmo/hass-intesishome/issues",
"loggers": ["pyintesishome"],
"requirements": ["pyintesishome==1.8.4"],
"version": "1.1.1"
}

I have always unknow message on the compoment , but now i can change the mode . But there is only 1 mode heater (and stop) No tank and tank+heater

Image

@srkoster
Copy link
Contributor

Okay, that's a start then :)

Could you post the rest of the response of your Postman call? You've posted the "config" bit which is used to created the entities in Home Assistant. The "status" bit contains both the real values like temperature (which is used to populate the actual values) but also available options (which is used to create the option lists like mode)

@jeo25550
Copy link
Author

@srkoster
{
"config": {
"token": 774325603,
"pushToken": "channel-72a8ab4748d4707fda159db0088d85de",
"lastAppVersion": "2.8",
"forceUpdate": 0,
"setDelay": 0.7,
"devicesLimit": 100,
"devicesCount": 1,
"serverIP": "212.92.41.143",
"serverPort": 5210,
"hash": "e6320a8d8da4fdb9040713e146c7577b2da2ba7e",
"inst": [
{
"id": 1,
"order": 1,
"name": "First installation",
"devices": [
{
"id": "127927475490",
"name": "PAC_DUNG",
"familyId": 6656,
"modelId": 310,
"installationId": 7236,
"zoneId": 7236,
"order": 1,
"widgets": [
16,
3,
18,
27,
25,
28,
23,
46,
54
]
}
]
}
]
},
"status": {
"hash": "85d8caeb239479183fd073749d2c48aa854c49e1",
"status": [
{
"deviceId": 127927475490,
"uid": 1,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 10,
"value": 210
},
{
"deviceId": 127927475490,
"uid": 14,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 15,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 34,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 37,
"value": 20
},
{
"deviceId": 127927475490,
"uid": 38,
"value": 250
},
{
"deviceId": 127927475490,
"uid": 39,
"value": 240
},
{
"deviceId": 127927475490,
"uid": 42,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 43,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 44,
"value": 2
},
{
"deviceId": 127927475490,
"uid": 45,
"value": 480
},
{
"deviceId": 127927475490,
"uid": 48,
"value": 50
},
{
"deviceId": 127927475490,
"uid": 49,
"value": 50
},
{
"deviceId": 127927475490,
"uid": 50,
"value": 50
},
{
"deviceId": 127927475490,
"uid": 51,
"value": 50
},
{
"deviceId": 127927475490,
"uid": 52,
"value": 100
},
{
"deviceId": 127927475490,
"uid": 53,
"value": 100
},
{
"deviceId": 127927475490,
"uid": 54,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 55,
"value": 65486
},
{
"deviceId": 127927475490,
"uid": 56,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 57,
"value": 750
},
{
"deviceId": 127927475490,
"uid": 58,
"value": 2
},
{
"deviceId": 127927475490,
"uid": 65,
"value": 2
},
{
"deviceId": 127927475490,
"uid": 66,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 69,
"value": 181882
},
{
"deviceId": 127927475490,
"uid": 75,
"value": 7
},
{
"deviceId": 127927475490,
"uid": 80,
"value": 17420
},
{
"deviceId": 127927475490,
"uid": 81,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 82,
"value": 164462
},
{
"deviceId": 127927475490,
"uid": 83,
"value": 280
},
{
"deviceId": 127927475490,
"uid": 84,
"value": 230
},
{
"deviceId": 127927475490,
"uid": 85,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 86,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 87,
"value": 65386
},
{
"deviceId": 127927475490,
"uid": 88,
"value": 88
},
{
"deviceId": 127927475490,
"uid": 89,
"value": 6
},
{
"deviceId": 127927475490,
"uid": 90,
"value": 273
},
{
"deviceId": 127927475490,
"uid": 91,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 92,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 93,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 94,
"value": 30
},
{
"deviceId": 127927475490,
"uid": 95,
"value": 2
},
{
"deviceId": 127927475490,
"uid": 96,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 97,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 98,
"value": 700
},
{
"deviceId": 127927475490,
"uid": 99,
"value": 10
},
{
"deviceId": 127927475490,
"uid": 100,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 101,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 102,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 103,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 104,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 105,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 107,
"value": 108
},
{
"deviceId": 127927475490,
"uid": 108,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 109,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 110,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 111,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 112,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 113,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 114,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 115,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 116,
"value": 250
},
{
"deviceId": 127927475490,
"uid": 117,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 118,
"value": 6
},
{
"deviceId": 127927475490,
"uid": 119,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 120,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 121,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 122,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 123,
"value": 170
},
{
"deviceId": 127927475490,
"uid": 124,
"value": 170
},
{
"deviceId": 127927475490,
"uid": 125,
"value": 85
},
{
"deviceId": 127927475490,
"uid": 126,
"value": 85
},
{
"deviceId": 127927475490,
"uid": 127,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 128,
"value": 170
},
{
"deviceId": 127927475490,
"uid": 129,
"value": 32768
},
{
"deviceId": 127927475490,
"uid": 130,
"value": 170
},
{
"deviceId": 127927475490,
"uid": 131,
"value": 85
},
{
"deviceId": 127927475490,
"uid": 132,
"value": 85
},
{
"deviceId": 127927475490,
"uid": 133,
"value": 85
},
{
"deviceId": 127927475490,
"uid": 134,
"value": 65386
},
{
"deviceId": 127927475490,
"uid": 135,
"value": 150
},
{
"deviceId": 127927475490,
"uid": 136,
"value": 380
},
{
"deviceId": 127927475490,
"uid": 142,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 144,
"value": 156
},
{
"deviceId": 127927475490,
"uid": 181,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 182,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 183,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 184,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 185,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 186,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 187,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 188,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 189,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 190,
"value": 0
},
{
"deviceId": 127927475490,
"uid": 50000,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 50001,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 50002,
"value": 20
},
{
"deviceId": 127927475490,
"uid": 50008,
"value": 1
},
{
"deviceId": 127927475490,
"uid": 50010,
"value": 4
},
{
"deviceId": 127927475490,
"uid": 60002,
"value": 195
}
]
}
}

@jeo25550
Copy link
Author

@srkoster

Here the correspondance between UID and function.

<style type="text/css"></style> UID |   | 1 | 10 | 14 | 15 | 34 | 37 | 38 | 39 | 42 | 43 | 44 | 45 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 65 | 66 | 69 | 75 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 |   | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 107 |   |   |   |   |   |   |   |   |   |   | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 142 | 144 | 50000 -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- Date | Ordre CH | power | Tp int | alarm stat | error code | silencieux | Tp ext | Tp eau aller | Tp eau retour | 2=powerfull CH 1=eco | ECS ONOFF | Mode ECS | Tp ECS | décalage eco CH | thermoshift cool eco | décalage power CH | thermoshift cool full | décalage ECS eco | décalage ECS Power | error reset | décalage courbe eau | cool water setpoint temperature | consigne ECS | oper mode 3 tank 2 H+T | Config Quiet | comfirm off | conso total | CONFIG_OPERATING_MODE | conso ECS | conso froid | conso CH | HIeau | heating off temperature |   |   |   | heater setpoint temperature |   |   | Consigne temp eau |   | booster ? | booster delay | heat interval 1 = 30, 2 = 1h |   |   |   |   |   |   |   |   | Booster tank en marche | Top defrost | heure working |   |   |   |   |   |   |   |   |   |   | H2O HI |   |   |   |   | ext_thermo_control 170=on | tank_present 170 = on | solar off |   |   |   |   |   |   |   |   |   |   | heat low outdoor set temperature | heat high outdoor set temperature | heat_low_water_set_temperature |   | error_code | external_led

@srkoster
Copy link
Contributor

Thanks, that looks good.

I think the issue is with the Home Assistant integration which might not map all mode returned by the API and the python package to a mode in the climate entity.

Could you make sure that you have earning logging enabled in your HA configuration.yaml like this

logger:
  default: warning

Or enable debug logging on the custom component from the integration UI screen.

Then check your HA logs for messages with
Unexpected mode:

@jeo25550
Copy link
Author

here the log:

NO Unexpected mode find!

2025-01-19 20:20:41.585 DEBUG (MainThread) [pyintesishome] Received: {"command":"status","data":{"rssi":194,"deviceId":127927475490,"uid":82,"value":164635}}
2025-01-19 20:20:41.586 DEBUG (MainThread) [pyintesishome] IntesisHome API Received: {"command":"status","data":{"rssi":194,"deviceId":127927475490,"uid":82,"value":164635}}

2025-01-20 02:53:27.347 ERROR (MainThread) [homeassistant.components.rest.data] Timeout while fetching data: https://user.intesishome.com/api.php/get/control?username=xxxxxx&password=xxxxxx&cmd={"status":{"hash":"x"}}&version=2.8.5

2025-01-20 11:46:05.709 DEBUG (MainThread) [pyintesishome] Received: {"command":"rssi","data":{"deviceId":127927475490,"value":195}}
2025-01-20 11:46:05.710 DEBUG (MainThread) [pyintesishome] IntesisHome API Received: {"command":"rssi","data":{"deviceId":127927475490,"value":195}}
2025-01-20 11:46:05.710 DEBUG (MainThread) [pyintesishome] Received: {"command":"status","data":{"rssi":195,"deviceId":127927475490,"uid":60002,"value":195}}
2025-01-20 11:46:05.710 DEBUG (MainThread) [pyintesishome] IntesisHome API Received: {"command":"status","data":{"rssi":195,"deviceId":127927475490,"uid":60002,"value":195}}

@srkoster
Copy link
Contributor

Did you reload the integration after enabling the debug log? That's the moment when the list is populated.

@jeo25550
Copy link
Author

Sorry, i haven't reload. now i have Unexpected mode 2 time.

2025-01-20 13:27:12.703 DEBUG (MainThread) [pyintesishome] Received: {"command":"status","data":{"rssi":190,"deviceId":127927475490,"uid":69,"value":194971}}
2025-01-20 13:27:12.703 DEBUG (MainThread) [pyintesishome] IntesisHome API Received: {"command":"status","data":{"rssi":190,"deviceId":127927475490,"uid":69,"value":194971}}
2025-01-20 13:27:15.204 DEBUG (MainThread) [pyintesishome] Cancelled the keepalive task
2025-01-20 13:27:15.211 DEBUG (MainThread) [pyintesishome] Using the provided event loop
2025-01-20 13:27:15.400 DEBUG (MainThread) [pyintesishome] {'config': {'token': 59997951, 'pushToken': 'channel-72a8ab4748d4707fda159db0088d85de', 'lastAppVersion': '2.8', 'forceUpdate': 0, 'setDelay': 0.7, 'devicesLimit': 100, 'devicesCount': 1, 'serverIP': '212.92.41.143', 'serverPort': 5210, 'hash': 'e6320a8d8da4fdb9040713e146c7577b2da2ba7e', 'inst': [{'id': 1, 'order': 1, 'name': 'First installation', 'devices': [{'id': '127927475490', 'name': 'PAC_DUNG', 'familyId': 6656, 'modelId': 310, 'installationId': 7236, 'zoneId': 7236, 'order': 1, 'widgets': [16, 3, 18, 27, 25, 28, 23, 46, 54]}]}]}, 'status': {'hash': 'd7bef4d6533a1c54aee1de5485fbb3d23281b015', 'status': [{'deviceId': 127927475490, 'uid': 1, 'value': 1}, {'deviceId': 127927475490, 'uid': 10, 'value': 210}, {'deviceId': 127927475490, 'uid': 14, 'value': 0}, {'deviceId': 127927475490, 'uid': 15, 'value': 0}, {'deviceId': 127927475490, 'uid': 34, 'value': 0}, {'deviceId': 127927475490, 'uid': 37, 'value': 70}, {'deviceId': 127927475490, 'uid': 38, 'value': 540}, {'deviceId': 127927475490, 'uid': 39, 'value': 520}, {'deviceId': 127927475490, 'uid': 42, 'value': 2}, {'deviceId': 127927475490, 'uid': 43, 'value': 1}, {'deviceId': 127927475490, 'uid': 44, 'value': 2}, {'deviceId': 127927475490, 'uid': 45, 'value': 410}, {'deviceId': 127927475490, 'uid': 48, 'value': 50}, {'deviceId': 127927475490, 'uid': 49, 'value': 50}, {'deviceId': 127927475490, 'uid': 50, 'value': 50}, {'deviceId': 127927475490, 'uid': 51, 'value': 50}, {'deviceId': 127927475490, 'uid': 52, 'value': 100}, {'deviceId': 127927475490, 'uid': 53, 'value': 100}, {'deviceId': 127927475490, 'uid': 54, 'value': 0}, {'deviceId': 127927475490, 'uid': 55, 'value': 50}, {'deviceId': 127927475490, 'uid': 56, 'value': 32768}, {'deviceId': 127927475490, 'uid': 57, 'value': 750}, {'deviceId': 127927475490, 'uid': 58, 'value': 2}, {'deviceId': 127927475490, 'uid': 65, 'value': 2}, {'deviceId': 127927475490, 'uid': 66, 'value': 1}, {'deviceId': 127927475490, 'uid': 69, 'value': 194971}, {'deviceId': 127927475490, 'uid': 75, 'value': 7}, {'deviceId': 127927475490, 'uid': 80, 'value': 19952}, {'deviceId': 127927475490, 'uid': 81, 'value': 0}, {'deviceId': 127927475490, 'uid': 82, 'value': 175019}, {'deviceId': 127927475490, 'uid': 83, 'value': 280}, {'deviceId': 127927475490, 'uid': 84, 'value': 230}, {'deviceId': 127927475490, 'uid': 85, 'value': 32768}, {'deviceId': 127927475490, 'uid': 86, 'value': 32768}, {'deviceId': 127927475490, 'uid': 87, 'value': 65386}, {'deviceId': 127927475490, 'uid': 88, 'value': 88}, {'deviceId': 127927475490, 'uid': 89, 'value': 6}, {'deviceId': 127927475490, 'uid': 90, 'value': 356}, {'deviceId': 127927475490, 'uid': 91, 'value': 32768}, {'deviceId': 127927475490, 'uid': 92, 'value': 32768}, {'deviceId': 127927475490, 'uid': 93, 'value': 1}, {'deviceId': 127927475490, 'uid': 94, 'value': 30}, {'deviceId': 127927475490, 'uid': 95, 'value': 2}, {'deviceId': 127927475490, 'uid': 96, 'value': 32768}, {'deviceId': 127927475490, 'uid': 97, 'value': 0}, {'deviceId': 127927475490, 'uid': 98, 'value': 700}, {'deviceId': 127927475490, 'uid': 99, 'value': 10}, {'deviceId': 127927475490, 'uid': 100, 'value': 0}, {'deviceId': 127927475490, 'uid': 101, 'value': 0}, {'deviceId': 127927475490, 'uid': 102, 'value': 0}, {'deviceId': 127927475490, 'uid': 103, 'value': 0}, {'deviceId': 127927475490, 'uid': 104, 'value': 0}, {'deviceId': 127927475490, 'uid': 105, 'value': 0}, {'deviceId': 127927475490, 'uid': 107, 'value': 112}, {'deviceId': 127927475490, 'uid': 108, 'value': 32768}, {'deviceId': 127927475490, 'uid': 109, 'value': 0}, {'deviceId': 127927475490, 'uid': 110, 'value': 0}, {'deviceId': 127927475490, 'uid': 111, 'value': 0}, {'deviceId': 127927475490, 'uid': 112, 'value': 0}, {'deviceId': 127927475490, 'uid': 113, 'value': 0}, {'deviceId': 127927475490, 'uid': 114, 'value': 0}, {'deviceId': 127927475490, 'uid': 115, 'value': 0}, {'deviceId': 127927475490, 'uid': 116, 'value': 250}, {'deviceId': 127927475490, 'uid': 117, 'value': 0}, {'deviceId': 127927475490, 'uid': 118, 'value': 6}, {'deviceId': 127927475490, 'uid': 119, 'value': 0}, {'deviceId': 127927475490, 'uid': 120, 'value': 0}, {'deviceId': 127927475490, 'uid': 121, 'value': 0}, {'deviceId': 127927475490, 'uid': 122, 'value': 0}, {'deviceId': 127927475490, 'uid': 123, 'value': 170}, {'deviceId': 127927475490, 'uid': 124, 'value': 170}, {'deviceId': 127927475490, 'uid': 125, 'value': 85}, {'deviceId': 127927475490, 'uid': 126, 'value': 85}, {'deviceId': 127927475490, 'uid': 127, 'value': 32768}, {'deviceId': 127927475490, 'uid': 128, 'value': 170}, {'deviceId': 127927475490, 'uid': 129, 'value': 32768}, {'deviceId': 127927475490, 'uid': 130, 'value': 170}, {'deviceId': 127927475490, 'uid': 131, 'value': 85}, {'deviceId': 127927475490, 'uid': 132, 'value': 85}, {'deviceId': 127927475490, 'uid': 133, 'value': 85}, {'deviceId': 127927475490, 'uid': 134, 'value': 65386}, {'deviceId': 127927475490, 'uid': 135, 'value': 150}, {'deviceId': 127927475490, 'uid': 136, 'value': 380}, {'deviceId': 127927475490, 'uid': 142, 'value': 1}, {'deviceId': 127927475490, 'uid': 144, 'value': 156}, {'deviceId': 127927475490, 'uid': 181, 'value': 0}, {'deviceId': 127927475490, 'uid': 182, 'value': 0}, {'deviceId': 127927475490, 'uid': 183, 'value': 0}, {'deviceId': 127927475490, 'uid': 184, 'value': 0}, {'deviceId': 127927475490, 'uid': 185, 'value': 0}, {'deviceId': 127927475490, 'uid': 186, 'value': 0}, {'deviceId': 127927475490, 'uid': 187, 'value': 0}, {'deviceId': 127927475490, 'uid': 188, 'value': 0}, {'deviceId': 127927475490, 'uid': 189, 'value': 0}, {'deviceId': 127927475490, 'uid': 190, 'value': 0}, {'deviceId': 127927475490, 'uid': 50000, 'value': 1}, {'deviceId': 127927475490, 'uid': 50001, 'value': 1}, {'deviceId': 127927475490, 'uid': 50002, 'value': 20}, {'deviceId': 127927475490, 'uid': 50008, 'value': 1}, {'deviceId': 127927475490, 'uid': 50010, 'value': 4}, {'deviceId': 127927475490, 'uid': 60002, 'value': 190}]}}
2025-01-20 13:27:15.400 DEBUG (MainThread) [pyintesishome] Server: 212.92.41.143:5210, Token: 59997951
2025-01-20 13:27:15.400 DEBUG (MainThread) [pyintesishome] {'127927475490': {'name': 'PAC_DUNG', 'widgets': [16, 3, 18, 27, 25, 28, 23, 46, 54], 'model': 310}}
2025-01-20 13:27:15.401 WARNING (MainThread) [custom_components.intesishome.climate] Unexpected mode: heat+tank
2025-01-20 13:27:15.401 WARNING (MainThread) [custom_components.intesishome.climate] Unexpected mode: tank
2025-01-20 13:27:15.406 DEBUG (MainThread) [custom_components.intesishome.climate] Added climate device with state: {'name': 'PAC_DUNG', 'widgets': [16, 3, 18, 27, 25, 28, 23, 46, 54], 'model': 310, 'power': 'on', 'temperature': 210, 'alarm_status': 0, 'error_code': 156, 'quiet_mode': 'off', 'outdoor_temp': 70, 'water_outlet_temperature': 540, 'water_inlet_temperature': 520, 'climate_working_mode': 'powerful', 'unknown_uid_43': 1, 'tank_working_mode': 'powerful', 'tank_water_temperature': 410, 'thermoshift_heat_eco': 50, 'thermoshift_cool_eco': 50, 'thermoshift_heat_powerful': 50, 'thermoshift_cool_powerful': 50, 'thermoshift_tank_eco': 100, 'thermoshift_tank_powerful': 100, 'error_reset': 0, 'heat_thermo_shift': 50, 'cool_water_setpoint_temperature': None, 'tank_setpoint_temperature': 750, 'operating_mode': 'heat+tank', 'config_quiet': 2, 'config_confirm_off': 1, 'accumulated_power_consumption': 194971, 'config_operating_mode': 7, 'aquarea_tank_consumption': 19952, 'aquarea_cool_consumption': 0, 'aquarea_heat_consumption': 175019, 'heat_high_water_set_temperature': 280, 'heating_off_temperature': 230, 'unknown_uid_85': 32768, 'unknown_uid_86': 32768, 'heater_setpoint_temperature': 65386, 'unknown_uid_88': 88, 'unknown_uid_89': 6, 'water_target_temperature': 356, 'unknown_uid_91': 32768, 'unknown_uid_92': 32768, 'unknown_uid_93': 1, 'unknown_uid_94': 30, 'heat_interval': 60, 'unknown_uid_96': 32768, 'unknown_uid_97': 0, 'unknown_uid_98': 700, 'unknown_uid_99': 10, 'unknown_uid_100': 0, 'unknown_uid_101': 0, 'unknown_uid_102': 0, 'unknown_uid_103': 0, 'unknown_uid_104': 0, 'unknown_uid_105': 0, 'aquarea_working_hours': 112, 'unknown_uid_108': 32768, 'unknown_uid_109': 0, 'unknown_uid_110': 0, 'unknown_uid_111': 0, 'unknown_uid_112': 0, 'unknown_uid_113': 0, 'unknown_uid_114': 0, 'unknown_uid_115': 0, 'unknown_uid_116': 250, 'unknown_uid_117': 0, 'unknown_uid_118': 6, 'unknown_uid_119': 0, 'unknown_uid_120': 0, 'unknown_uid_121': 0, 'unknown_uid_122': 0, 'ext_thermo_control': 'on', 'tank_present': 'on', 'solar_priority': 'off', 'unknown_uid_126': 85, 'unknown_uid_127': 32768, 'unknown_uid_128': 170, 'unknown_uid_129': 32768, 'unknown_uid_130': 170, 'unknown_uid_131': 85, 'unknown_uid_132': 85, 'unknown_uid_133': 85, 'heat_low_outdoor_set_temperature': 65386, 'heat_high_outdoor_set_temperature': 150, 'heat_low_water_set_temperature': 380, 'unknown_uid_142': 1, 'mainenance_w_reset': 0, 'mainenance_wo_reset': 0, 'filter_clean': 0, 'filter_due_hours': 0, 'uid_185': 0, 'uid_186': 0, 'unknown_uid_187': 0, 'unknown_uid_188': 0, 'unknown_uid_189': 0, 'unknown_uid_190': 0, 'external_led': 'on', 'internal_led': 'on', 'internal_temperature_offset': 20, 'unknown_uid_50008': 1, 'unknown_uid_50010': 4, 'rssi': 190}
2025-01-20 13:27:15.516 DEBUG (MainThread) [pyintesishome] {'config': {'token': 67940668, 'pushToken': 'channel-72a8ab4748d4707fda159db0088d85de', 'lastAppVersion': '2.8', 'forceUpdate': 0, 'setDelay': 0.7, 'devicesLimit': 100, 'devicesCount': 1, 'serverIP': '212.92.41.143', 'serverPort': 5210, 'hash': 'e6320a8d8da4fdb9040713e146c7577b2da2ba7e', 'inst': [{'id': 1, 'order': 1, 'name': 'First installation', 'devices': [{'id': '127927475490', 'name': 'PAC_DUNG', 'familyId': 6656, 'modelId': 310, 'installationId': 7236, 'zoneId': 7236, 'order': 1, 'widgets': [16, 3, 18, 27, 25, 28, 23, 46, 54]}]}]}, 'status': {'hash': 'd7bef4d6533a1c54aee1de5485fbb3d23281b015', 'status': [{'deviceId': 127927475490, 'uid': 1, 'value': 1}, {'deviceId': 127927475490, 'uid': 10, 'value': 210}, {'deviceId': 127927475490, 'uid': 14, 'value': 0}, {'deviceId': 127927475490, 'uid': 15, 'value': 0}, {'deviceId': 127927475490, 'uid': 34, 'value': 0}, {'deviceId': 127927475490, 'uid': 37, 'value': 70}, {'deviceId': 127927475490, 'uid': 38, 'value': 540}, {'deviceId': 127927475490, 'uid': 39, 'value': 520}, {'deviceId': 127927475490, 'uid': 42, 'value': 2}, {'deviceId': 127927475490, 'uid': 43, 'value': 1}, {'deviceId': 127927475490, 'uid': 44, 'value': 2}, {'deviceId': 127927475490, 'uid': 45, 'value': 410}, {'deviceId': 127927475490, 'uid': 48, 'value': 50}, {'deviceId': 127927475490, 'uid': 49, 'value': 50}, {'deviceId': 127927475490, 'uid': 50, 'value': 50}, {'deviceId': 127927475490, 'uid': 51, 'value': 50}, {'deviceId': 127927475490, 'uid': 52, 'value': 100}, {'deviceId': 127927475490, 'uid': 53, 'value': 100}, {'deviceId': 127927475490, 'uid': 54, 'value': 0}, {'deviceId': 127927475490, 'uid': 55, 'value': 50}, {'deviceId': 127927475490, 'uid': 56, 'value': 32768}, {'deviceId': 127927475490, 'uid': 57, 'value': 750}, {'deviceId': 127927475490, 'uid': 58, 'value': 2}, {'deviceId': 127927475490, 'uid': 65, 'value': 2}, {'deviceId': 127927475490, 'uid': 66, 'value': 1}, {'deviceId': 127927475490, 'uid': 69, 'value': 194971}, {'deviceId': 127927475490, 'uid': 75, 'value': 7}, {'deviceId': 127927475490, 'uid': 80, 'value': 19952}, {'deviceId': 127927475490, 'uid': 81, 'value': 0}, {'deviceId': 127927475490, 'uid': 82, 'value': 175019}, {'deviceId': 127927475490, 'uid': 83, 'value': 280}, {'deviceId': 127927475490, 'uid': 84, 'value': 230}, {'deviceId': 127927475490, 'uid': 85, 'value': 32768}, {'deviceId': 127927475490, 'uid': 86, 'value': 32768}, {'deviceId': 127927475490, 'uid': 87, 'value': 65386}, {'deviceId': 127927475490, 'uid': 88, 'value': 88}, {'deviceId': 127927475490, 'uid': 89, 'value': 6}, {'deviceId': 127927475490, 'uid': 90, 'value': 356}, {'deviceId': 127927475490, 'uid': 91, 'value': 32768}, {'deviceId': 127927475490, 'uid': 92, 'value': 32768}, {'deviceId': 127927475490, 'uid': 93, 'value': 1}, {'deviceId': 127927475490, 'uid': 94, 'value': 30}, {'deviceId': 127927475490, 'uid': 95, 'value': 2}, {'deviceId': 127927475490, 'uid': 96, 'value': 32768}, {'deviceId': 127927475490, 'uid': 97, 'value': 0}, {'deviceId': 127927475490, 'uid': 98, 'value': 700}, {'deviceId': 127927475490, 'uid': 99, 'value': 10}, {'deviceId': 127927475490, 'uid': 100, 'value': 0}, {'deviceId': 127927475490, 'uid': 101, 'value': 0}, {'deviceId': 127927475490, 'uid': 102, 'value': 0}, {'deviceId': 127927475490, 'uid': 103, 'value': 0}, {'deviceId': 127927475490, 'uid': 104, 'value': 0}, {'deviceId': 127927475490, 'uid': 105, 'value': 0}, {'deviceId': 127927475490, 'uid': 107, 'value': 112}, {'deviceId': 127927475490, 'uid': 108, 'value': 32768}, {'deviceId': 127927475490, 'uid': 109, 'value': 0}, {'deviceId': 127927475490, 'uid': 110, 'value': 0}, {'deviceId': 127927475490, 'uid': 111, 'value': 0}, {'deviceId': 127927475490, 'uid': 112, 'value': 0}, {'deviceId': 127927475490, 'uid': 113, 'value': 0}, {'deviceId': 127927475490, 'uid': 114, 'value': 0}, {'deviceId': 127927475490, 'uid': 115, 'value': 0}, {'deviceId': 127927475490, 'uid': 116, 'value': 250}, {'deviceId': 127927475490, 'uid': 117, 'value': 0}, {'deviceId': 127927475490, 'uid': 118, 'value': 6}, {'deviceId': 127927475490, 'uid': 119, 'value': 0}, {'deviceId': 127927475490, 'uid': 120, 'value': 0}, {'deviceId': 127927475490, 'uid': 121, 'value': 0}, {'deviceId': 127927475490, 'uid': 122, 'value': 0}, {'deviceId': 127927475490, 'uid': 123, 'value': 170}, {'deviceId': 127927475490, 'uid': 124, 'value': 170}, {'deviceId': 127927475490, 'uid': 125, 'value': 85}, {'deviceId': 127927475490, 'uid': 126, 'value': 85}, {'deviceId': 127927475490, 'uid': 127, 'value': 32768}, {'deviceId': 127927475490, 'uid': 128, 'value': 170}, {'deviceId': 127927475490, 'uid': 129, 'value': 32768}, {'deviceId': 127927475490, 'uid': 130, 'value': 170}, {'deviceId': 127927475490, 'uid': 131, 'value': 85}, {'deviceId': 127927475490, 'uid': 132, 'value': 85}, {'deviceId': 127927475490, 'uid': 133, 'value': 85}, {'deviceId': 127927475490, 'uid': 134, 'value': 65386}, {'deviceId': 127927475490, 'uid': 135, 'value': 150}, {'deviceId': 127927475490, 'uid': 136, 'value': 380}, {'deviceId': 127927475490, 'uid': 142, 'value': 1}, {'deviceId': 127927475490, 'uid': 144, 'value': 156}, {'deviceId': 127927475490, 'uid': 181, 'value': 0}, {'deviceId': 127927475490, 'uid': 182, 'value': 0}, {'deviceId': 127927475490, 'uid': 183, 'value': 0}, {'deviceId': 127927475490, 'uid': 184, 'value': 0}, {'deviceId': 127927475490, 'uid': 185, 'value': 0}, {'deviceId': 127927475490, 'uid': 186, 'value': 0}, {'deviceId': 127927475490, 'uid': 187, 'value': 0}, {'deviceId': 127927475490, 'uid': 188, 'value': 0}, {'deviceId': 127927475490, 'uid': 189, 'value': 0}, {'deviceId': 127927475490, 'uid': 190, 'value': 0}, {'deviceId': 127927475490, 'uid': 50000, 'value': 1}, {'deviceId': 127927475490, 'uid': 50001, 'value': 1}, {'deviceId': 127927475490, 'uid': 50002, 'value': 20}, {'deviceId': 127927475490, 'uid': 50008, 'value': 1}, {'deviceId': 127927475490, 'uid': 50010, 'value': 4}, {'deviceId': 127927475490, 'uid': 60002, 'value': 190}]}}
2025-01-20 13:27:15.517 DEBUG (MainThread) [pyintesishome] Server: 212.92.41.143:5210, Token: 67940668
2025-01-20 13:27:15.517 DEBUG (MainThread) [pyintesishome] {'127927475490': {'name': 'PAC_DUNG', 'widgets': [16, 3, 18, 27, 25, 28, 23, 46, 54], 'model': 310}}
2025-01-20 13:27:15.517 DEBUG (MainThread) [pyintesishome] Opening connection to IntesisHome API at 212.92.41.143:5210
2025-01-20 13:27:15.549 DEBUG (MainThread) [pyintesishome] Sending command {"command":"connect_req","data":{"token":67940668}}
2025-01-20 13:27:20.553 DEBUG (MainThread) [pyintesishome] Received: {"command":"connect_rsp","data":{"status":"ok"}}
2025-01-20 13:27:20.553 DEBUG (MainThread) [pyintesishome] IntesisHome API Received: {"command":"connect_rsp","data":{"status":"ok"}}
2025-01-20 13:27:20.554 INFO (MainThread) [pyintesishome] IntesisHome successfully authenticated
2025-01-20 13:27:20.555 DEBUG (MainThread) [custom_components.intesishome.climate] Connection to IntesisHome API was restored
2025-01-20 13:27:20.556 DEBUG (MainThread) [pyintesishome] Resolving set_value's await

@srkoster
Copy link
Contributor

Good, that matches the expectation.

Quick check, you don't have a cooling option on the device? Just heating?

@jeo25550
Copy link
Author

Image

@srkoster
Copy link
Contributor

srkoster commented Jan 20, 2025

I take that as a no.

So even though everything is exposed by the API and processed by the python package pyintesishome correctly, this Home Assistant integration currently is unable to handle the +tank statuses or controlling the tank in itself.

The quickest fix would be to change this part so that the heat+tank status is mapped to heat in the climate entity, off+tank to off, This would make sure that you can see the status of the heatpump correctly.
The code is in here: https://github.com/jnimmo/hass-intesishome/blob/dedf5ddf9585e720baa3e9f5a22dc8ac982863fc/custom_components/intesishome/climate.py#L57C1-L65C69

However, you won't be able to change the status of the tank through the climate entity as Home Assistant only allows predefined modes and heat+tank for example isn't one of them. We'd have to add a separate water_heater entity for that. That would take a bit more time as it would mean getting some logic out of the climate code into a coordinator code, which would coordinate the API communication for both entities.

@jeo25550
Copy link
Author

Heater+Tank and Tank modes appeared in the HA interface under Dry and Fan_Only in previous versions which was fine for me

@srkoster
Copy link
Contributor

Do you mean that you could press "Mode" in the climate UI in Home Assistant and you saw: "Off, Heat, Dry, Fan_Only, Heat+Tank, Tank"?

Or did you mean you'd have "Off, Heat, Dry, Fan_Only" and pressing "Dry" would put the device in "Heat+Tank" mode?

@jeo25550
Copy link
Author

jeo25550 commented Jan 20, 2025

Before when I press MODE I have OFF,heat, Fan only, dry if i choosed Dry I have heater+tank in real action.

now i have only OFF and heater.

If I use action Set HVAC mode to dry, nothing happens

@srkoster
Copy link
Contributor

srkoster commented Jan 20, 2025

I can't find anything in the code that would explain the previous behavior. What version was it?

You could implement that logic by changing this part into this:

MAP_IH_TO_HVAC_MODE = {
    "auto": HVACMode.HEAT_COOL,
    "cool": HVACMode.COOL,
    "heat+tank": HVACMode.DRY,
    "tank": HVACMode.FAN_ONLY,
    "heat": HVACMode.HEAT,
    "off": HVACMode.OFF
}

It won't make it back into the integration itself as it would break the integration for devices that do have a dry or fan option.

@jeo25550
Copy link
Author

Ok, i had mad some test.

it's ok only with this :
version 1.1.1
manifest 1.8.4
and
MAP_IH_TO_HVAC_MODE = {
"auto": HVACMode.HEAT_COOL,
"cool": HVACMode.COOL,
"heat+tank": HVACMode.DRY,
"tank": HVACMode.FAN_ONLY,
"heat": HVACMode.HEAT,
"off": HVACMode.OFF
}

Thanks !!

@dhilbig
Copy link

dhilbig commented Feb 7, 2025

I am having the same issue, but with a Mitsubishi reverse cycle air-conditioner the logs are nearly the same but as there is no tank I don't see that error. After a restart I get almost the same response as jeo25550 posted 3 weeks ago. The last few lines of my log are:

2025-02-08 09:16:28.085 DEBUG (MainThread) [pyintesishome] Opening connection to IntesisHome API at 212.92.41.143:5210
2025-02-08 09:16:28.451 DEBUG (MainThread) [pyintesishome] Sending command {"command":"connect_req","data":{"token":1710445498}}
2025-02-08 09:16:33.459 DEBUG (MainThread) [pyintesishome] Received: {"command":"connect_rsp","data":{"status":"ok"}}
2025-02-08 09:16:33.460 DEBUG (MainThread) [pyintesishome] IntesisHome API Received: {"command":"connect_rsp","data":{"status":"ok"}}
2025-02-08 09:16:33.460 INFO (MainThread) [pyintesishome] IntesisHome successfully authenticated
2025-02-08 09:16:33.461 DEBUG (MainThread) [custom_components.intesishome.climate] Connection to IntesisHome API was restored
2025-02-08 09:16:33.470 DEBUG (MainThread) [pyintesishome] Resolving set_value's await
2025-02-08 09:16:33.470 DEBUG (MainThread) [pyintesishome] pyIntesisHome lost connection to the IntesisHome server
2025-02-08 09:16:33.471 INFO (MainThread) [custom_components.intesishome.climate] Connection to IntesisHome API was lost. Reconnecting in 340 seconds

The climate.air_con entity shows as unavailable but for the instant I restart I do get the values from the cloud.

Then always every 4 minutes I get the following 3 lines in the LOG:

2025-02-08 09:20:33.474 DEBUG (MainThread) [pyintesishome] sending keepalive to {self._device_type}
2025-02-08 09:20:33.475 DEBUG (MainThread) [pyintesishome] Sending command {"command":"get","data":{"deviceId":206449557192,"uid":10}}
2025-02-08 09:20:33.475 ERROR (MainThread) [pyintesishome] <class 'ConnectionResetError'> Exception. ('Connection lost',) / Connection lost

@srkoster
Copy link
Contributor

srkoster commented Feb 8, 2025

@dhilbig did you try downgrading the PyIntesishome dependency? See #29 (comment)

@dhilbig
Copy link

dhilbig commented Feb 9, 2025

@srkoster have now and it is working.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants