core: isy994i (pyisy) crashing

The problem

The ISY994i integration is crashing (probably based on some input data from the ISY994 itself, based on the error outout).

Restarting the ISY integration gets it talking until it gets to whatever node it is that it’s trying to pull data from and then it crashes.

Environment

  • Home Assistant Core release with the issue: 0.114.4
  • Last working Home Assistant Core release (if known): Unknown (with this data input)
  • Operating environment (OS/Container/Supervised/Core): HassOS 4.12
  • Integration causing this issue: isy994i
  • Link to integration documentation on our website: https://www.home-assistant.io/integrations/isy994/

Problem-relevant configuration.yaml

logger:
 default: info
 logs:
   pyisy: debug
   homeassistant.components.isy994: debug

Traceback/Error logs

....
2020-09-16 06:46:58 DEBUG (Thread-167) [homeassistant.components.isy994] ISY Node Control Event: 51 1A FB 1 NodeProperty('OL': value='255' prec='0' uom='100' formatted='100%')
2020-09-16 06:46:58 DEBUG (Thread-167) [homeassistant.components.isy994] ISY Updated Node: 51 1A FB 1
2020-09-16 06:46:58 DEBUG (Thread-167) [homeassistant.components.isy994] ISY Node Control Event: 50 BE 48 1 NodeProperty('RR': value='28' prec='0' uom='57' formatted='28')
2020-09-16 06:46:58 DEBUG (Thread-167) [homeassistant.components.isy994] ISY Node Control Event: 50 BE 48 1 NodeProperty('OL': value='255' prec='0' uom='100' formatted='100%')
2020-09-16 06:46:58 DEBUG (Thread-167) [homeassistant.components.isy994] ISY Updated Node: 50 BE 48 1
2020-09-16 06:46:58 ERROR (Thread-167) [root] Uncaught thread exception
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/threading.py", line 932, in _bootstrap_inner
    self.run()
  File "/usr/local/lib/python3.8/threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.8/site-packages/pyisy/events.py", line 220, in watch
    events = event_reader.read_events(POLL_TIME)
  File "/usr/local/lib/python3.8/site-packages/pyisy/eventreader.py", line 53, in read_events
    events.append(body.decode("utf-8"))
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb5 in position 170: invalid start byte

Additional information

I feel like the “pyisy” debug isn’t working, or at least I don’t see anything from the pyisy library. Based on this log, I cannot tell what node is being read when the error comes in.

I can obviously restart the ISY, but really, HA shouldn’t be crashed based on inputs from the ISY.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 42 (16 by maintainers)

Most upvoted comments

done.

Haha. after joining it changed the button to “leave beta channel”. How… convenient.

Give me a few minutes to upgrade and re-test.