Aller au contenu

Connaitre le maxi possible du réveil d'un module


Dragoniacs

Messages recommandés

Bonjour à tous,

 

La question a peut être déjà été posé, mais je ne trouve pas.

Je commence à en avoir marre des piles qui s'usent trop vite sur certains modules. Mais à chaque fois que j'essaye de mettre des valeurs de réveil trop élevées, elle ne sont pas prises en compte. Et le maxi que je trouve est différent pour chaque type de module.

Ma question : comment connaitre le temps maxi acceptable par le module ? (histoire que j'arrête de passer 4h à incrémenter mes valeurs par pas de 10...)

 

Lien vers le commentaire
Partager sur d’autres sites

les valeur d'origine a mon sens permettent une utilisation correcte, maintenant si tu veux pouvoir utilisé tes module a pleine capacité regarde les piles en bois sur le forum je pense que sa peut t'aider ces tjrs le problème dès que tu utilise un module sur piles tu est limité. 

Lien vers le commentaire
Partager sur d’autres sites

Et comment on connaît la valeur d'origine ou la valeur maxi ?
Typiquement un thermostat faut le réveiller toutes les 15 min pour être assez réactif avec le panneau de chauffage. Mais un capteur de fenêtre il peut se réveiller 1 fois par jour c'est suffisant...

Envoyé de mon SM-A520F en utilisant Tapatalk

Lien vers le commentaire
Partager sur d’autres sites

il y a 4 minutes, Dragoniacs a dit :

Et comment on connaît la valeur d'origine ou la valeur maxi ?
Typiquement un thermostat faut le réveiller toutes les 15 min pour être assez réactif avec le panneau de chauffage. Mais un capteur de fenêtre il peut se réveiller 1 fois par jour c'est suffisant...

Envoyé de mon SM-A520F en utilisant Tapatalk
 

oui je comprend ton problème dis moi ou achete tu tes modules ? car il y a domotique stores .fr qui fais de tres bon tuto sur chaque sorte de module et donne un tableau des valeur d'origine des modules qu'il vendent si cela peut t'aider ....http://tutoriels.domotique-store.fr/content/151/363/fr/parametres-du-fibaro-door_window-sensor-fgk_101_zw5.html par exemple ...

Lien vers le commentaire
Partager sur d’autres sites

il y a 4 minutes, Dragoniacs a dit :

toujours facile à mettre en place

voir compliqué si tu ne peux pas tirer de câbles ;-)

 

Le grand débat, réveil, polling.

 

Je crois me souvenir que @jjacques68 avait une scène pour modifier tous ses devices en même temps. 

De même @Lazer a écrit un tutoriel sur cela. A lire et relire. 

 

En fait la vraie question serait de déterminer en fonction du type de module le réveil le plus approprié.  

Lien vers le commentaire
Partager sur d’autres sites

Enfin le réveil du module n'a pas la même importance en fonction du type de module. Plusieurs jours pour certains ne posent pas spécialement de problèmes. Sauf si on est en cours d'"affinage" ;-) pour trouver les valeurs qui correspondent le plus au besoin. 

Lien vers le commentaire
Partager sur d’autres sites

