home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
73.29k stars 30.61k forks source link

Multiple Netatmo Homecoaches #22066

Closed erikproper closed 5 years ago

erikproper commented 5 years ago

Home Assistant release with the issue:

0.89.1

Last working Home Assistant release (if known):

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

Linux, manual install

Component/platform:

https://www.home-assistant.io/components/sensor.netatmo/

Description of problem:

I have two Netatmo Home Coaches, as well as a Weather Station with several modules. Since the latest update of HomeAssistant, all Weather Station modules as well as one of the two Home Coaches are discovered. Before that, only the Weather Station modules were recognised

However, as said ... only one of the two Home Coaches show up ...

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

Traceback (if applicable):

Additional information:

monsterciattolo commented 5 years ago

It’s worked for only one day then HA discovers only one Home Coach of 2. Same issue with 0.89.2

matt-from-uk commented 5 years ago

I can confirm this issue. Version 89.2 Hass.io on NUC

Host System: Hostname | hassio System | HassOS 2.10 Deployment | production

Hass.io Supervisor Version | 148 Latest version | 148

Currently have: 1 x Netatmo Weather Station (Outdoor Module, Indoor Module, Rain Gauge) 2 x Netatmo Heathy Home Coach Indoor Modules

Before latest update only the Netatmo Weather Station modules would show. After update the same modules show and also 1 x Healthy Home Coach.

My second Health Home Coach does not show up. Nothing of interest in logs, no errors.

Also - in addition to this issue, now the component allows (or should allow) multiple healthy home coaches and the indoor weather station modules, we need to get the names from Netatmo for the devices as they all currently show named as 'indoor' so it is not possible to check which is which. They all have names assigned in the Netatmo app.

monsterciattolo commented 5 years ago

Today i upgrade HA to 0.90 but only one Netatmo Heathy Home Coach Indoor Modules is found

HA 0.90 in container with QNAP

monsterciattolo commented 5 years ago

Just upgraded to 0.90.1 but same behaviour. Only one netatmo home coach avialable

monsterciattolo commented 5 years ago

Same condition with version 0.91.2. How can I help someone to fix the issue?

jm-cook commented 5 years ago

I have HA 0.91.3. My netatmo has 2 stations. They do not seem to be auto-discovered:

# This doesnt work, nothing discovered, no errors
sensor:
  - platform: netatmo

I can specify a single platform and then the sensors for that are auto-discovered, however I cannot find a way to specify both netatmo stations (if I give multiple "sensor:" lines, only the last one counts.:

# This one works but only one station available
sensor:
  - platform: netatmo
    station: Home
ccorderod commented 5 years ago

Same issue. HA Version 92.2 Hass.io on NUC

arch x86_64
dev false
docker true
hassio true
os_name Linux
python_version 3.7.3
timezone Europe/Madrid
version 0.92.2
virtualenv false

System | Ubuntu 18.04.2 LTS Hass.io Supervisor Version | 162

Currently have: 1 x Netatmo Weather Station (Outdoor Module, 2 Indoor Modules, Rain Gauge, Wind) 3 x Netatmo Heathy Home Coach Indoor Modules

Netatmo Weather Station and all modules found. Only 1 of the Netatmo Home Coach module shows up. Txs.

erikproper commented 5 years ago

It seems that the netatmo homecoach / weather station related modules are not maintained. If this module is indeed orphaned, it would be good to find a new owner. Might need to polish up some python skills myself ;-)

For the moment, I'm using a netatmo -> fhem (www.fhem.de) -> MQTT -> homeassistant work around ...

On Mon, 6 May 2019 at 21:03, ccorderod notifications@github.com wrote:

Same issue. HA Version 92.2 Hass.io on NUC arch x86_64 dev false docker true hassio true os_name Linux python_version 3.7.3 timezone Europe/Madrid version 0.92.2 virtualenv false

System | Ubuntu 18.04.2 LTS Hass.io Supervisor Version | 162

