-
Compteur de contenus
77 -
Inscription
-
Dernière visite
Puni's Achievements
-
Puni a commencé à suivre Localisation GPS , VD UPS , HC2 - IO HomeControl - Chauffe-eau Thermor 270L Thermodynamique et 4 autres
-
Bonjour à tous, Est ce que quelqu'un utilise encore ce VD ? Depuis peu j'ai la variable "ups.status" qui me renvoie la valeur "ALARM OL" [ups.status]=ALARM OL Cela a pour incidence de passer la variable globale sur "battery". Avez-vous le même problème ? Merci par avance.
-
Bonsoir, merci pour votre retour, non j’ai bien désactivé la double authentification mais je ne vois pas d’où vient le problème.
-
Bonjour, Est-ce qu’il y a encore des personnes qui utilisent ce VD sous le DSM 7.1.1-42962 Update 4 ? Merci par avance .
-
Bonjour @mprinfo, Désolé pour le retard, j'ai testé mais cela ne fonctionne pas je vais aller fouiner un peu et je vous tiens informé . Merci
-
Bonjour @mprinfo J'utilise le script depuis le début cela fonctionne très bien avec des FGR-222, récemment je viens d'ajouter deux FGR-223 il ne sont pas détecter par le script. Est ce que quelqu’un connait le type d'un FGR-223 (ex pour le FGR-222 : theType == 'FGRM' ) ? Merci par avance.
-
Panneau de chauffage fait planter la HC2
Puni a répondu à un(e) sujet de jjacques68 dans Chauffage et Energie
Bouton AUTO: --Création d'une variable prédéfinie "Mode_chauffage" : "Auto"/"OFF" local varMode_chauffage = "Mode_chauffage" -- ID des zones de chauffages local hpID = { "Chambre", 5, "Bureau", 6, "Rez-de-chaussee", 199, "Chambre_Owen", 200, } -- HeatingPanels actifs pour variable Chauffage Zone 1 local Zone_1 = { "Chambre", "Bureau", "Rez-de-chaussee", "Chambre_Owen", } fibaro:debug ("Nombre de zone = " ..#Zone_1) local id = { CHAUFFAGE_ENTREE = 402, CHAUFFAGE_SALON = 208, CHAUFFAGE_SALLE = 212, CHAUFFAGE_CUISINE = 210, CHAUFFAGE_BUREAU = 214, CHAUFFAGE_CHAMBRE = 162, CHAUFFAGE_CHAMBRE_OWEN = 200, } if ( fibaro:getGlobal(varMode_chauffage) == "OFF" or "Reduit" ) then fibaro:setGlobal(varMode_chauffage, "Auto") fibaro:debug("Mode chauffage = Auto") fibaro:log("Mode chauffage = Auto") fibaro:sleep(2000) -- 2sec end ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- RELANCE DE CHAUFFAGE -- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- fibaro:call(id["CHAUFFAGE_ENTREE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_SALON"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_SALLE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CUISINE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_BUREAU"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CHAMBRE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CHAMBRE_OWEN"],"setTime", tonumber(os.time(t)) + 1*5) --[[ fibaro:call(id["CHAUFFAGE_ENTREE"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_ENTREE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_SALON"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_SALON"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_SALLE"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_SALLE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CUISINE"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_CUISINE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_BUREAU"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_BUREAU"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CHAMBRE"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_CHAMBRE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CHAMBRE_OWEN"],"setTargetLevel", "4") fibaro:call(id["CHAUFFAGE_CHAMBRE_OWEN"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:debug("Relance chauffage [°C + sec]") fibaro:log("Relance chauffage [°C + sec]") fibaro:sleep(2000) -- 2sec ]]-- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- GESTION DU PANEL DE CHAUFFAGE FIBARO -- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- local tmpOff = 4 -- température pour HP Off ---------------------------------- -- DO not change bellow this line --------------------------------- local HC2 = Net.FHttp("127.0.0.1",11111) -- détermination de la version du firmware local GETheating = "" payload = "/api/settings/info" response, status, errorCode = HC2:GET(payload) if tonumber(status) == 200 then jsonTable = json.decode(response) if tonumber(jsonTable.softVersion) >= 4 then -- version = "4.x" GETheating = "/api/panels/heating/" else -- version = "3.x" GETheating = "/api/panels/heating?id=" end else fibaro:debug('<span style="color:red;">status='..status..', errorCode='..errorCode..', payload='..payload..', response='..response..'</span>') end -- fonction de mise à jour du heating panel -- si handTemperature == 0, c'est en auto function HeatPanel(id,HandTmp) jsonpanel = HC2:GET(GETheating ..id) jsontable = json.decode(jsonpanel) handTimestamp = jsontable.properties.handTimestamp handTemperature = jsontable.properties.handTemperature name = jsontable.name NouveauPanel = ('{"id":' ..id.. ',"name":"'..name.. '","properties":{"handTemperature":' ..handTemperature.. ',"handTimestamp": ' ..handTimestamp.. ',"vacationTemperature":' ..HandTmp.. '}}') HC2:PUT(GETheating ..id, NouveauPanel) end -- fonction pour trouver l'ID du heating panel function HeatPanelID() --fibaro:debug("hpName = " ..hpName) for j = 1, #hpID, 2 do --fibaro:debug(hpID[j]) if hpName == hpID[j] then hpId = hpID[j+1] end end end hpName = "" -- nom du HP en cours de traiemeent hpId = 0 -- ID du HP en cours de traitement -- lecture de Mode_chauffage = OFF/Auto local Mode_chauffage = fibaro:getGlobal(varMode_chauffage) -- Mode_chauffage = OFF, alors tout les HP sont en vacance for i = 1, #hpID, 2 do HeatPanel(hpID[i+1], tmpOff) end -- Mode_chauffage = Auto, alors tout les HP sont en auto if Mode_chauffage == "Auto" then fibaro:debug("Programme de chauffage en mode automatique") fibaro:debug("Mode Chauffage => Auto") -- if Chauffage == 0 -- then -- Zone 1 hpId = 0 for i = 1, #Zone_1 do hpName = Zone_1[i] HeatPanelID() HeatPanel(hpId, 0) end else if ( fibaro:getGlobal("Mode_chauffage") == "OFF" ) then fibaro:debug("Chauffage en mode OFF") fibaro:log("Chauffage en mode OFF") fibaro:sleep(2000) -- 2sec end end Bouton réduit: if ( fibaro:getGlobal("Mode_chauffage") == "OFF" ) then fibaro:debug("Chauffage en mode OFF") fibaro:log("Chauffage en mode OFF") fibaro:sleep(2000) -- 2sec fibaro:call(fibaro:getSelfId(),"setProperty","currentIcon","1084") -- Icone chauffage Off elseif ( fibaro:getGlobal("Mode_chauffage") == "Auto" or "Reduit" ) then if ( fibaro:getGlobal("Mode_chauffage") == "Reduit" ) then fibaro:debug("Chauffage déja en mode Reduit") fibaro:log("Chauffage déja en mode Reduit") fibaro:sleep(2000) -- 2sec end if ( fibaro:getGlobal("Mode_chauffage") == "Auto" ) then fibaro:debug("Chauffage en mode Auto => Reduit") fibaro:log("Chauffage en mode Auto => Reduit") fibaro:sleep(2000) -- 2sec fibaro:setGlobal("Mode_chauffage", "Reduit") fibaro:debug("Mode chauffage = Reduit") fibaro:log("Mode chauffage = Reduit") fibaro:sleep(2000) -- 2sec end local id = { CHAUFFAGE_ENTREE = 402, CHAUFFAGE_SALON = 208, CHAUFFAGE_SALLE = 212, CHAUFFAGE_CUISINE = 210, CHAUFFAGE_BUREAU = 214, CHAUFFAGE_CHAMBRE = 162, CHAUFFAGE_CHAMBRE_OWEN = 200, } fibaro:call(id["CHAUFFAGE_ENTREE"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_ENTREE"],"setTime", tonumber(os.time(t)) + 120*60); fibaro:call(id["CHAUFFAGE_SALON"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_SALON"],"setTime", tonumber(os.time(t)) + 120*60); fibaro:call(id["CHAUFFAGE_SALLE"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_SALLE"],"setTime", tonumber(os.time(t)) + 120*60); fibaro:call(id["CHAUFFAGE_CUISINE"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_CUISINE"],"setTime", tonumber(os.time(t)) + 120*60); fibaro:call(id["CHAUFFAGE_BUREAU"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_BUREAU"],"setTime", tonumber(os.time(t)) + 120*60); fibaro:call(id["CHAUFFAGE_CHAMBRE"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_CHAMBRE"],"setTime", tonumber(os.time(t)) + 120*60); fibaro:call(id["CHAUFFAGE_CHAMBRE_OWEN"],"setTargetLevel", "17"); fibaro:call(id["CHAUFFAGE_CHAMBRE_OWEN"],"setTime", tonumber(os.time(t)) + 120*60); end Bouton OFF: --Création d'une variable prédéfinie "Mode_chauffage" : "Auto"/"OFF" local varMode_chauffage = "Mode_chauffage" -- ID des zones de chauffages local hpID = { "Chambre", 5, "Bureau", 6, "Rez-de-chaussee", 199, "Chambre_Owen", 200, } -- HeatingPanels actifs pour variable Chauffage Zone 1 local Zone_1 = { "Chambre", "Bureau", "Rez-de-chaussee", "Chambre_Owen", } fibaro:debug ("Nombre de zone = " ..#Zone_1) local id = { CHAUFFAGE_ENTREE = 402, CHAUFFAGE_SALON = 208, CHAUFFAGE_SALLE = 212, CHAUFFAGE_CUISINE = 210, CHAUFFAGE_BUREAU = 214, CHAUFFAGE_CHAMBRE = 162, CHAUFFAGE_CHAMBRE_OWEN = 200, } --[[ ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- RELANCE DE CHAUFFAGE -- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- fibaro:call(id["CHAUFFAGE_ENTREE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_SALON"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_SALLE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CUISINE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_BUREAU"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CHAMBRE"],"setTime", tonumber(os.time(t)) + 1*5) fibaro:call(id["CHAUFFAGE_CHAMBRE_OWEN"],"setTime", tonumber(os.time(t)) + 1*5) ]]-- if ( fibaro:getGlobal(varMode_chauffage) == "Auto" ) then fibaro:setGlobal(varMode_chauffage, "OFF") fibaro:debug("Chauffage en mode Auto => OFF") fibaro:log("Chauffage en mode Auto => OFF") elseif ( fibaro:getGlobal(varMode_chauffage) == "OFF" ) then fibaro:debug("Chauffage déja en mode OFF") fibaro:log("Chauffage déja en mode OFF") end ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- GESTION DU PANEL DE CHAUFFAGE FIBARO -- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- local tmpOff = 4 -- température pour HP Off ---------------------------------- -- DO not change bellow this line --------------------------------- local HC2 = Net.FHttp("127.0.0.1",11111) -- détermination de la version du firmware local GETheating = "" payload = "/api/settings/info" response, status, errorCode = HC2:GET(payload) if tonumber(status) == 200 then jsonTable = json.decode(response) if tonumber(jsonTable.softVersion) >= 4 then -- version = "4.x" GETheating = "/api/panels/heating/" else -- version = "3.x" GETheating = "/api/panels/heating?id=" end else fibaro:debug('<span style="color:red;">status='..status..', errorCode='..errorCode..', payload='..payload..', response='..response..'</span>') end -- fonction de mise à jour du heating panel -- si handTemperature == 0, c'est en auto function HeatPanel(id,HandTmp) jsonpanel = HC2:GET(GETheating ..id) jsontable = json.decode(jsonpanel) handTimestamp = jsontable.properties.handTimestamp handTemperature = jsontable.properties.handTemperature name = jsontable.name NouveauPanel = ('{"id":' ..id.. ',"name":"'..name.. '","properties":{"handTemperature":' ..handTemperature.. ',"handTimestamp": ' ..handTimestamp.. ',"vacationTemperature":' ..HandTmp.. '}}') HC2:PUT(GETheating ..id, NouveauPanel) end -- fonction pour trouver l'ID du heating panel function HeatPanelID() --fibaro:debug("hpName = " ..hpName) for j = 1, #hpID, 2 do --fibaro:debug(hpID[j]) if hpName == hpID[j] then hpId = hpID[j+1] end end end hpName = "" -- nom du HP en cours de traiemeent hpId = 0 -- ID du HP en cours de traitement -- lecture de Mode_chauffage = OFF/Auto local Mode_chauffage = fibaro:getGlobal(varMode_chauffage) -- Mode_chauffage = OFF, alors tout les HP sont en vacance for i = 1, #hpID, 2 do HeatPanel(hpID[i+1], tmpOff) end -- Mode_chauffage = Auto, alors tout les HP sont en auto if Mode_chauffage == "Auto" then fibaro:debug("Programme de chauffage en mode automatique") fibaro:debug("Mode Chauffage => Auto") -- if Chauffage == 0 -- then -- Zone 1 hpId = 0 for i = 1, #Zone_1 do hpName = Zone_1[i] HeatPanelID() HeatPanel(hpId, 0) end else if ( fibaro:getGlobal("Mode_chauffage") == "OFF" ) then fibaro:debug("Chauffage en mode OFF") fibaro:log("Chauffage en mode OFF") fibaro:sleep(2000) -- 2sec end end -
Panneau de chauffage fait planter la HC2
Puni a répondu à un(e) sujet de jjacques68 dans Chauffage et Energie
Bonjour, J’utilise aussi des têtes danfoss avec une programmation via le panneau chauffage pour contrôler les différentes zones. Et à côté j’ai un VD avec plusieurs boutons. Un bouton automatique pour suivre le programme du panneau chauffage. Un bouton off pour passer le panneau chauffage en mode vacances sur toutes les zones. Un bouton réduit pour forcer la température des zones. Un bouton confort+ pour forcer la température des zones. Je n’ai pas rencontré ce problème, mais si tu as besoin pour tester un truc n'hésite pas si je peux t'aider (je ne suis pas un expert en code ). -
merci pour ton retour
-
Bonjour @MAM78 Super tuto Je suppose que sans le hub Homekit il est impossible de faire des règles d'automatisation ? J’aime les pommes mais il y a un moment cela coute cher ...
-
Bonjour, Le code refonctionne de nouveau affaire à suivre ...
-
ok je comprend mieux pourquoi ... merci pour l'nfo
-
Bonjour, J’utilise la fonction localisation dans une scène LUA avec une variable "absent" "présent" mais depuis la mise à jour v4.520 j’ai l’impression que ce code ne fonctionne plus. code: fibaro:getValue(id["userLoc_Alex"],'Location') Est-ce que l’un d’entre vous utilisent-ils ce code ou savez-vous si il a changé ? Je vous remercie par avance.
-
Bonjour Pépite, Pour moi ce n’est pas le problème que le mot de passe soit stocké dans une variable ou pas c’est le faite qu’il soit en clair dans le VD. local Pass = "cGV0aXQgam91ZXVy"; Je pensais pouvoir coller directement le mot de passe encodé
-
C'est ok j'ai bien la bonne adresse avec le %40 ... Je n'ai pas de caractères spéciaux dans le mot de passe. J’ai testé la scène de Lazer pour rebouté la box et ça fonctionne très bien, j’ai encodé le mot de passe de la même façon. Merci pour votre aide je vais continuer à chercher d’où vient problème. Edit: Ha il faut mettre le mot de passe en clair mais c'est pas beau ça