-- Merci @MikeF : https://www.domoticz.com/forum/viewtopic.php?t=21454 -- Script Domoticz -> ESPEasy servo dimmer commandArray = {} DomDevice = 'Plafonnier Bureau'; -- Votre peripherique à controler IP = '10.0.0.91'; -- L'adresse IP de l'ESP8266 PIN = "13"; -- Le pin GPIO du servo function sleep(n) os.execute("sleep " .. tonumber(n)) end if devicechanged[DomDevice] then if(devicechanged[DomDevice]=='Off') then print ("OFF dim = "..uservariables['dimmer']); CalcValue = 0; else if(devicechanged[DomDevice]=='On') then DomValue = uservariables['dimmer']; print ("ON dim = "..uservariables['dimmer']); CalcValue = DomValue; else print("Other"); DomValue = otherdevices_svalues[DomDevice]; CalcValue = math.floor(30 + DomValue * 1.50); -- La fonction de calcul dimmer vers servo commandArray['Variable:dimmer'] = tostring(CalcValue); print ("dim Level = "..uservariables['dimmer']); end end runcommand = "curl 'http://" .. IP .. "/control?cmd=Servo,2," ..PIN.. "," .. CalcValue .. "'"; -- Commande de servo dodo = "curl 'http://" .. IP .. "/control?cmd=Servo,2," ..PIN.. ",9999'"; -- Desactiver lesServo os.execute(runcommand); sleep(2) -- Attente entre commande et desactivation os.execute(dodo); print("PWM value= "..CalcValue); end return commandArray