core icon indicating copy to clipboard operation
core copied to clipboard

Multiple errors in log when adjusting temperature and automation failing

Open Shredder5262 opened this issue 1 year ago • 7 comments

The problem

I have an automation to decrease the temperature at night time and increase the temperature in the morning before we wake up. This seems to work intermittently and has been an ongoing issue. I have looked in the logs and i can see several different errors that need to be addressed.

Error 1 Logger: homeassistant.helpers.entity Source: helpers/entity.py:1186 First occurred: January 13, 2024 at 10:25:06 PM (2 occurrences) Last logged: 10:27:12 AM

Update of climate.thermostat is taking over 10 seconds Update of media_player.fppras is taking over 10 seconds

Error 2 Logger: somecomfort Source: components/honeywell/climate.py:515 First occurred: January 12, 2024 at 7:26:07 PM (21 occurrences) Last logged: 9:57:34 AM

Service Unavailable. 401 Error at update (Key expired?).

Error 3 Logger: homeassistant.components.automation.house_night_time_cooldown Source: components/automation/init.py:669 Integration: Automation (documentation, issues) First occurred: 3:00:00 AM (1 occurrences) Last logged: 3:00:00 AM

While executing automation automation.house_night_time_cooldown Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 375, in async_set_temperature await self._device.set_setpoint_heat(temperature) File "/usr/local/lib/python3.11/site-packages/aiosomecomfort/device.py", line 187, in set_setpoint_heat await self._client.set_thermostat_settings( File "/usr/local/lib/python3.11/site-packages/aiosomecomfort/init.py", line 217, in set_thermostat_settings result = await self._post_json(url, json=data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/aiosomecomfort/init.py", line 175, in _post_json return await self._request_json("post", *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/aiosomecomfort/init.py", line 164, in _request_json raise ConnectionError("Service Unavailable.") aiosomecomfort.exceptions.ConnectionError: Service Unavailable.

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/automation/init.py", line 669, in async_trigger await self.action_script.async_run( File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1587, in async_run return await asyncio.shield(run.async_run()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 426, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 479, in _async_step self._handle_exception( File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 502, in _handle_exception raise exception File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 476, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 933, in _async_choose_step await self._async_run_script(script) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1078, in _async_run_script await self._async_run_long_action( File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 675, in _async_run_long_action return long_task.result() ^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1587, in async_run return await asyncio.shield(run.async_run()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 426, in async_run await self._async_step(log_exceptions=False) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 479, in _async_step self._handle_exception( File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 502, in _handle_exception raise exception File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 476, in _async_step await getattr(self, handler)() File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 713, in _async_call_service_step response_data = await self._async_run_long_action( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 675, in _async_run_long_action return long_task.result() ^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2149, in async_call response_data = await coro ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2186, in _execute_service return await target(service_call) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 272, in handle_service return await service.entity_service_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 882, in entity_service_call single_response = await _handle_entity_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 952, in _handle_entity_call result = await task ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 731, in async_service_temperature_set await entity.async_set_temperature(**kwargs) File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 384, in async_set_temperature raise ValueError( ValueError: Honeywell set temperature failed: invalid temperature: 75.0.

The last error claims that 75 degrees is an invalid temperature, but it is set up in the same manner to decrease the temperature but that is working .

Temperature decrease 2024-01-14 10_39_50-Settings – Home Assistant - Vivaldi

Temperature increase, this seems to be failing consistently 2024-01-14 10_40_41-Settings – Home Assistant - Vivaldi

What version of Home Assistant Core has the issue?

core-2024.1.3

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Honeywell Total Comfort

Link to integration documentation on our website

https://www.home-assistant.io/integrations/honeywell/

Diagnostics information

No response

Example YAML snippet

alias: House - Thermostat Night Time Cooldown
description: ""
trigger:
  - platform: time
    at: "23:00:00"
    id: Night Time
  - platform: time
    at: "03:00:00"
    id: Morning
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Night Time
        sequence:
          - service: climate.set_temperature
            target:
              entity_id: climate.thermostat
            data:
              hvac_mode: heat_cool
              target_temp_low: 65
              temperature: 67
              target_temp_high: 70
        alias: Reduce Temperature to 65 degrees at night
      - conditions:
          - condition: trigger
            id:
              - Morning
        sequence:
          - service: climate.set_temperature
            target:
              entity_id: climate.thermostat
            data:
              hvac_mode: heat_cool
              target_temp_low: 75
              temperature: 77
              target_temp_high: 80
        alias: Increase temperature to 75 degrees at day
mode: single

Anything in the logs that might be useful for us?

No response

Additional information

No response

Shredder5262 avatar Jan 14 '24 16:01 Shredder5262

Hey there @rdfurman, @mkmer, mind taking a look at this issue as it has been labeled with an integration (honeywell) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of honeywell can trigger bot actions by commenting:

  • @home-assistant close Closes the issue.
  • @home-assistant rename Awesome new title Renames the issue.
  • @home-assistant reopen Reopen the issue.
  • @home-assistant unassign honeywell Removes the current integration label and assignees on the issue, add the integration domain after the command.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


honeywell documentation honeywell source (message by IssueLinks)

home-assistant[bot] avatar Jan 14 '24 16:01 home-assistant[bot]

This happens if your thermostat is set to "automatic changeover" and the thermostat cooling is set too close to the heating set points. I don't see what version of HA you are using, but I thought we had this addressed back in April (after a year of searching): https://github.com/mkmer/AIOSomecomfort/blob/aa49c5e45f4e2c7ae8cd96ff314d26ca84a7d523/aiosomecomfort/device.py#L161-L164

mkmer avatar Jan 14 '24 21:01 mkmer

Also, one of the errors is raised from here: https://github.com/mkmer/AIOSomecomfort/blob/aa49c5e45f4e2c7ae8cd96ff314d26ca84a7d523/aiosomecomfort/init.py#L163-L164 Which indicates the web site is returning 403 - unauthorized.
The API may have been in a reauth state when the automation was triggered.

mkmer avatar Jan 14 '24 21:01 mkmer

These are the versions of Ha I run... Core 2024.1.3 Supervisor 2023.12.0 Operating System 11.4 Frontend 20240104.0

If this is fixed, How can i induce an update? Is there an API authorization that needs to be updated? Where do i need to go to do that? The automation is not working in its current state...or seems to work intermittently. In either case waking up to an extremely cold house in winter is very unpleasant. I have disabled the automation in the meantime.

Shredder5262 avatar Jan 15 '24 01:01 Shredder5262

You are up to date, so the first issue should be fixed.
The web site has been having issues where they report service unavailable, and do not perform requested commands. The only way to fix that is to send the command again when they don't accept it. Usually they recover in a few minutes, but not always.

mkmer avatar Jan 15 '24 13:01 mkmer

I use repeat until it succeeds. Also need the continue_on_error: true option.

alias: 15 No one home heat
description: Everyone has left home
trigger:
  - platform: numeric_state
    entity_id:
      - zone.home
    for:
      hours: 0
      minutes: 10
      seconds: 0
    below: 1
condition:
  - condition: device
    device_id: 2d5cf3605a042e5702eb5fb4b1df2a57
    domain: climate
    entity_id: c052d32441e63b35925025cf2a8076e4
    type: is_hvac_mode
    hvac_mode: heat
action:
  - repeat:
      sequence:
        - service: climate.set_temperature
          continue_on_error: true
          target:
            entity_id:
              - climate.astro
          data:
            temperature: 64
        - delay:
            hours: 0
            minutes: 3
            seconds: 0
            milliseconds: 0
      until:
        - condition: state
          entity_id: climate.astro
          attribute: temperature
          state: "64"
mode: single

mkmer avatar Jan 15 '24 15:01 mkmer

Alright, I'll try that and see how it goes for a few days.

Shredder5262 avatar Jan 15 '24 23:01 Shredder5262

I use repeat until it succeeds. Also need the continue_on_error: true option.

alias: 15 No one home heat
description: Everyone has left home
trigger:
  - platform: numeric_state
    entity_id:
      - zone.home
    for:
      hours: 0
      minutes: 10
      seconds: 0
    below: 1
condition:
  - condition: device
    device_id: 2d5cf3605a042e5702eb5fb4b1df2a57
    domain: climate
    entity_id: c052d32441e63b35925025cf2a8076e4
    type: is_hvac_mode
    hvac_mode: heat
action:
  - repeat:
      sequence:
        - service: climate.set_temperature
          continue_on_error: true
          target:
            entity_id:
              - climate.astro
          data:
            temperature: 64
        - delay:
            hours: 0
            minutes: 3
            seconds: 0
            milliseconds: 0
      until:
        - condition: state
          entity_id: climate.astro
          attribute: temperature
          state: "64"
mode: single

Adding this repeat, i believe, has corrected the failure, this seems to be working for at least the past week consistently. Thank you for your support.

Shredder5262 avatar Jan 20 '24 15:01 Shredder5262

All would be much better if they had a local interface to the thermostat. But alas that's not to be :(

mkmer avatar Jan 20 '24 16:01 mkmer

I talked to an hvac repair man while having my geothermal system serviced the other day and he advised that raising and lowering the temp at night is not good for the water loop on a geo thermal system so in my case I will no longer be using this automation. A fix should still be pursued however in my case it is no longer required.

Shredder5262 avatar Feb 02 '24 04:02 Shredder5262

@home-assistant close

mkmer avatar Feb 25 '24 03:02 mkmer