Currently have: 1 x Netatmo Weather Station (Outdoor Module, 2 Indoor Modules, Rain Gauge, Wind) 3 x Netatmo Heathy Home Coach Indoor Modules

Netatmo Weather Station and all modules found. Only 1 of the Netatmo Home Coach module shows up. Txs.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/home-assistant/home-assistant/issues/22066#issuecomment-489736568, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBNLFOV3LU74KHDTOVOJE3PUB6HRANCNFSM4G6X3M6A .

cgtobi commented 5 years ago

@erikproper #24141 might fix that issue.

cgtobi commented 5 years ago

@erikproper @ccorderod Please contact me on Discord if you want to provide test data as I don't have access to HomeCoaches or WeatherStations.

ccorderod commented 5 years ago

@cgtobi discord request sent. thank you.

matt-from-uk commented 5 years ago

@ccorderod , @cgtobi have you guys managed to make any progress?

erikproper commented 5 years ago

Was on holidays. Am back now. Would you still need test data?

On Mon, 10 Jun 2019 at 19:51, mdscarrott notifications@github.com wrote:

@ccorderod https://github.com/ccorderod , @cgtobi https://github.com/cgtobi have you guys managed to make any progress?

— 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/22066?email_source=notifications&email_token=ABBNLFKR24XLCRHREMZL6MTPZ2ICDA5CNFSM4G6X3M6KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXKTXYI#issuecomment-500513761, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBNLFO7HNTCBIH43TUUTVDPZ2ICDANCNFSM4G6X3M6A .

cgtobi commented 5 years ago

I think I'm fine right now since @ccorderod provided a pretty big setup. I'm still working trough it.

maheus commented 5 years ago

@erikproper @mdscarrott your problem maybe is solved by https://github.com/home-assistant/home-assistant/pull/24141 added in 0.94. Do you can test please .

monsterciattolo commented 5 years ago

I installed hass.io 0.94.3 and I have again the same behavior.

erikproper commented 5 years ago

Same here. Only seeing one Homecoach of the two I have.

On Fri, 14 Jun 2019 at 07:54, monsterciattolo notifications@github.com wrote:

I installed hass.io 0.94.3 and I have again the same behavior.

— 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/22066?email_source=notifications&email_token=ABBNLFPBHJBRYXJT4ECDRS3P2MW77A5CNFSM4G6X3M6KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXVZGSI#issuecomment-501977929, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBNLFIXD5LKHIIKG4XTSTTP2MW77ANCNFSM4G6X3M6A .

maheus commented 5 years ago

If the homecoache conf is same than weather station, you must have discovery=false and you must configured tour sensor @erikproper @monsterciattomo

Station

    (string)(Optional)The name of the weather station. Needed if several stations are associated with the account
erikproper commented 5 years ago

@maheus Not sure I understand what you mean

On Fri, 14 Jun 2019 at 08:46, maheus notifications@github.com wrote:

If the homecoache conf is same than weather station, you must have discovery=false and you must configured tour sensor @erikproper https://github.com/erikproper @monsterciattomo

— 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/22066?email_source=notifications&email_token=ABBNLFMDFKYC3RFTEGMBXXTP2M5EBA5CNFSM4G6X3M6KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXV4DPQ#issuecomment-501989822, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBNLFLPGXYXRXVWRGXSFQDP2M5EBANCNFSM4G6X3M6A .

maheus commented 5 years ago

sorry @erikproper if i'm not clear. For me, if you have multiple weather stations or homecoaches . you must have in your conf: configuration.yaml

netatmo:
  api_key: !secret XXXX
  secret_key: !secret YYYY
  username: !secret ZZZZ
  password: !secret WWWW
  discovery: false

and

sensor:
  - platform: netatmo
    station: rdc
    modules:
      indoor:
        - temperature
  - platform: netatmo
    station: etage
    modules:
      indoor:
        - temperature

this is an example for my weather station but i suppose that it is same for homecoaches

erikproper commented 5 years ago

