Core: Netatmo weatherstation broken in 0.93.1

Created on 20 May 2019  ·  111Comments  ·  Source: home-assistant/core

Home Assistant release with the issue:

Last working Home Assistant release (if known):
I believe it was 0.92 something

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

Component/platform:
https://www.home-assistant.io/components/netatmo/

Description of problem:
Netatmo weatherstation has always worked fine. After updating to 0.93.1 the sensors work for 10ish minutes before crashing. After that, the sensors does not update any longer. It seems from the traceback in the logfile that something crashes in the update.

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

netatmo:
  api_key: !secret netatmo_api_key
  secret_key: !secret netatmo_secret_key
  username: !secret netatmo_email
  password: !secret netatmo_password

Traceback (if applicable):

2019-05-19 23:23:02 ERROR (SyncWorker_8) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for None
2019-05-19 23:30:26 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.netatmo_kjellerstua_humidity is taking over 10 seconds
2019-05-19 23:30:26 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.netatmo_kjellerstua_humidity fails
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/entity.py", line 220, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/app/homeassistant/helpers/entity.py", line 377, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 216, in update
    self.netatmo_data.update()
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 544, in update
    self.station_data = self._detect_platform_type()
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 522, in _detect_platform_type
    station_data = self.data_class(self.auth)
  File "/usr/local/lib/python3.7/site-packages/smart_home/WeatherStation.py", line 23, in __init__
    resp = postRequest(self.urlReq, postParams)
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/local/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1320, in do_open
    r = h.getresponse()
  File "/usr/local/lib/python3.7/http/client.py", line 1321, in getresponse
    response.begin()
  File "/usr/local/lib/python3.7/http/client.py", line 296, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.7/http/client.py", line 257, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/local/lib/python3.7/socket.py", line 589, in readinto
    return self._sock.recv_into(b)
  File "/usr/local/lib/python3.7/ssl.py", line 1052, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/local/lib/python3.7/ssl.py", line 911, in read
    return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

Additional information:

netatmo

Most helpful comment

I’m still having the issue with 0.94.0b3.

All 111 comments

Same for me.

Same issue here. A reboot of HASS solves the problem for a few hours, and than data are not gathered anymore.
Was working fine with 0.92.X, and buggy since the update to 0.93.X

Here is what I get in the log file on my side:

2019-05-19 20:25:04 INFO (SyncWorker_4) [homeassistant.components.netatmo.sensor] Netatmo refresh interval reset to 300 seconds
2019-05-19 20:30:21 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.netatmo_chambre_humidity is taking over 10 seconds
2019-05-19 20:30:21 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.netatmo_chambre_humidity fails
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/entity.py", line 220, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/app/homeassistant/helpers/entity.py", line 377, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 216, in update
    self.netatmo_data.update()
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 544, in update
    self.station_data = self._detect_platform_type()
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 522, in _detect_platform_type
    station_data = self.data_class(self.auth)
  File "/usr/local/lib/python3.7/site-packages/smart_home/WeatherStation.py", line 23, in __init__
    resp = postRequest(self.urlReq, postParams)
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/local/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1320, in do_open
    r = h.getresponse()
  File "/usr/local/lib/python3.7/http/client.py", line 1321, in getresponse
    response.begin()
  File "/usr/local/lib/python3.7/http/client.py", line 296, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.7/http/client.py", line 257, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/local/lib/python3.7/socket.py", line 589, in readinto
    return self._sock.recv_into(b)
  File "/usr/local/lib/python3.7/ssl.py", line 1052, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/local/lib/python3.7/ssl.py", line 911, in read
    return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

