core: Ecovacs - component not loading

Home Assistant release with the issue: using HASSIO - 0.81.2

Last working Home Assistant release (if known): Can’t remember if it was 0.79 or if it might have been working in 0.80 (I think 0.80)

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

Component/platform: ecovacs

Description of problem: It appears the setup is taking too long and as a result the component is no loading.

2018-10-31 10:08:56 WARNING (MainThread) [homeassistant.setup] Setup of rainmachine is taking over 10 seconds.
2018-10-31 10:09:05 WARNING (MainThread) [homeassistant.setup] Setup of ecovacs is taking over 10 seconds.
2018-10-31 10:09:15 WARNING (MainThread) [homeassistant.components.vacuum] Setup of platform ecovacs is taking over 10 seconds.
2018-10-31 10:10:05 ERROR (MainThread) [homeassistant.components.vacuum] Setup of platform ecovacs is taking longer than 60 seconds. Startup will proceed without waiting any longer.

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

ecovacs:
  username: email@email.com
  password: **
  country: us
  continent: na

Traceback (if applicable):


Additional information:

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 76 (11 by maintainers)

Most upvoted comments

Sorry, I just haven’t had time personally. I think we’ve waited long enough for a fix to come from SleekXMPP though. I’ll try to get to this soon.

I am happy to report that I have a stopgap fix submitted to the upstream library: https://github.com/wpietri/sucks/pull/67

So, any news about the new version?

No apologies needed; it definitely does not work with Hassio due to a bug in a dependency two levels up. The author of that dependency (SleekXMPP) has submitted changes recently that appear to fix the issue, but has not released a new version that contains the fixes. As soon as they do, we should be able to get a fix cascaded down to Hass.

I have been holding off investigating a way to work around the issue because I really just want the actual root cause to be fixed, but the amount of time we’ve been waiting for that to happen is making be not optimistic that it will happen.

I will look in to SleekXMPP’s license to see if I can publish a temporary new build with the fix until an official one goes up.

Just FYI, I was able to get the Ecovacs component working again by reverting to the dependencies from 0.80. I run in Docker, so a simple Dockerfile with:

FROM homeassistant/home-assistant

RUN pip uninstall -y pyasn1 pyasn1-modules sleekxmpp slixmpp && pip install pyasn1==0.3.7 pyasn1-modules==0.1.5 sleekxmpp==1.3.2 dnspython3==1.15.0

fixes the problem. I’m not sure if reverting will cause problems for other components, but I haven’t noticed any to date.

Sorry, I just haven’t had time personally. I think we’ve waited long enough for a fix to come from SleekXMPP though. I’ll try to get to this soon.

Hi, any news?

I think this is already known, but just to be sure, the most recent updates for Hass.io:

HA: 0.87.0 Supervisor: 143 System: 2.8

Still have the following errors, and the platform still won’t work:

day is out of range for month
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/xmlstream.py", line 1492, in _process
    if not self.__read_xml():
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/xmlstream.py", line 1564, in __read_xml
    self.__spawn_event(xml)
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/xmlstream.py", line 1632, in __spawn_event
    handler.prerun(stanza_copy)
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/handler/callback.py", line 64, in prerun
    self.run(payload, True)
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/handler/callback.py", line 76, in run
    self._pointer(payload)
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/features/feature_starttls/starttls.py", line 64, in _handle_starttls_proceed
    if self.xmpp.start_tls():
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/xmlstream.py", line 889, in start_tls
    cert.verify(self._expected_server_name, self._der_cert)
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/cert.py", line 133, in verify
    not_before, not_after = extract_dates(raw_cert)
  File "/usr/local/lib/python3.6/site-packages/sleekxmpp/xmlstream/cert.py", line 111, in extract_dates
    not_before = datetime.strptime(not_before, '%Y%m%d%H%M%SZ')
  File "/usr/local/lib/python3.6/_strptime.py", line 565, in _strptime_datetime
    tt, fraction = _strptime(data_string, format)
  File "/usr/local/lib/python3.6/_strptime.py", line 528, in _strptime
    datetime_date(year, 1, 1).toordinal() + 1
ValueError: day is out of range for month

Setup of platform ecovacs is taking longer than 60 seconds. Startup will proceed without waiting any longer.

fulljid property deprecated. Use boundjid.resource

I removed the vacuum section, restarted and now HA shows a new vacuum entity 😃 Thanks!!

I don’t have the vacuum: section you have.

Only ecovacs: …

Thanks @OverloadUT - you are awesome!

@h4nc @skynet01 This didn’t make it into 0.92.0, but keep an eye on the release notes for 0.92.1 - failing that it should be included in 0.93.0

Apologies if this is known already but:

Issue persists with Home Assistant 0.85.0, Supervisor V141.