Tried that already in the past. The HomeCoaches don't have modules. However, I tried playing with station/module names, but to no avail. Tried it again today, on the latest HA version. Also didn't work.

On Fri, 14 Jun 2019 at 09:46, maheus notifications@github.com wrote:

sorry @erikproper https://github.com/erikproper if i'm not clear. For me, if you have multiple weather stations or homecoaches . you must have in your conf: configuration.yaml

netatmo: api_key: !secret XXXX secret_key: !secret YYYY username: !secret ZZZZ password: !secret WWWW discovery: false

and

sensor:

  • platform: netatmo station: rdc modules: indoor:
    • temperature
  • platform: netatmo station: etage modules: indoor:
    • temperature

this is an example for my weather station but i suppose that it is same for homecoaches

— 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/22066?email_source=notifications&email_token=ABBNLFIPXQHOLVWDSS2NZWTP2NEEVA5CNFSM4G6X3M6KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXWAAUI#issuecomment-502005841, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBNLFLPYTXOU6CGQY74SULP2NEEVANCNFSM4G6X3M6A .

maheus commented 5 years ago

ok thanks @erikproper . I don't have a HomeCoaches so it is difficult to debug. i think to have found the bug, in smart_home/WeatherStation.py

            for m in self.rawData[i]["modules"]:
                if "module_name" not in m:
                    if m["type"] == "NHC":
                        m["module_name"] = m["station_name"]

i suppose that NHC is for HomeCoaches , but module_name and station_name doesn't exist , Do you can test in replacinig m["module_name"] = m["station_name"] with m["module_name"] = m["name"]

according to the documentation https://dev.netatmo.com/en-US/resources/technical/reference/aircare/gethomecoachsdata, name is "Name the user gave their Healthy Home Coach"

monsterciattolo commented 5 years ago

ok thanks @erikproper . I don't have a HomeCoaches so it is difficult to debug. i think to have found the bug, in smart_home/WeatherStation.py

            for m in self.rawData[i]["modules"]:
                if "module_name" not in m:
                    if m["type"] == "NHC":
                        m["module_name"] = m["station_name"]

i suppose that NHC is for HomeCoaches , but module_name and station_name doesn't exist , Do you can test in replacinig m["module_name"] = m["station_name"] with m["module_name"] = m["name"]

according to the documentation https://dev.netatmo.com/en-US/resources/technical/reference/aircare/gethomecoachsdata, name is "Name the user gave their Healthy Home Coach"

i tried but after that home-assistant doesn't recognize any home coach. i returned back to original.

in my configuration i have 2 home coach named Sala and Camera da letto. HA finds only Camera da letto and not Sala. i enabled the debug

2019-06-14 19:55:44 WARNING (SyncWorker_8) [homeassistant.components.netatmo.sensor] No Weather or HomeCoach devices found for None
2019-06-14 19:55:45 DEBUG (SyncWorker_8) [homeassistant.components.netatmo.sensor] HomeCoachData detected!
2019-06-14 19:55:45 INFO (SyncWorker_8) [homeassistant.components.netatmo.sensor] Netatmo refresh interval reset to 300 seconds
2019-06-14 19:55:45 ERROR (SyncWorker_8) [homeassistant.components.netatmo.sensor] Module name: "Sala" not found
2019-06-14 19:55:45 ERROR (SyncWorker_8) [homeassistant.components.netatmo.sensor] Module name: "Camera da letto" not found
monsterciattolo commented 5 years ago

i did other test on netatmo web site. this is the information of missed NHC so it presents!

body: ▼devices: ▼ _id: "xx:xx:xx:xx:xx:xx" cipher_id: "enc:xxxxxxxxxxxxxxx" date_setup: 1523551484 last_setup: 1523551484 type: "NHC" last_status_store: 1560536475 firmware: 45 last_upgrade: 1523551486 wifi_status: 58 reachable: true co2_calibrating: false station_name: "Sala" ▼data_type: "Temperature" "CO2" "Humidity" "Noise" "Pressure" "health_idx" ►place:[object Object] ►dashboard_data:[object Object] ►user:[object Object] status: "ok" time_exec: 0.05323314666748 time_server: 1560536586