oui tout à fait et voici le code (désolé pour la mise en page, mais l'éditeur du fofo fait un peu ce qu'il veut, notepad++ fera très bien l'affaire)

et le fichier pour téléchargement à la fin.

 

Il est clair que dans la liste TypeDevice, apparaît le type des modules que je possède, donc si vous en avez d'autres, il faut les ajouter...

Le champs "up" permet d'appliquer ou pas la modification sur le module concerné.

Il est clair également, qu'il faut faire le tour de tous les device pour les réveiller manuellement pour valider l'info... ou attendre sagement le prochain réveil automatique...

 

Chez moi ça marche impec !

 

--[[
%% properties
%% events
%% globals
--]]

--[[
Scène qui met à jour les WakeUpTime des modules au maximum,
suivant les infos trouvés dans la notice
--]]

--décalration des variables*************************************************
local debug = true --true/false  variable pour afficher le debug
local simul = false --true/false   permet de simuler avant de modifier

local device = api.get("/devices/") --liste tous les devices
local texte = "" --texte pour le debug
local nbDevice = 0 --compteur de device à pile total
local nbDeviceUpdateOK = 0 --compteur de device mis à jour OK
local nbDeviceUpdateNOK = 0 --compteur de device NON mis à jour (up=0)
local nbDeviceOK = 0 --compteur de device OK
local nbDeviceNOK = 0 --compteur de device NOK

local typeDevice = {
  {type = "com.fibaro.remoteController", zwaveCompany = "ID-RF", 	  up = 0, maxTime = 0},
  {type = "com.fibaro.doorSensor",		 zwaveCompany = "Fibargroup", up = 1, maxTime = 64800},
  {type = "com.fibaro.FGMS001v2",		 zwaveCompany = "Fibargroup", up = 1, maxTime = 65535},
  {type = "com.fibaro.FGFS101",		 	 zwaveCompany = "Fibargroup", up = 1, maxTime = 86399},
  {type = "com.fibaro.thermostatDanfoss",zwaveCompany = "Danfoss", 	  up = 1, maxTime = 600},
  {type = "com.fibaro.FGMS001",			 zwaveCompany = "Fibargroup", up = 1, maxTime = 65535},
  {type = "com.fibaro.temperatureSensor",zwaveCompany = "Horstmann Controls Limited", up = 1, maxTime = 86400},
  {type = "com.fibaro.temperatureSensor",zwaveCompany = "Everspring", 				  up = 1, maxTime = 16056000},
  {type = "com.fibaro.motionSensor",	 zwaveCompany = "Philio Technology Corp", 	  up = 1, maxTime = 432000}
}

--fonction pour afficher le debug*******************************************
function afficheDebug(message, color, afficheDebug)
  if afficheDebug == true then
    if message and color then
      print("<font color = '"..color.."'>"..message.."</font>")
    else
      print("<font color = 'yellow'>afficheDebug : error</font>")
    end
  end
end

--MAIN**********************************************************************
--entête de debug
if simul == true then
  	afficheDebug("MODE SIMULATION : AUCUNE MODIFICATION EST APPLIQUEE.", "yellow", true)
end
afficheDebug("DEFINITIONS : id, name, wakeUpTime, type, zwaveCompany", "white", debug)

--pour tous les device
for i,v in ipairs(device) do
    
  	-- filtre que les device à pile et visible
	if device[i].properties.wakeUpTime and device[i].visible == true then 
    	
    	--pour tous les éléments de typeDevice
        for j,v in ipairs(typeDevice) do
      		
      		--si le type et zwaveCompany sont identiques
            if device[i].type == typeDevice[j].type
        		and device[i].properties.zwaveCompany == typeDevice[j].zwaveCompany then
        
        		--récupère les infos du device
        		idDev = device[i].id
        		nameDev = device[i].name
 				typeDev = device[i].type    			
    			zwaveCompanyDev = device[i].properties.zwaveCompany
        		
        		--construit le texte pour le debug
        		if debug == true then
        			texte=idDev..", "..nameDev..", "..device[i].properties.wakeUpTime.." s, "..typeDev..", "..zwaveCompanyDev
          		end
        		
        		--si wakeUpTime différent de maxTime du tableau
        		if device[i].properties.wakeUpTime ~= typeDevice[j].maxTime then
    				afficheDebug(texte,"red", debug)
          			nbDeviceNOK=nbDeviceNOK+1  --inc compteur NOK
          		
					--si le champ UP est à 1 alors mise à jour
					if tonumber(typeDevice[j].up) == 1 then				
																
						--mise à jour du wakeUpTime avec valeur du tableau
						if simul == false then -- pas executée en mode simulation							
							local Value=api.get("/devices/"..device[i].id)
							Value.properties.wakeUpTime = typeDevice[j].maxTime
							api.put("/devices/"..device[i].id, Value)
						end
						
						--construit le texte pour le debug de mise à jour
						if debug == true then 
							texte="Device "..device[i].id.." ("..device[i].name..") wakeUpTime mis à jour avec "..typeDevice[j].maxTime.." s."          				
						end
					
						afficheDebug(texte, "orange", debug)          					
						nbDeviceUpdateOK=nbDeviceUpdateOK+1 --inc compteur update OK
					
					else --si pas de mise à jour demandée (up = 0)
						
						--construit le texte pour le debug de mise à jour
						if debug == true then 
							texte="Device "..device[i].id.." ("..device[i].name..") wakeUpTime non mis à jour."
						end
						
						afficheDebug(texte, "Magenta", debug)          					
						nbDeviceUpdateNOK=nbDeviceUpdateNOK+1 --inc compteur update	NOK
					end          			
          
          		else --sinon OK (wakeUpTime = maxTime du tableau)
          			afficheDebug(texte, "green", debug)
          			nbDeviceOK=nbDeviceOK+1  --inc compteur OK
          		end
        
        		nbDevice=nbDevice+1 --inc compteur device
			end
		end
	end
end

--affichage résultat
print("------------------------------")
afficheDebug("Total device détectés = "..nbDevice, "white", true)
afficheDebug("Total device OK = "..nbDeviceOK, "green", true)
afficheDebug("Total device NOK = "..nbDeviceNOK, "red", true)
afficheDebug("Total device mis à jour OK = "..nbDeviceUpdateOK, "orange", true)
afficheDebug("Total device mis à jour NOK = "..nbDeviceUpdateNOK, "Magenta", true)

 

Scene-47-ID218-MaxWakeUpTime.txt

Modifié par jjacques68
  • Like 2
Lien vers le commentaire
Partager sur d’autres sites

Sinon pour répondre à la question, la réponse est très simple : regarder dans la doc de chaque module, ça ne s'invente pas.

 

Je crois que c'est pour mes ST814, j'ai mis un réveil de plusieurs jours.

Et sur les modules Fibaro récents, c'est top, on peut carrément désactiver le réveil (Bouton, Keyfob)

Lien vers le commentaire
Partager sur d’autres sites

Dites... en cherchant les ref de mes différents modules, j'ai téléchargé le template de mon capteur de porte Everspring.

J'y trouve le modèle et le fabricant, mais aussi ceci :

<name>wakeUpTime</name>
<typeFibaro/>
<interfaceFibaro>zwaveWakeup</interfaceFibaro>
<max>2147483647</max>
<min>-2147483648</min>

est-ce que cela signifie que le max wake up possible pour ce module est 2147483647 ?

Lien vers le commentaire
Partager sur d’autres sites

Voilà pour fibaro après lecture des manuels, ce n'est pas du pif ;-)


 

    Modèles              REFs        WakeUp MaxTime
CO Sensor               FGCD-001          43200
Door/window Sensor      FGK-10x           64800
Door/window Sensor 2    FGDW-002          64800
Button                  FGPB-101         0-64800
Swipe                   FGGC-001          64800
Flood Sensor            FGFS-101          86400
Motion Sensor           FGMS-001          65535
Smoke Detector          FGSD-002          65535
Smoke Sensor            FGSS-001          86399

 

  • Like 4
Lien vers le commentaire
Partager sur d’autres sites

Oui et non, en fait, effectivement, je suis parti de là :

https://manuals.fibaro.com/

 

Et si tu regardes bien les dénominations, c'est bien comme cela que s'appelle le FGSD, mais pas de FGSS..leur site n'est pas à jour ;-) ou je suis miro ;-)

Bon la source est fausse quoi ;-) en tout cas  incomplète

 

Oui pour le button mais j'ai mis le MAX vu que c'etait le sujet ;-)

 

 

Lien vers le commentaire
Partager sur d’autres sites

Bon, j'ai quelques soucis...

J'ai 2 types de capteurs de porte Everspring, et ils ont la même dénomination mais n'acceptent pas la même tempo de réveil :

 - le HSM02 qui se réveille toutes les 86400 s

- le SM103 qui n'est pas référencé (plus commercialisé) qui ne veut pas prendre le 86400s

 

Et j'ai aussi le thermostat Horstman qui veut pas bouger de son 9000 s.....

 

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...