(FWIW, I'm using Docker too).

I have not updated in the last couple of weeks, still at 0.92.2 since the day it came out.
Today (like 3 hours ago) my Netatmo also stopped working. Didn't have a chance yet to look into the logs to verify the same footprint as you have, but I have a feeling this is just a hick up at Netatmo side and it has nothing to do with a new release.

@ArnoutVerbeken Interesting! Since no changes to the Netatmo component is mentioned in 0.93.X, you might be right.

It is happening to me too but only by a couple of days.
I have updated to 0.93.x in the weekend but the issue was already here before update.

I have the same issue. On the other side my.netatmo.com works as expected, also MeteoStation win10 app which connects to netatmo services seems to be ok. Maybe something has changed on netatmo servers which affects HA only.

@onlyoneme , I noticed the same last time Netatmo was broken in HA. Netatmo App was working fine, but HA could not connect to the backend. It solved itself after 2 days.
I think Netatmo is doing some infra-changes which causes "downtime" for us.

What is interesting the errors seem to be related to humidity sensors only, but later affect the whole stations.

I'm experiencing the same issue - here's my logs if anyone needs them. Restart of HA solves it for a few hours and then once it crashes - data never resumes. The data in my.netatmo.com looks good.

ha-netatmo.txt

Same for me.

same here ... i had to add discovery: true and comment out sensor allowing discovery to detect the sensors/names ... now working with 0.93.0 venv ubuntu 18.04 on intel Skull Canyon

netatmo:
  api_key: !secret netatmo_api
  secret_key: !secret netatmo_secret 
  username: !secret netatmo_username 
  password: !secret netatmo_password 
  discovery: true

# Netatmo Sensor
#  - platform: netatmo
#    station: "Double LL Ranch"
#    modules:
#      Greenhouse:
#      Shed:
#      UL:
#        - rain
#        - sum_rain_1
#        - sum_rain_24

I also have issues with my Netatmo weather station, but I see this in the log:

Module name: "Wind" not found
10:17 PM components/netatmo/sensor.py (ERROR)
Module name: "Rain" not found
10:17 PM components/netatmo/sensor.py (ERROR)
Module name: "Indoor" not found
10:17 PM components/netatmo/sensor.py (ERROR)
Module name: "Outdoor" not found
10:17 PM components/netatmo/sensor.py (ERROR)
No Weather or HomeCoach devices found for Renvyle
10:17 PM components/netatmo/sensor.py (ERROR)

I wonder have Netatmo changed something

EDIT:

I am also linked to Meteoware Plus. They pushed a bug fix for something that netatmo changed

i saw the same thing ... see my previous post to correct

Well, so far, it is now working for almost a day without any problem.

I have made the suggested change from @bmf7777
I will report back if it works.

Problem here too.

Update for sensor.netatmo_utomhus_entre_temperature fails
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 220, in async_update_ha_state
    await self.async_device_update()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 377, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 216, in update
    self.netatmo_data.update()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 544, in update
    self.station_data = self._detect_platform_type()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 522, in _detect_platform_type
    station_data = self.data_class(self.auth)
  File "/usr/local/lib/python3.7/site-packages/smart_home/WeatherStation.py", line 24, in __init__
    self.rawData = resp["body"]["devices"]
TypeError: 'NoneType' object is not subscriptable

I have the issues , works after reboot. Not reporting after 3 to 20 hours.. Occured after update to 0.93.1

Same for me

I have the same issue Home Assistant throws these two errors and then all sensors from Netatmo stops updating.

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/local/lib/python3.7/urllib/request.py", line 641, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/local/lib/python3.7/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 503: Service Unavailable`

and then:

`Update for sensor.netatmo_loznice_battery fails
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 220, in async_update_ha_state
    await self.async_device_update()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 377, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 216, in update
    self.netatmo_data.update()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 544, in update
    self.station_data = self._detect_platform_type()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 522, in _detect_platform_type
    station_data = self.data_class(self.auth)
  File "/usr/local/lib/python3.7/site-packages/smart_home/WeatherStation.py", line 24, in __init__
    self.rawData = resp["body"]["devices"]
TypeError: 'NoneType' object is not subscriptable

Then after restart of Home Assistant sensors work for around one day and then the same error occurs. I have 0.93.1 version of Hassio running in Docker on x86_64

Finally, after more than 24h, it hang again, no more data fetched.

Same problem here. HA installed in Docker, running 0.93.1. It was the same problem when running 0.93.0 also.

Same here, I have the weather station and outdoor camera. Have noticed since 93.x that sensors stop after a short time. Running Hass.io on Ubuntu Server 18.04

i saw the same thing ... see my previous post to correct

I just changed discovery to true and left the sensors in and so far so good. More than likely jinxed it now :)

i saw the same thing ... see my previous post to correct

I just changed discovery to true and left the sensors in and so far so good. More than likely jinxed it now :)

And I did jinx it. Flatlined again

Tried also with discovery but no luck. It ended again in broken sensors...

Same here since 0.93.1, it works for a couple of hours then stops gathering data

From time to time i get also :

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/local/lib/python3.7/urllib/request.py", line 641, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/local/lib/python3.7/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found

And i could reproduce also on https://api.netatmo.com/api/getstationsdata to get error 404. Seems that API endpoint gets mad these days. But one failed update shouldn't stop everything forever...

I experience all this also and then the system becomes very sluggish. All kinds of add-ons start to misbehave themselves and so on. Memory usage is increasing. Looks like a memory leak, caused by Netatmo.

v0.93.1 on a NUC => Proxmox => Debian Host => Docker => Hassio.
NUC: i7, 32GB RAM

Schermafbeelding 2019-05-22 om 14 58 44

I have also noticed memory usage is increasing proportionally and the the netamo sensors go..

Same deal here. Updated HA to 0.93.1 and after that Netatmo weatherstation stopped working. It's working about 2 hours after reboot and then goes off. I'm running Hassio on ESXi VM.

Same here. Problem started with 0.93 update.

I have the same issue after a day the sensor stops working with the below error.

2019-05-23 07:00:19 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.netatmo_living_room_humidity is taking over 10 seconds
2019-05-23 07:00:19 INFO (LoopEnergy Event Thread) [pyloopenergy.loop_energy] Electricity rate: 0.506
2019-05-23 07:00:19 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.netatmo_living_room_humidity fails
Traceback (most recent call last):
  File "/root/homeassistant/lib/python3.6/site-packages/homeassistant/helpers/entity.py", line 220, in async_update_ha_state
    await self.async_device_update()
  File "/root/homeassistant/lib/python3.6/site-packages/homeassistant/helpers/entity.py", line 377, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/root/homeassistant/lib/python3.6/site-packages/homeassistant/components/netatmo/sensor.py", line 216, in update
    self.netatmo_data.update()
  File "/root/homeassistant/lib/python3.6/site-packages/homeassistant/components/netatmo/sensor.py", line 544, in update
    self.station_data = self._detect_platform_type()
  File "/root/homeassistant/lib/python3.6/site-packages/homeassistant/components/netatmo/sensor.py", line 522, in _detect_platform_type
    station_data = self.data_class(self.auth)
  File "/root/homeassistant/lib/python3.6/site-packages/smart_home/WeatherStation.py", line 23, in __init__
    resp = postRequest(self.urlReq, postParams)
  File "/root/homeassistant/lib/python3.6/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/lib/python3.6/urllib/request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.6/urllib/request.py", line 526, in open
    response = self._open(req, data)
  File "/usr/lib/python3.6/urllib/request.py", line 544, in _open
    '_open', req)
  File "/usr/lib/python3.6/urllib/request.py", line 504, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.6/urllib/request.py", line 1361, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/lib/python3.6/urllib/request.py", line 1321, in do_open
    r = h.getresponse()
  File "/usr/lib/python3.6/http/client.py", line 1331, in getresponse
    response.begin()
  File "/usr/lib/python3.6/http/client.py", line 297, in begin
    version, status, reason = self._read_status()
  File "/usr/lib/python3.6/http/client.py", line 258, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/lib/python3.6/socket.py", line 586, in readinto
    return self._sock.recv_into(b)
  File "/usr/lib/python3.6/ssl.py", line 1012, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/lib/python3.6/ssl.py", line 874, in read
    return self._sslobj.read(len, buffer)
  File "/usr/lib/python3.6/ssl.py", line 631, in read
    v = self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

I am experiencing the same issues:

No Weather or HomeCoach devices found for None

5:01 PM components/netatmo/sensor.py (ERROR)

ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.netatmo_inside_temperature fails
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 220, in async_update_ha_state
    await self.async_device_update()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 377, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 216, in update
    self.netatmo_data.update()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 544, in update
    self.station_data = self._detect_platform_type()
  File "/usr/local/lib/python3.7/site-packages/homeassistant/components/netatmo/sensor.py", line 522, in _detect_platform_type
    station_data = self.data_class(self.auth)
  File "/usr/local/lib/python3.7/site-packages/smart_home/WeatherStation.py", line 24, in __init__
    self.rawData = resp["body"]["devices"]
TypeError: 'NoneType' object is not subscriptable

I am not able to reproduce the errors, but some of the errors reported here should be fixed by: https://github.com/jabesq/netatmo-api-python/pull/50
https://github.com/jabesq/netatmo-api-python/pull/51

Still have the issue with 0.93.2.

2019-05-24 02:00:48 ERROR (SyncWorker_17) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for HOME
2019-05-24 02:00:48 ERROR (SyncWorker_17) [homeassistant.components.netatmo.sensor] Module name: "Indoor" not found
2019-05-24 02:00:48 ERROR (SyncWorker_17) [homeassistant.components.netatmo.sensor] Module name: "Outdoor" not found
2019-05-24 02:00:48 ERROR (SyncWorker_14) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for None

The fix is not part of HA yet. Waiting for a new release of https://github.com/jabesq/netatmo-api-python

@Danielhiversen there it is ;)

Just a quick question regarding the update process: are issues always closed even though the fix hasn't been released yet? I finally downgraded to get my weather station running again, but to let Home Assistant become more user friendly for non-techies, especially the process of fixing integrations could be a bit more transparent in my eyes.

The issue is auto closed when the pull request is merged.
You will see the fix the release note

Hi everyone, I think this issue is related to the http service unavailable error. The WeatherStation.py crashes because it calls the /smart_home/__init__.py, and if the netatmo server are not available, the __init__.py return an object None without crashing (because it is managed by a "try - except" routine). BUT, the WeatherStation.py crashes on line line 24, because the object None is not allowed. So I'm trying this change to prevent WeatherStation.py to crash:

        resp = postRequest(self.urlReq, postParams)
        if resp==None:
            print("Service temporary unavailable")
            return 
        self.rawData = resp["body"]["devices"]

I will let you know if it will solve this issue.

I’m still having the issue with 0.94.0b3.

So then it should not be closed, right?

Indeed, but I don't have more information from the logs to provide.

Same here, I've updated to latest beta version but problem still occurs

Hi everyone, I think this issue is related to the http service unavailable error. The WeatherStation.py crashes because it calls the /smart_home/init.py, and if the netatmo server are not available, the init.py return an object None without crashing (because it is managed by a "try - except" routine). BUT, the WeatherStation.py crashes on line line 24, because the object None is not allowed. So I'm trying this change to prevent WeatherStation.py to crash:

        resp = postRequest(self.urlReq, postParams)
        if resp==None:
            print("Service temporary unavailable")
            return 
        self.rawData = resp["body"]["devices"]

I will let you know if it will solve this issue.

Almost 24 hours without problems with netatmo data update. So I can confirm, the problem was the "None" object

@ferdinandovivacqua That should already be fixed: https://github.com/jabesq/netatmo-api-python/commit/cdeaab66b2e47e400f0112977fca87af16592eeb
and part of the latest version of HASS

@danielhiversen I still have the issue with latest beta image. My sensors are lost after a couple of hours. Which image the fix is included into? Thanks

It should be included in 0.94.0b1 I think. Please contact me on Discord or the forum if possible.

So, can I do something upfront to fix the bug for me with 0.93.2?
I have some more automations based on temperature, humidity and noiselevel.
That 0.94.x comes out can take a while and after the experience with 92.0 I would prefer to wait some days and see if breaking changes not lead to massive issues. :-)

@cgtobi I tried with 0.94b6 and the problem was not fixed. I had to revert to 0.92.2
Sorry I can't contact you on discord or the forum for the moment (everything is blocked @work)

In the meantime, you can try the fix I suggested some posts before. It is
only an if-then instruction

Il mar 4 giu 2019, 09:15 Ben notifications@github.com ha scritto:

@cgtobi https://github.com/cgtobi I tried with 0.94b6 and the problem
was not fixed. I had to revert to 0.92.2
Sorry I can't contact you on discord or the forum for the moment
(everything is blocked @work https://github.com/work)


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4DHI4ESGAVKS65TI2DPYYI75A5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW3UUDA#issuecomment-498551308,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4C7GP7V66AETABPQJDPYYI75ANCNFSM4HN6VLRA
.

Ok, I created a weather modus select (OWM - Netatmo) to switch the information base for my automations.
So I'm independent from the final solution.

I have the same issue.
@ferdinandovivacqua where should I write the code you posted?
I am new to hass.io.

Hi everyone, I think this issue is related to the http service unavailable error. The WeatherStation.py crashes because it calls the /smart_home/init.py, and if the netatmo server are not available, the init.py return an object None without crashing (because it is managed by a "try - except" routine). BUT, the WeatherStation.py crashes on line line 24, because the object None is not allowed. So I'm trying this change to prevent WeatherStation.py to crash:

        resp = postRequest(self.urlReq, postParams)
        if resp==None:
            print("Service temporary unavailable")
            return 
        self.rawData = resp["body"]["devices"]

I will let you know if it will solve this issue.

Almost 24 hours without problems with netatmo data update. So I can confirm, the problem was the "None" object

You modified the package pyatmo 1.11 ? Because on 1.12 this is already done and I'm using it now but still have the issue !

OK. So there is still no solution or work around?
I am also running Stringify. Stringify has no problems retrieving data from Netatmo.

I also added;

   if resp==None:
        print("Service temporary unavailable")
        return

but still have the same issue.

Yes, I've just replaced print function with raise instruction, since there
also other error from netatmo connection

Il mer 5 giu 2019, 14:50 d33pc0re notifications@github.com ha scritto:

I also added;
if resp==None: print("Service temporary unavailable") return
but still have the same issue.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4DEIAYFVFWV4GDFYHLPY6ZBJA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7S7NY#issuecomment-499068855,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4EHASJ2HZP2O7VCCZLPY6ZBJANCNFSM4HN6VLRA
.

I recommend to reopen this issue or open a new one. It seems, that this issue is everything else but not solved

Was this issue closed?!

Il mer 5 giu 2019, 14:54 Pirol62 notifications@github.com ha scritto:

I recommend to reopen this issue or open a new one. It seems, that this
issue is everything else but not solved


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4GSJEFEA6PDJWE43A3PY6ZP7A5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7TKAY#issuecomment-499070211,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4CQT26M27FMXDT25D3PY6ZP7ANCNFSM4HN6VLRA
.

Yes, I've just replaced print function with raise instruction, since there also other error from netatmo connection Il mer 5 giu 2019, 14:50 d33pc0re notifications@github.com ha scritto:

I also added; if resp==None: print("Service temporary unavailable") return but still have the same issue. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#24002?email_source=notifications&email_token=AKUOK4DEIAYFVFWV4GDFYHLPY6ZBJA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7S7NY#issuecomment-499068855>, or mute the thread https://github.com/notifications/unsubscribe-auth/AKUOK4EHASJ2HZP2O7VCCZLPY6ZBJANCNFSM4HN6VLRA .

Like this?

if resp==None:
raise Exception("Service temporary unavailable")
return

Yes or you can write raise RuntimeError('Service non available')

Il mer 5 giu 2019, 14:59 d33pc0re notifications@github.com ha scritto:

Yes, I've just replaced print function with raise instruction, since there
also other error from netatmo connection Il mer 5 giu 2019, 14:50 d33pc0re
[email protected] ha scritto:
… <#m_-3315261243618670812_>
I also added; if resp==None: print("Service temporary unavailable") return
but still have the same issue. — You are receiving this because you were
mentioned. Reply to this email directly, view it on GitHub <#24002
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4DEIAYFVFWV4GDFYHLPY6ZBJA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7S7NY#issuecomment-499068855>,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4EHASJ2HZP2O7VCCZLPY6ZBJANCNFSM4HN6VLRA
.

Like this?

if resp==None:
raise Exception("Service temporary unavailable")
return


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4HN76HENTL34MZQXZ3PY62CVA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7TXUI#issuecomment-499071953,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4BQYHF7VB5SKEDQR5TPY62CVANCNFSM4HN6VLRA
.

Yes or you can write raise RuntimeError('Service non available') Il mer 5 giu 2019, 14:59 d33pc0re notifications@github.com ha scritto:

Yes, I've just replaced print function with raise instruction, since there also other error from netatmo connection Il mer 5 giu 2019, 14:50 d33pc0re @.* ha scritto: … <#m_-3315261243618670812_> I also added; if resp==None: print("Service temporary unavailable") return but still have the same issue. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#24002 <#24002>?email_source=notifications&email_token=AKUOK4DEIAYFVFWV4GDFYHLPY6ZBJA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7S7NY#issuecomment-499068855>, or mute the thread https://github.com/notifications/unsubscribe-auth/AKUOK4EHASJ2HZP2O7VCCZLPY6ZBJANCNFSM4HN6VLRA . Like this? if resp==None: raise Exception("Service temporary unavailable") return — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#24002?email_source=notifications&email_token=AKUOK4HN76HENTL34MZQXZ3PY62CVA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7TXUI#issuecomment-499071953>, or mute the thread https://github.com/notifications/unsubscribe-auth/AKUOK4BQYHF7VB5SKEDQR5TPY62CVANCNFSM4HN6VLRA .

Thanks, will give it a try! :)

Was this issue closed?! Il mer 5 giu 2019, 14:54 Pirol62 notifications@github.com ha scritto:

I recommend to reopen this issue or open a new one. It seems, that this issue is everything else but not solved — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#24002?email_source=notifications&email_token=AKUOK4GSJEFEA6PDJWE43A3PY6ZP7A5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW7TKAY#issuecomment-499070211>, or mute the thread https://github.com/notifications/unsubscribe-auth/AKUOK4CQT26M27FMXDT25D3PY6ZP7ANCNFSM4HN6VLRA .

image

;-)

Hello, one thing that has been changed from working HA (0.91.4) are these lines:

MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=5)
MIN_TIME_BETWEEN_EVENT_UPDATES = timedelta(seconds=5)

They were:

MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=10)
MIN_TIME_BETWEEN_EVENT_UPDATES = timedelta(seconds=10)

Could it be that Netatmo servers ban requests that are being sent too often? I found some info from Netatmo API notes that back this up:

I know that this applies to Webhooks but maybe Netatmo has something similar concerning this issue:

"If you stopped receiving events abruptly while there are still events happening in the user's Home it is probably because your webhook has been banned. After 5 failures in the course of one hour, webhooks get banned and Netatmo server will stop sending events for the next 24h".

I just downgraded my HA to working setup. My automations etc. rely on Netatmo CO2 / Temperatures etc.

Is this in the 0.94 release? I cannot see it in the change log.

0.93.2 - it seems that the inside module delivers right values and works.
Outside values (Temperatue, rain, wind) are not working.

@reprz The weird thing is that if it's a rate limit, restarting HA should not fix the problem.
I've updated to 0.94 and reverted the value you describe. I will let you know if the problem disappears.

@Curtisjk Yes it is in 0.94

Anyone have the issue fixed with 0.94 ?

At the moment I just reverted values of update to 10 minutes. Running since 4 hours without problem. This is too early to say it is fixed. But I think this is the longest working state I had since weeks !
Still on 0.93.2

@bend I updated to 0.94 and haven't had data stop in around 3.5 hours. I will see how it goes. I did however get the following errors when HA started:

019-06-06 18:41:33 WARNING (SyncWorker_9) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for Venture Chase 2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Lounge" not found 2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Bedroom" not found 2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Outside" not found 2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Rain" not found 2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Wind" not found

@Curtisjk I still see errors with the netatmo component however it seems to recover now (which was not the case before). The values seems to be synchronized between HA and netatmo app. So far so good (more than 6 hours since I've updated). Hope 0.94 fixed the issue (without having to change the update interval).
Will keep you posted anyway.

@bend I have kept the update interval to 5 minutes. I'm sure I found a previous thread about how 5 minutes should be fine because it's only a single dedicated api key polling every 5 minutes. The Netatmo API rate limiting is built for handling data for many users from a single key (i.e. potentially 1000s of requests)

@Curtisjk Yes indeed:
50 requests every 10 seconds
500 requests every hour
However, I tried the 0.9b4 and I still got the issue (however not sure that the fix was already included).
I think netatmo is also having a lot of issues with their Apis lately. It is not normal to have that much errors on their side.

I see this in my logs (repeated a couple of times in a row):

2019-06-06 23:42:06 INFO (SyncWorker_6) [root] Sending control command: KEY
2019-06-06 23:42:15 ERROR (SyncWorker_4) [smart_home] Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/local/lib/python3.7/urllib/request.py", line 641, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/local/lib/python3.7/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden

I guess it's a problem on netatmo side. When I query the API with CURL I get the following:
{"error":{"code":13,"message":"Application does not have the good scope rights"}}%

This morning loading data has stopped. I have the following in my logs:

2019-06-06 18:41:33 WARNING (SyncWorker_9) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for Home
2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Lounge" not found
2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Bedroom" not found
2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Outside" not found
2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Rain" not found
2019-06-06 18:41:33 ERROR (SyncWorker_9) [homeassistant.components.netatmo.sensor] Module name: "Wind" not found
2019-06-07 07:01:51 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.netatmo_bedroom_radio is taking over 10 seconds
2019-06-07 07:01:51 ERROR (SyncWorker_7) [smart_home] Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/local/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1320, in do_open
    r = h.getresponse()
  File "/usr/local/lib/python3.7/http/client.py", line 1321, in getresponse
    response.begin()
  File "/usr/local/lib/python3.7/http/client.py", line 296, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.7/http/client.py", line 257, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/local/lib/python3.7/socket.py", line 589, in readinto
    return self._sock.recv_into(b)
  File "/usr/local/lib/python3.7/ssl.py", line 1052, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/local/lib/python3.7/ssl.py", line 911, in read
    return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

2019-06-07 07:01:51 WARNING (SyncWorker_7) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for Home

@Curtisjk The sensor should recover. I have the same errors in my logs but it recovers on the next update. When was the last update ?

@bend The last sensor data was 06:51. This error occurred at 07:01.

I have seen that there is an ongoing PR with Netatmo stability being the focus https://github.com/home-assistant/home-assistant/pull/24190

I think there are some network problem with netatmo api. So, maybe the
final solution is a better handling of these errors in home assistant,
preventing the crashing of sensor update. Just because there is some python
script that suddenly stop itself after this error, and it is confirmed by
the fact that restarting the home assistant all sensors data become
available again

Il ven 7 giu 2019, 10:55 Curtis Kennington notifications@github.com ha
scritto:

@bend https://github.com/bend The last sensor data was 06:51. This
error occurred at 07:01.

I have seen that there is an ongoing PR with Netatmo stability being the
focus #24190 https://github.com/home-assistant/home-assistant/pull/24190


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4HXNNV7HLW3JJWNLR3PZIPBXA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXFH52A#issuecomment-499810024,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4CT3KMJHAHLQF2B2VTPZIPBXANCNFSM4HN6VLRA
.

@Curtisjk Thanks for the link. I will look at it

I'm getting this error and all my Netatmo sensors stop working until restart. Running 0.94.0 on hass.io, guess we'll have to wait for a Netamo fix?

same here, no weather sensors no camera

Running without a problem now for 36h on 0.94.

Stopped working on 0.94.0 after 36 hours. That's a lot better than 0.93 that stopped working after 2-8 hours.

@magfro What’s the error?

I am running 94.1 and I get the below error after an hour or so.

2019-06-10 10:00:25 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.netatmo_living_room_max_temp is taking over 10 seconds
2019-06-10 10:00:25 ERROR (SyncWorker_10) [smart_home] Traceback (most recent call last):
  File "/root/homeassistant/lib/python3.6/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/lib/python3.6/urllib/request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.6/urllib/request.py", line 526, in open
    response = self._open(req, data)
  File "/usr/lib/python3.6/urllib/request.py", line 544, in _open
    '_open', req)
  File "/usr/lib/python3.6/urllib/request.py", line 504, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.6/urllib/request.py", line 1361, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/lib/python3.6/urllib/request.py", line 1321, in do_open
    r = h.getresponse()
  File "/usr/lib/python3.6/http/client.py", line 1331, in getresponse
    response.begin()
  File "/usr/lib/python3.6/http/client.py", line 297, in begin
    version, status, reason = self._read_status()
  File "/usr/lib/python3.6/http/client.py", line 258, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/lib/python3.6/socket.py", line 586, in readinto
    return self._sock.recv_into(b)
  File "/usr/lib/python3.6/ssl.py", line 1012, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/lib/python3.6/ssl.py", line 874, in read
    return self._sslobj.read(len, buffer)
  File "/usr/lib/python3.6/ssl.py", line 631, in read
    v = self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

2019-06-10 10:00:25 WARNING (SyncWorker_10) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for None
2019-06-10 10:00:31 INFO (LoopEnergy Event Thread) [pyloopenergy.loop_energy] Electricity rate: 0.537
2019-06-10 10:00:35 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.netatmo_man_cave_battery_percent is taking over 10 seconds
2019-06-10 10:00:35 ERROR (SyncWorker_6) [smart_home] Traceback (most recent call last):
  File "/root/homeassistant/lib/python3.6/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/lib/python3.6/urllib/request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.6/urllib/request.py", line 526, in open
    response = self._open(req, data)
  File "/usr/lib/python3.6/urllib/request.py", line 544, in _open
    '_open', req)
  File "/usr/lib/python3.6/urllib/request.py", line 504, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.6/urllib/request.py", line 1361, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/lib/python3.6/urllib/request.py", line 1321, in do_open
    r = h.getresponse()
  File "/usr/lib/python3.6/http/client.py", line 1331, in getresponse
    response.begin()
  File "/usr/lib/python3.6/http/client.py", line 297, in begin
    version, status, reason = self._read_status()
  File "/usr/lib/python3.6/http/client.py", line 258, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/lib/python3.6/socket.py", line 586, in readinto
    return self._sock.recv_into(b)
  File "/usr/lib/python3.6/ssl.py", line 1012, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/lib/python3.6/ssl.py", line 874, in read
    return self._sslobj.read(len, buffer)
  File "/usr/lib/python3.6/ssl.py", line 631, in read
    v = self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

2019-06-10 10:00:35 WARNING (SyncWorker_6) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for None

Same here 0.94.1 , stops working about an hour after restart.

Very Strange, new Home Assistant Setup (Hass.io on Unraid), can't get Netamo Sensors to show up, they won't even connect. This is not fixed...

No Weather or HomeCoach devices found for None
7:33 PM components/netatmo/sensor.py (WARNING) - message first occured at 7:33 PM and shows up 2 times
Module name: "Wohnzimmer" not found
7:33 PM components/netatmo/sensor.py (ERROR)
Module name: "schlafzimmer" not found
7:33 PM components/netatmo/sensor.py (ERROR)
Module name: "Outdoor" not found
7:33 PM components/netatmo/sensor.py (ERROR)

while on my old Setup (without hass.io, running on 0.93.2) it works fine.

I'm pretty sure the next beta will ship with #24190 along with a new release of pyatmo. We are still looking into the multiple errors. This issue was automatically closed by PR #24088. I'll reopen since it still is an issue.

Have been experiencing the identical issue since 0.94.x upgrading to 0.94.2 now will see if anything changes and advise if stable for more than a few hours. Traceback below:-

Tue Jun 11 2019 15:45:18 GMT+1000 (Australian Eastern Standard Time)
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/local/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1320, in do_open
    r = h.getresponse()
  File "/usr/local/lib/python3.7/http/client.py", line 1321, in getresponse
    response.begin()
  File "/usr/local/lib/python3.7/http/client.py", line 296, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.7/http/client.py", line 257, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/local/lib/python3.7/socket.py", line 589, in readinto
    return self._sock.recv_into(b)
  File "/usr/local/lib/python3.7/ssl.py", line 1052, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/local/lib/python3.7/ssl.py", line 911, in read
    return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

configuration.yaml

netatmo:
  api_key: !secret netatmo_api_key
  secret_key: !secret netatmo_secret_key
  username: !secret netatmo_username
  password: !secret netatmo_password
  discovery: false

Same issue here:

2019-06-11 20:15:43 WARNING (MainThread) [homeassistant.helpers.entity] Update of climate.netatmo_arbeitszimmer is taking over 10 seconds
2019-06-11 20:15:43 ERROR (SyncWorker_15) [smart_home] Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/smart_home/__init__.py", line 39, in postRequest
    if params
  File "/usr/local/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/local/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/usr/local/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/local/lib/python3.7/urllib/request.py", line 1320, in do_open
    r = h.getresponse()
  File "/usr/local/lib/python3.7/http/client.py", line 1321, in getresponse
    response.begin()
  File "/usr/local/lib/python3.7/http/client.py", line 296, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.7/http/client.py", line 257, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/local/lib/python3.7/socket.py", line 589, in readinto
    return self._sock.recv_into(b)
  File "/usr/local/lib/python3.7/ssl.py", line 1052, in recv_into
    return self.read(nbytes, buffer)
  File "/usr/local/lib/python3.7/ssl.py", line 911, in read
    return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out
2019-06-11 20:15:43 ERROR (SyncWorker_15) [homeassistant.components.netatmo.climate] Error when getting homestatus.

Thanks for reporting but there is no point in reposting the same error again and again.

@rosch100 @chiefcomm
if you are impatient added this in components/netatmo/sensor.py

@@ -530,6 +530,12 @@
                             str(self.station)
                             )
             raise
+        except TypeError as e:
+            _LOGGER.warning("Type Error, type error: {}".format(e))
+            _LOGGER.error(traceback.format_exc())
+        except:
+            _LOGGER.warning("general exception")
+            _LOGGER.error(traceback.format_exc())

it is not very elegant but it is functional

@cgtobi, pyatmo is upgrated to 1.12 with homeassistant 0.94.2

pyatmo 1.13 is on its way and a few netatmo related changes should ship with 0.95

Reading the logs, I think the problem is in the init.py of smart_home, instead of pyatmo.

init.py of smart_home is part of pyatmo....

in addition , the error is 'normal' if the netatmo api not responding. But the sensor should not stop works .

I think the errors reported here should be fixed by https://github.com/home-assistant/home-assistant/pull/24190 and pyatmo 1.13

init.py of smart_home is part of pyatmo....

You are right, ... I was thinking to pyatmo.py script

Hi, for whoever it is interesting:
I’m still on 93.2 and my Netatmor works for 20 hours.
Before the change not longer than 2 hours
What I did:
inspired by Phil Hawthorne I created some sensors in order to track the availability of my components.
So I searched for Netatmo_personal_weather_station in known_devices and set the tracking to true.
then I created a template sensor, which translates the home/not_home to Online/Offline.
That’s it. Since then, the Netatmo workes without problems.

I believe, that the sensor/tracker etablished a permanent ping which keeps “the line open”
That avoids, that the netatmo shuts down the communication channel and caused the break.

Maybe that helps a little until 0.95 is out

With the latest #24190 i can say it's looks like fixed !
Now i have 48 hours of history without any "flat line" !
Great job @Danielhiversen & @cgtobi 👍
netatmo_fixed

Well this is weird. After upgrading HA to 0.94.3 my Netatmo Weatherstation problems are gone. I thought that the actual working fix should be included in 0.95. Nearly 48h without even errors in log.

I'm not sure if that's linked somehow, but I have some sensors which disappeared with 0.94.3:

Entity not available: sensor.netatmo_outdoor_radio
Entity not available: sensor.netatmo_indoor_wifi

I'm not sure the bug is fixed. Even if I'm using the 0.93.2, I've updated
the pyatmo to version 2.0, and after more or less 48 hours, the updating
process stopped again, with the new error message coming from the library
("Netatmo API...")

Il sab 15 giu 2019, 23:21 SNoof85 notifications@github.com ha scritto:

With the latest #24190
https://github.com/home-assistant/home-assistant/pull/24190 i can say
it's looks like fixed !
Now i have 48 hours of history without any "flat line" !
Great job @Danielhiversen https://github.com/Danielhiversen & @cgtobi
https://github.com/cgtobi 👍
[image: netatmo_fixed]
https://user-images.githubusercontent.com/25659602/59556511-fa2a9480-8fc3-11e9-8996-d856870c1613.png


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/24002?email_source=notifications&email_token=AKUOK4FFIK5LOCZEO6PWS4TP2VMNXA5CNFSM4HN6VLRKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXZAJ6I#issuecomment-502400249,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKUOK4BHXKORHMATMM2DMJTP2VMNXANCNFSM4HN6VLRA
.

You have to apply this fix #24190 or wait for 0.95

Or establish the solution I described above.
My Netatmo runs now since 3 days

I can confirm the bug is fixed with the new library and new ...sensor.py.
Thank you

Upgraded to 0.95.0b1 and get the following error:

No Weather or HomeCoach devices found for None

Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/entity_platform.py", line 126, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 416, in wait_for
    return fut.result()
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 143, in setup_platform
    config.get(CONF_STATION)))
  File "/usr/src/app/homeassistant/components/netatmo/sensor.py", line 190, in __init__
    self._module_type = self.netatmo_data. \
AttributeError: 'NoneType' object has no attribute 'moduleByName'

@WhistleMaster can you please open a new issue along with your config?
As far as I can tell right now this error happens when no device is detected or at least not the one you configured.

Was this page helpful?
0 / 5 - 0 ratings