ccorderod commented 5 years ago

Hi. I tried to fix the code a few months ago. The problem is way bigger. @cgtobi is working on it. Give him some time to fix it.

maheus commented 5 years ago

@monsterciattolo do you can test with this config: (replace monitoring conditions if necessary)

sensor:
  - platform: netatmo
    station: Sala
    modules:
      Sala:
        - temperature
  - platform: netatmo
    station: Camera da letto
    modules:
      Camera da letto:
        - temperature

and check log response. I dumped the result of your api export and i transformed it in json for my tests and with this config example i have good results

cgtobi commented 5 years ago

Could someone please test if this fixes the homecoach situation as well? https://github.com/home-assistant/home-assistant/pull/24788

monsterciattolo commented 5 years ago

I followed the @maheus's configuration and i upgraded hass.io to 0.95.3.

- platform: netatmo
  station: Sala
  modules:
    Sala:
      - temperature
      - co2
      - noise
      - humidity
      - wifi_status
      - health_idx
      - pressure
- platform: netatmo
  station: Camera da letto
  modules:
    Camera da letto:
    - temperature
    - co2
    - noise
    - humidity
    - wifi_status
    - health_idx
    - pressure

I'm doing some test and seems both home coach stations are recognized!!!

PS: i don't have any weather station and i get this message in informatio: "No weather station devices found"

maheus commented 5 years ago

Cool , i think that i will does update documentation

matt-from-uk commented 5 years ago

Hi all. I updated to 0.95.4 and tried the code listed above using the name of my NHCs as per the HC app and i still only see the 1 indoor module which is part of my Netatmo Weather Station and 1 Netatmo Home Coach. The second home coach still nowhere to be seen.

Code as i used it was:

sensor:
  - platform: netatmo
    station: Bedroom
    modules:
      Bedroom:
        - temperature
        - co2
        - noise
        - humidity
        - wifi_status
        - health_idx
        - pressure
  - platform: netatmo
    station: Storeroom
    modules:
      Storeroom:
        - temperature
        - co2
        - noise
        - humidity
        - wifi_status
        - health_idx
        - pressure

Edit 1: I meant i updated to 0.95.4 - i have changed in paot Edit 2: I cant seem to get the code to paste properly - sorry

cgtobi commented 5 years ago

Yeah, it’s not fix. I’m working on it.

maheus commented 5 years ago

@mdscarrott, do you can test in adding the weatherstation conf with the nhc conf .

matt-from-uk commented 5 years ago

Okay - I have added in the weather station as requested by @maheus as follows with the same result. Still only one Home Coach showing up with the weather station modules.

Thanks for your reply @cgtobi and your hard work

sensor:
  - platform: netatmo
    station: Bedroom
    modules:
      Bedroom:
        - temperature
        - co2
        - noise
        - humidity
        - wifi_status
        - health_idx
        - pressure
  - platform: netatmo
    station: Storeroom
    modules:
      Storeroom:
        - temperature
        - co2
        - noise
        - humidity
        - wifi_status
        - health_idx
        - pressure
  - platform: netatmo
    station: Hill Farm
    modules:
      Indoor:
        - temperature
        - co2
        - noise
        - humidity
        - wifi_status
        - health_idx
        - pressure
      Outdoor module:
        - temperature
        - humidity
        - wifi_status
        - health_idx
        - pressure
        - battery_vp
        - battery_percent
      Rain Gauge:
        - sum_rain_1
        - sum_rain_24
        - rain
        - wifi_status
        - battery_vp
        - battery_percent
cgtobi commented 5 years ago

The issue is caused by the upstream python module and has been fixed. I'll let you know once its new release is out.

cgtobi commented 5 years ago

For those willing to test, replace smart_home/WeatherStation.py with https://github.com/cgtobi/netatmo-api-python/blob/homecoach_fix/smart_home/WeatherStation.py and let me know if you get any errors.

