Aller au contenu

Netatmo Weather Station VD-scene standalone


Messages recommandés

Posté(e)

Bonjour a tous

 

Je viens de mettre en place ce VD et cette scène pour les modules netatmo

https://forum.fibaro.com/files/file/93-netatmo-weather-station-vd-scene-standalone/

 

Tous fonctionne a un détail prés

j'ai ce code défaut et cela semble bloquer la boucle

[DEBUG] 08:28:13: Standalone Netatmo weather scene version 3.2 - (c) 2018-19 Sankotronic
[DEBUG] 08:28:14: netatmo-oAuth connected...
[DEBUG] 08:28:15: Found Netatmo weather base station No. 1 Name 'Maison Le Tignet'
[DEBUG] 08:28:15: Pluie Jardin Le Tignet module found. Battery level: 89
[DEBUG] 08:28:16: jardin Le Tignet module found. Battery level: 84
[DEBUG] 08:28:16: jardin vent Le Tignet module found. Battery level: 30
[DEBUG] 08:28:18: Standalone Netatmo weather scene version 3.2 - (c) 2018-19 Sankotronic
[DEBUG] 08:28:18: 2020-10-06 08:28:18.222650 [ fatal] Unknown exception: /opt/fibaro/scenes/282.lua:101: attempt to concatenate local 'room' (a nil value)

et j'ai ce même probleme avec ce VD et module virtuel

En plus j'ai remplacer les piles de l’anémomètre mais ce dernier reste a 30%

Cela peut venir du fait que les piles soient faible?

Posté(e) (modifié)

j'avance un peut

Je viens de changer mon module wind netatmo pour un neuf

Le niveau de pile est a présent OK

Le module virtuel et sa scène ci dessous fonctionne a présent

https://forum.fibaro.com/files/file/93-netatmo-weather-station-vd-scene-standalone/

 

Mais je voudrais savoir comment récupérer les valeur des VD (wind, pluviomètre, station météo) dans une scène sachant que les valeurs semble être mis dans des variable prédéfinie du panneaux de contrôle

 

Comment on récupère les valeurs d'une variable prédéfinie?

Je pense que c'est comme ci dessous

 

Je voudrais faire une scène en LUA pour que quant le vent en pic est supérieur a 16Km/h mon store remonte

 

J'ai vu cela mais je ne sais pas comment faire pour faire ma scene en LUA

 

-- Reading data from WeatherState global variable
local wT = json.decode(fibaro:getGlobalValue("NetatmoWeather")) -- read global variable 
local stationNo = 1 -- set station nuber
-- data from wind sensor
wT.netatmo[stationNo].wind.speed_max

Merci pour votre aide

Modifié par flacon030
Posté(e) (modifié)

bonjour a tous

Je ne maitrise pas le LUA

Qui pourrait me dire comment faire une scène en LUA pour que mon store remonte quant le vent est supérieur a 16Km/h

L'ID de mon store est :744

L'ID de VD wind est: 771

et je voudrait récupérer l'info du vent de mon netatmo wind par l’intermédiaire du VD ci dessus

 

quelques infos supplémentaires

 

5.1 NETATMOWEATHERSTATIONVD-SCENEGLOBALVARIABLES

All global variables are automatically added when first Indoor Base module VD is imported to HC2. Here is short description:

NetatmoMain - added automatically to the system by imported VD. All main settings of all Netatmo VD’s are stored in this global variable.

NetatmoWeather Keeps information collected from all Netatmo Weather stations.

NetatmoLang Keeps VD translations to 27 different languages

NOTE

Global variables added by Indoor Base module VD contain data structured in tables. If Save button is used in Home Center 2 global variable panel all data in this variables will be destroyed. Indoor Base module VD checks integrity of global variables and can rebuild them automatically without user intervention and will continue to work properly. Still, it is recommended not to use Save button in HC2 global variable panel. Properly programmed HA system on HC2 does not require user to manually change global variables values in panel using Save button. Such system is UHASTM (Universal Home Automation System). More information about UHASTM you can find on Fibaro International forum: https://forum.fibaro.com/topic/25468-sankotronic-lab-universal-home-automation-system- uhas%E2%84%A2/ and soon also on this link: http://www.uhas.eu Also if global variables content is destroyed then after rebuilding Netatmo Weather station scene must be manually run or HC2 rebooted.

 

5.2 NETATMOWEATHERSTATIONVD-SCENEUSAGEANDCONTROL

 

NetatmoMain global variable contains main settings of all Netatmo VD’s that are imported to HC2. To control them from user code first user need to read that global variable with this command:

