core: zha light stops responding to commands

Home Assistant release with the issue:

0.88.1

Last working Home Assistant release (if known): 0.88

Operating environment (Hass.io/Docker/Windows/etc.):

Docker

Component/platform:

zha.light

Description of problem: 2 lights in a group. Both seem to turn on, however when trying to turn them off only one turns off and the following traceback happens. Also noticed this falling out of sync seems to happen when changing color/brightness. Seems like once a light is no longer working a restart of HA will get it going again until this repeats.

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):


Traceback (if applicable):

2019-02-24 20:24:42 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/service.py", line 289, in _handle_service_platform_call
    await getattr(entity, func)(**data)
  File "/usr/src/app/homeassistant/components/zha/light.py", line 206, in async_turn_off
    success = await self._on_off_channel.off()
  File "/usr/src/app/homeassistant/components/zha/core/channels/__init__.py", line 48, in wrapper
    result = await command(*args, **kwds)
  File "/usr/local/lib/python3.7/site-packages/zigpy/device.py", line 89, in request
    expect_reply=expect_reply,
  File "/usr/local/lib/python3.7/site-packages/bellows/zigbee/application.py", line 245, in request
    v = await asyncio.wait_for(reply_fut, timeout)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 423, in wait_for
    raise futures.TimeoutError()
concurrent.futures._base.TimeoutError
2019-02-24 20:46:30 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/service.py", line 289, in _handle_service_platform_call
    await getattr(entity, func)(**data)
  File "/usr/src/app/homeassistant/components/zha/light.py", line 206, in async_turn_off
    success = await self._on_off_channel.off()
  File "/usr/src/app/homeassistant/components/zha/core/channels/__init__.py", line 48, in wrapper
    result = await command(*args, **kwds)
  File "/usr/local/lib/python3.7/site-packages/zigpy/device.py", line 89, in request
    expect_reply=expect_reply,
  File "/usr/local/lib/python3.7/site-packages/bellows/zigbee/application.py", line 245, in request
    v = await asyncio.wait_for(reply_fut, timeout)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 423, in wait_for
    raise futures.TimeoutError()
concurrent.futures._base.TimeoutError
2019-02-24 20:46:32 WARNING (MainThread) [bellows.zigbee.application] Unexpected response TSN=49 command=11 args=[4, <Status.SUCCESS: 0>]
2019-02-24 20:46:41 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/service.py", line 289, in _handle_service_platform_call
    await getattr(entity, func)(**data)
  File "/usr/src/app/homeassistant/components/zha/light.py", line 206, in async_turn_off
    success = await self._on_off_channel.off()
  File "/usr/src/app/homeassistant/components/zha/core/channels/__init__.py", line 48, in wrapper
    result = await command(*args, **kwds)
  File "/usr/local/lib/python3.7/site-packages/zigpy/device.py", line 89, in request
    expect_reply=expect_reply,
  File "/usr/local/lib/python3.7/site-packages/bellows/zigbee/application.py", line 245, in request
    v = await asyncio.wait_for(reply_fut, timeout)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 423, in wait_for
    raise futures.TimeoutError()
concurrent.futures._base.TimeoutError
2019-02-24 20:46:57 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/service.py", line 289, in _handle_service_platform_call
    await getattr(entity, func)(**data)
  File "/usr/src/app/homeassistant/components/zha/light.py", line 206, in async_turn_off
    success = await self._on_off_channel.off()
  File "/usr/src/app/homeassistant/components/zha/core/channels/__init__.py", line 48, in wrapper
    result = await command(*args, **kwds)
  File "/usr/local/lib/python3.7/site-packages/zigpy/device.py", line 89, in request
    expect_reply=expect_reply,
  File "/usr/local/lib/python3.7/site-packages/bellows/zigbee/application.py", line 245, in request
    v = await asyncio.wait_for(reply_fut, timeout)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 423, in wait_for
    raise futures.TimeoutError()
concurrent.futures._base.TimeoutError

Additional information:

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 18 (17 by maintainers)

Most upvoted comments

@Adminiuga I added it here: #21448. I was cleaning up anyway…

@dmulcahey IMO we should be catching asyncio.TimeoutError as well here and maybe log the actual exception too.