On hass.io it’s located in /usr/local/lib/python3.7/site-packages/smart_home.

matt-from-uk commented 5 years ago

I would be happy to test but there isn't a smarthome folder in /usr/local/lib/python3.7/site-packages/ on my hass.io.

Home Assistant 95.4 Hass IO Supervisor 167 HassOS 2.12

cgtobi commented 5 years ago

@mdscarrott if you already have Netatmo configured there should be pyatmo.py and smart_home/ in your python site-packages folder. But you probably can just wait for 0.96 beta which should ship tomorrow.

cgtobi commented 5 years ago

@mdscarrott the beta is out, feel free to test.

monsterciattolo commented 5 years ago

I installed on bass.io the beta 0.96.0b0. I had to change the sensor configuration because it was incorrect. I simply leave platform:netatmo and seem work fine but my setup worked also with 0.95.4. Both HCM were recognized fine

cgtobi commented 5 years ago

Yeah, there was a breaking change regarding the config. Should be mentioned in the changlog.

matt-from-uk commented 5 years ago

Hi @cgtobi

I cant find a changelog for 0.96.0b1 to understand what the breaking change is but if i remove the config and only include platform:netatmo i only get 1 Home Coach, 1 Weather Station Rain, 1 Weather Station Outdoor and 1 Weather Station Indoor. I am missing 1 Home Coach still.

cgtobi commented 5 years ago

Hi @mdscarrott

1) Please log into the Netatmo developer page. 2) Then go to Netatmo Air Care - Gethomecoachsdata, click that yellow arrow and hit try it. image 3) Check the results and maybe send me the results via Discord/email/HA-forum

Dulcow commented 5 years ago

Not sure if I should be posting here but I'm running 0.100.2 and I have 2x Netatmo Home Coach stations but I can see only one in Home Assistant (sensor.netatmoindoor*_2). Pyatmo is giving both though:


Checking for available home coach stations...
  Parents Bedroom (70:ee:50:3e:c5:46)
    Modules ['Indoor']
  Baby Bedroom (70:ee:50:26:68:92)
    Modules ['Indoor']
HomeCoach [OK]

I also noticed that the ID of entities is left to some defaults "sensor.netatmoindoor*" for both Weather Station and Home Coach Station despite them having names in my setup (Living Room, Parents Bedroom, Baby Bedroom). It seems to work fine for interior and exterior modules. The friendly names are set to the right values but I override them to save space in the UI.


Checking for available weather stations...
  Villa Astoria (70:ee:50:2c:9d:a4)
   Modules ['Outside', 'Living Room', 'Bathroom']
    Villa Astoria - Outside
      Temperature - 11.6
      Humidity - 79
      min_temp - 11.5
      max_temp - 15
      temp_trend - stable
      rf_status - 69
      battery_vp - 4978
      battery_percent - 57
      reachable - True
    Villa Astoria - Living Room
      Temperature - 22.4
      CO2 - 716
      Humidity - 59
      Noise - 38
      Pressure - 1002.3
      AbsolutePressure - 992.1
      min_temp - 22.4
      max_temp - 22.9
      temp_trend - stable
      pressure_trend - down
      wifi_status - 57
      reachable - True
    Villa Astoria - Bathroom
      Temperature - 21.8
      CO2 - 693
      Humidity - 65
      min_temp - 21.8
      max_temp - 22.5
      temp_trend - stable
      rf_status - 66
      battery_vp - 6170
      battery_percent - 100
      reachable - True
WeatherStation [OK]

Screenshot_3

I don't have any specific in the "configuration.yaml" besides the credentials and sensor platform.

I can open a separate issue/feature request for this if needed ;-)

Cheers,

G.

cgtobi commented 5 years ago

A separate issue would be appreciated. Thanks for reporting. I'll be looking into it.

Dulcow commented 5 years ago

No worries at all, here you go https://github.com/home-assistant/home-assistant/issues/27845 ;-)