Le package NetAtmo permet de connecter votre station météo NetAtmo dans Constellation.

La version actuelle du package ne gère que les stations météo et modules associées et non les autres objets NetAtmo tel que le thermostat ou la caméra Welcome.

image

Le code source de ce package est en ligne sur : https://github.com/myconstellation/constellation-packages/tree/master/NetAtmo

Installation

Prérequis : créer une application NetAtmo

Pour pouvoir utiliser le service NetAtmo vous devez créer un compte développeur sur : https://dev.netatmo.com/

image

Une fois inscrit, créer une application en cliquant sur “Create an app” :

image

Entrez les informations pour votre connecteur :

image

Puis en enregistrant, vous obtiendrez un peu plus bas sur cette page, le “Client ID” et “Client Secret” de votre application NetAtmo qui servira pour la configuration du package Constellation :

image

Installation du package Constellation

Depuis le “Online Package Repository” de votre Console Constellation, déployez le package NetAtmo :

image

Une fois le package télécharger votre repository local, sélectionnez la sentinelle sur laquelle déployer le package.

Pour finir, sur la page de Settings, vous devez définir différents paramètres :

  • Netatmo.ClientId : le “Client ID” de votre application NetAtmo créée précédemment
  • Netatmo.ClientSecret : le “Client Secret” de votre application NetAtmo créée précédemment
  • Netatmo.Username : votre utilisateur NetAtmo
  • Netatmo.Password : votre mot de passe NetAtmo pour l’utilisateur utilisé

image

Vous pouvez aussi redéfinir le setting “RefreshInterval” qui représente l’intervalle de temps en seconde de rafraichissement des données de votre station météo sur le service NetAtmo. Par défaut ce paramètre est fixé à 300 secondes soit 5 minutes. Notez par ailleurs que votre station météo NetAtmo remonte ses mesures toutes les 5 minutes.

Bien entendu vos  pouvez également déployer ce package manuellement dans la configuration de votre Constellation :

Détails du package

Les Settings

Nom Type Détail Description
Netatmo.ClientId String Obligatoire Client ID de l’application NetAtmo associée
Netatmo.ClientSecret String Obligatoire Client Secret de l’application NetAtmo associée
Netatmo.Username String Obligatoire Nom d’utilisateur du compte NetAtmo
Netatmo.Password String Obligatoire Mot de passe de l’utilisateur NetAtmo
RefreshInterval Int32 Optionnel
Par défaut : 300
Intervalle de temps en seconde d’interrogation du service NetAtmo

Les StateObjects

Vous retrouverez autant de StateObjects que vous avez de mesures pour chaque modules connectés à votre station. Ces StateObjects sont mis à jour pour l’intervalle défini dans la configuration (toutes les 5 minutes par défaut).

Par exemple

Nom Type Description
<< nom de la station >>.Info NetAtmo.Device Description de la station NetAtmo (IP, firmware, modules attachés, qualité du Wifi, etc..)
<< nom du module>>.Info NetAtmo.Module Description du module NetAtmo (ID, firmware, état RF, niveau de batterie, etc..)
<< nom du module/station>>.Temperature NetAtmo.TemperatureMeasurement Mesure de la température
<< nom du module/station>>.Humidity NetAtmo.HumidityMeasurement Mesure de l’humidité relative
<< nom du module/station>>.Rain NetAtmo.RainMeasurement Mesure de la pluie
<< nom du module/station>>.CarbonDioxide NetAtmo.CarbonDioxideMeasurement Mesure du CO²
<< nom du module/station>>.Noise NetAtmo.NoiseMeasurement Mesure du niveau sonore
<< nom du module/station>>.Pressure NetAtmo.PressureMeasurement Mesure de la pression atmosphérique

image

Les MessageCallbacks

Ce package n’expose pas de MessageCallback.

Quelques exemples

  • Notifier l’utilisateur si il pleut alors qu’une fenetre est restée ouverte
  • Afficher les mesures des modules NetAtmo dans une application graphique pour Windows (WPF)
  • Afficher la qualité de l’air sur une matrice de LED pilotée par un Arduino/ESP
  • Piloter le thermostat Nest depuis une autre pièce en fonction de la température d’un module NetAtmo
NetAtmo : vos capteurs NetAtmo dans votre Constellation
Editer la page sur GitHub
Étiqueté avec :                            

Sur le forum :

  1. Bonjour,
    Je viens de me prendre une station météo netatmo (merci les soldes à 50%) et je l’ai installer sur mon service domotique créé autour de myconstellation.
    Dans le principe tout à marché nickel.
    Cependant je ne vois pas d’information dans les States objects sur le temps (symbolisé par un icone : soleil, nuage etc) je voulais savoir si je pouvais modifier le package d’origine ou si je devais le recréer moi même ?

    Merci pour toute votre aide.

    Johann

  2. Bonjour Johann,

    Ces informations ne sont pas “mesurées” par ta station ni misent à disposition sur l’API Netatmo, donc irrécupérable par le package !

    Il s’agit simplement d’information quant aux prévisions et conditions actuelles métrologique affichées directement dans l’application mobile pour ajouter du contenu et enrichir l’XP utilisateur!

    Tu peux cependant ajouter ces informations dans ta Constellation avec un package comme “Forecast IO” disponible sur le store, qui te donnera les conditions actuelles et prévision à 8 jours.

    A+

  3. Salut Sébastien,
    bon je me suis douté de la réponse en validant mon message et bon je vais faire ce que tu préconise en récupérant un autre package météo.

    Bon demain est le grand jour pour moi et ce qui ma donner envie de monter mon système domotique : google assistant…
    Je vais donc voir comment intégré tous ça à constellation.

    Bonne journée à tous.

    Johann

  4. Bonjour Sebastien,

    Tout d’abord, bravo pour ce magnifique projet et la quantité de travail impressionante que cela représente.

    Je viens d’installer une sentinelle et le package “Netatmo” sur un raspberry pi 3 (raspbian). Tout se passe bien jusqu’au moment où le package tente de récupérer les mesures depuis l’API de Netatmo. Il semblerait qu’il y ait une dépendance manquante :

    [constellation/NetAtmo] 7:27:22 PM : Getting NetAtmo measurements
    [constellation/NetAtmo] 7:27:22 PM : Error while getting NetAtmo measurements : System.IO.FileNotFoundException: Could not load file or assembly or one of its dependencies.
    File name: 'System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
      at NetAtmo.Program.OnStart () [0x0004e] in :0

    Il s’agit certainement d’un problème lié à Mono. La version installée par l’installeur est la 4.6.2.

    As-tu déjà rencontré ce type de soucis ?

  5. Bonjour Fabien,

    En effet, il peut y avoir des problèmes sur Mono! J’ai écris la majeure partie des packages pour fonctionner sur mes sentinelles Windows et je n’ai pas tout testé sur Mono !

    La prochaine version de la Console permettra d’indiquer les compatibilités entre package & sentinelle (courant Janvier).

    De plus je compte aussi revoir tous mes packages pour tester et tenter de corriger leurs fonctionnement sous Mono/Linux. La plupart du temps il s’agit de petit détail simple à régler !

    Dans ton cas, un problème de reférence vers une assembly ! Je pense qu’en jouant avec les AssemblyBindings on pourrait corriger le soucis ! Je regarde çà asap!

    A bientôt,

    Sébastien

Continuez la discussion sur le forum Constellation

Participants