local nM = json.decode(fibaro:getGlobalValue("NetatmoMain")

local moduleID = "XX"
local stationNo = 1

lIn above code user also need to set module VD ID number in string format so must be with quotation marks. Just replace XX with VD ID number. In case that the HomeTable is used, then conversion of ID numbers to string is needed with this code:

ocal jT = json.decode(fibaro:getGlobalValue("HomeTable")

local nM = json.decode(fibaro:getGlobalValue("NetatmoMain")

local moduleID = tostring(jT.home.netatmo_base_1)
local stationNo = 1

With following command user can then press Update button on Netatmo VD’s within his code:

--- press update button

fibaro:call(wsID, “pressButton”, nM[moduleID].updButton) -- Update Netatmo module VD

 

5.3 NETATMOGLOBALVARIABLEANDHOWTOREADIT

To read Netatmo data user can use following code:

-- Reading data from WeatherState global variable

local wT = json.decode(fibaro:getGlobalValue("NetatmoWeather")) -- read global variable

local stationNo = 1 -- set station nuber

-- data from indoor base module

wT.netatmo[stationNo].name

wT.netatmo[stationNo]._id

wT.netatmo[stationNo].wifi

wT.netatmo[stationNo].fail

wT.netatmo[stationNo].unit

wT.netatmo[stationNo].temp_unit

wT.netatmo[stationNo].wind_unit

wT.netatmo[stationNo].press_unit

wT.netatmo[stationNo].rain_unit

wT.netatmo[stationNo].feels_like

wT.netatmo[stationNo].country

wT.netatmo[stationNo].reg_locale

wT.netatmo[stationNo].lang

wT.netatmo[stationNo].temp

wT.netatmo[stationNo].temp_min

wT.netatmo[stationNo].temp_max

wT.netatmo[stationNo].temp_trend

wT.netatmo[stationNo].humid

wT.netatmo[stationNo].humid_min

wT.netatmo[stationNo].humid_max

wT.netatmo[stationNo].abs_press

wT.netatmo[stationNo].press

wT.netatmo[stationNo].press_min

wT.netatmo[stationNo].press_max

wT.netatmo[stationNo].press_trend

wT.netatmo[stationNo].noise

wT.netatmo[stationNo].co2

wT.netatmo[stationNo].place.altitude

wT.netatmo[stationNo].place.city

wT.netatmo[stationNo].place.country

wT.netatmo[stationNo].place.time_zone

wT.netatmo[stationNo].place.lon

wT.netatmo[stationNo].place.lat

-- data from outdoor module

wT.netatmo[stationNo].outm.name

wT.netatmo[stationNo].outm._id

wT.netatmo[stationNo].outm.batt

wT.netatmo[stationNo].outm._rf

wT.netatmo[stationNo].outm.fail

wT.netatmo[stationNo].outm.temp

wT.netatmo[stationNo].outm.temp_min

wT.netatmo[stationNo].outm.temp_max

wT.netatmo[stationNo].outm.temp_trend

wT.netatmo[stationNo].outm.humid

wT.netatmo[stationNo].outm.humid_min

wT.netatmo[stationNo].outm.humid_max

-- data from wind sensor

wT.netatmo[stationNo].wind.name

wT.netatmo[stationNo].wind._id

wT.netatmo[stationNo].wind.batt

wT.netatmo[stationNo].wind._rf

wT.netatmo[stationNo].wind.fail

wT.netatmo[stationNo].wind.speed

wT.netatmo[stationNo].wind.speed_max

wT.netatmo[stationNo].wind.deg

wT.netatmo[stationNo].wind.dir

wT.netatmo[stationNo].wind.gust

wT.netatmo[stationNo].wind.gust_max

wT.netatmo[stationNo].wind.gust_deg

wT.netatmo[stationNo].wind.gust_dir

-- data from rain sensor

wT.netatmo[stationNo].rain.name

wT.netatmo[stationNo].rain._id

wT.netatmo[stationNo].rain.batt

wT.netatmo[stationNo].rain._rf

wT.netatmo[stationNo].rain.fail

wT.netatmo[stationNo].rain.hour

wT.netatmo[stationNo].rain.day

wT.netatmo[stationNo].rain.week

wT.netatmo[stationNo].rain.month

-- data from additional indoor modules
-- need to define
moduleNo= 1 to 3

wT.netatmo[stationNo].intm[moduleNo].name

wT.netatmo[stationNo].intm[moduleNo]._id

wT.netatmo[stationNo].intm[moduleNo].batt

wT.netatmo[stationNo].intm[moduleNo]._rf

wT.netatmo[stationNo].intm[moduleNo].fail

wT.netatmo[stationNo].intm[moduleNo].temp

wT.netatmo[stationNo].intm[moduleNo].temp_min

wT.netatmo[stationNo].intm[moduleNo].temp_max

wT.netatmo[stationNo].intm[moduleNo].temp_trend

wT.netatmo[stationNo].intm[moduleNo].humid

wT.netatmo[stationNo].intm[moduleNo].humid_min

wT.netatmo[stationNo].intm[moduleNo].humid_max

 

Modifié par flacon030
  • 2 semaines après...
×
×
  • Créer...