Ja det kan man. Det är samma ’Value’ property på dessa enheter. Men det kan vara enklare att läsa reglerna och förstå vad man gjort om man använder :temp för temperatur istället för det generella ’value’RH_Dreambox wrote: ↑09 Mar 2020, 11:50 Tack @jang !
Jag kompletterade koden med några tider också, så att man inte väcks mitt i natten om temperaturen skulle stämma.
Men om jag behöver göra reset på "once", kan jag inte då bara skriva en regel som jag triggar tex. kl. 08:00 att "sensor.temp_golv:temp == 0"?Din property :temp förklarar också varför några andra av mina regler inte fungerarCode: Select all
-- UTERUM ################################## rule([[ once(sensor.temp_golv:temp >= 15) & 08:00..20:00 => $TTS = 'Meddelande från växthuset! Växterna kan ställas ut, nu!&vol=12' ]]) rule([[ once(sensor.temp_golv:temp <= 10) & 08:00..20:00 => $TTS = 'Meddelande från växthuset! Nu är det dax, ta in växterna, nu!&vol=12' ]])
Och nu hittade jag också fler propertys i det du skrivit om property functions.
Men,
är :power och :lux detsamma som :value? Kan man använda vilket som?
EventRunner
Så här har jag gjort, dock så hämtar jag luxvärdet från en global variabel som hämtar värdet va 5 minut.
Blir lite som en Hysteres, annars så skulle värdet upppdateras varje minut och då kan det bli lite av och på och det vill jag inte.
Code: Select all
rule("$Sun <'25' => VD.Garaget_Stolpe:btn=1; farstukvist.tak:on")
rule("$Sun >'26' => VD.Garaget_Stolpe:btn=2; farstukvist.tak:off")
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
Fw 4.600
BeyondMeasure 1.10
EventRunner
Hur har du gjort den globala variabeln, och hur är det gjort så att den hämtar var 5:e minut?sonnyboy wrote: ↑09 Mar 2020, 19:40Så här har jag gjort, dock så hämtar jag luxvärdet från en global variabel som hämtar värdet va 5 minut.
Blir lite som en Hysteres, annars så skulle värdet upppdateras varje minut och då kan det bli lite av och på och det vill jag inte.Code: Select all
rule("$Sun <'25' => VD.Garaget_Stolpe:btn=1; farstukvist.tak:on") rule("$Sun >'26' => VD.Garaget_Stolpe:btn=2; farstukvist.tak:off")
Jag har en VD med en ESP8266 med esp easy på som läser av en BH1750.
Vad har du som du tar luxvärdet ifrån?
Det är enkelt att få värdet från en enhet till en global variabel.
Code: Select all
fibaro:setGlobal("Sun", value)
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
Fw 4.600
BeyondMeasure 1.10
EventRunner
Jag har en Aeon Multisensor 6 som matas via "usb"sonnyboy wrote: ↑09 Mar 2020, 20:52Jag har en VD med en ESP8266 med esp easy på som läser av en BH1750.
Vad har du som du tar luxvärdet ifrån?
Det är enkelt att få värdet från en enhet till en global variabel.Code: Select all
fibaro:setGlobal("Sun", value)
Din sensor returnerar 'lux' värdet i propertyn :value - eller :lux som är samma (En Aeon Multisensor 6 skapar flera deviceID varav en är ljussensorn)
En regel kan se ut som
'once' så att den inte triggar flera gånger på värde under 50 (eller över 50) - jag vet inte om värdet 50 är rätt.
Om du har flera ljussensorer kan man ta medelvärdet av dem...
En regel kan se ut som
Code: Select all
rule("sensor=99; lampor={77,66}")
rule("once(sensor:lux < 50) & 09:00..18:00 > lampor:on")
rule("once(sensor:lux >= 50) & 09:00..18:00 > lampor:off")
Om du har flera ljussensorer kan man ta medelvärdet av dem...
Code: Select all
rule("sensors={99,100}; lampor={77,66}")
rule("once(average(sensors:lux) < 50) & 09:00..18:00 > lampor:on")
rule("once(average(sensors:lux) > 50) & 09:00..18:00 > lampor:off")
Får följande feljang wrote: ↑10 Mar 2020, 08:57 Din sensor returnerar 'lux' värdet i propertyn :value - eller :lux som är samma (En Aeon Multisensor 6 skapar flera deviceID varav en är ljussensorn)
En regel kan se ut som
'once' så att den inte triggar flera gånger på värde under 50 (eller över 50) - jag vet inte om värdet 50 är rätt.Code: Select all
rule("sensor=99; lampor={77,66}") rule("once(sensor:lux < 50) & 09:00..18:00 > lampor:on") rule("once(sensor:lux >= 50) & 09:00..18:00 > lampor:off")
Om du har flera ljussensorer kan man ta medelvärdet av dem...
Code: Select all
rule("sensors={99,100}; lampor={77,66}") rule("once(average(sensors:lux) < 50) & 09:00..18:00 > lampor:on") rule("once(average(sensors:lux) > 50) & 09:00..18:00 > lampor:off")
Sorry, jag måste ha somnat vid ratten...
Sista '>' ska vara en pil '=>'
Sista '>' ska vara en pil '=>'
Code: Select all
rule("sensors={99,100}; lampor={77,66}")
rule("once(average(sensors:lux) < 50) & 09:00..18:00 => lampor:on")
rule("once(average(sensors:lux) > 50) & 09:00..18:00 => lampor:off")
Perfekt - Tackarjang wrote: ↑20 Mar 2020, 20:57 Sorry, jag måste ha somnat vid ratten...
Sista '>' ska vara en pil '=>'Code: Select all
rule("sensors={99,100}; lampor={77,66}") rule("once(average(sensors:lux) < 50) & 09:00..18:00 => lampor:on") rule("once(average(sensors:lux) > 50) & 09:00..18:00 => lampor:off")
- RH_Dreambox
- Z-Wave Kung
- Posts: 1203
- Joined: 03 Jan 2015, 16:49
- 9
- Location: Vegby
- Contact:
Den här tror jag @jang har gjort, så den bör fungera.
Code: Select all
-- EARTH HOUR #######################################
lights={46,156,135,85,81,11,13,23,25,87,7,15,17,9,121} -- eller hämta värden från HomeTable
rule("earthDates={2019/3/30/20:30,2020/3/28/20:30}")
rule("dolist(v,earthDates,log(osdate('Earth hour %c',v)) & post(#earthHour,v))")
rule("#earthHour => states = lights:value; lights:off; wait(01:00); lights:value = states")
Min gamla ombyggda HC2 har fått ett nytt liv och min HC3 är nu nedkopplad.
HC2 med Home Assistant har blivit en riktig Game Changer och nu har jag hemautomatik på riktigt.
https://www.zwaveforum.se/viewtopic.php?t=7087
HC2 med Home Assistant har blivit en riktig Game Changer och nu har jag hemautomatik på riktigt.
https://www.zwaveforum.se/viewtopic.php?t=7087
Tackar, den jag har men tyckte inte den funkade, får kolla lite nu på lunchenRH_Dreambox wrote: ↑25 Mar 2020, 11:09Den här tror jag @jang har gjort, så den bör fungera.Code: Select all
-- EARTH HOUR ####################################### lights={46,156,135,85,81,11,13,23,25,87,7,15,17,9,121} -- eller hämta värden från HomeTable rule("earthDates={2019/3/30/20:30,2020/3/28/20:30}") rule("dolist(v,earthDates,log(osdate('Earth hour %c',v)) & post(#earthHour,v))") rule("#earthHour => states = lights:value; lights:off; wait(01:00); lights:value = states")
Det måste ju fungera på lördag!
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
Fw 4.600
BeyondMeasure 1.10
EventRunner
Något som inte rimmar med detta, har du något förslag?
[DEBUG] 11:47:05: Earth hour Wed Mar 25 11:47:05 2020
[DEBUG] 11:47:06: Error in 'dolist(v,earthDates,log(osdate('Earth hour %c',v)) & post(#earthHour,v))': /opt/fibaro/scenes/323.lua:2084: No such function:dolist
[DEBUG] 11:47:06:
[DEBUG] 11:47:06: Line 2082: stat,res=(instr[i[1]] or instr['%call'])(stack,i[2],env,i)
[DEBUG] 11:47:06: Line 2083: postTrace(i,args,stack,env.cp)
[DEBUG] 11:47:06: Line 2084:>>> else stat,res=(instr[i[1]] or instr['%call'])(stack,i[2],env,i) end
[DEBUG] 11:47:06: Line 2085: env.cp = env.cp+1
[DEBUG] 11:47:06: Line 2086: end --until env.cp > #code or stat
[DEBUG] 11:47:06:
[DEBUG] 11:47:06: Error loading rules:/opt/fibaro/scenes/323.lua:2252: /opt/fibaro/scenes/323.lua:2084: No such function:dolist
[DEBUG] 11:47:05: Earth hour Wed Mar 25 11:47:05 2020
[DEBUG] 11:47:06: Error in 'dolist(v,earthDates,log(osdate('Earth hour %c',v)) & post(#earthHour,v))': /opt/fibaro/scenes/323.lua:2084: No such function:dolist
[DEBUG] 11:47:06:
[DEBUG] 11:47:06: Line 2082: stat,res=(instr[i[1]] or instr['%call'])(stack,i[2],env,i)
[DEBUG] 11:47:06: Line 2083: postTrace(i,args,stack,env.cp)
[DEBUG] 11:47:06: Line 2084:>>> else stat,res=(instr[i[1]] or instr['%call'])(stack,i[2],env,i) end
[DEBUG] 11:47:06: Line 2085: env.cp = env.cp+1
[DEBUG] 11:47:06: Line 2086: end --until env.cp > #code or stat
[DEBUG] 11:47:06:
[DEBUG] 11:47:06: Error loading rules:/opt/fibaro/scenes/323.lua:2252: /opt/fibaro/scenes/323.lua:2084: No such function:dolist
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
Fw 4.600
BeyondMeasure 1.10
EventRunner
'dolist' försvann i ER2... nu i ER3 ser det mer ut som Lua med en "for .. pairs(...) do .... end"
Ett problem kan vara att de lampor man vill slå av måste support "turnOff" (fibaro:call(id,"turnOff")) vilket de flest gör.
Om ni vill testa så kan ni lägga till reglerna
Så kommer den 5sek efter ni startat om ER att posta en #earthHour2 som släcker i 10s. Då ser ni om lamporna släcker korrekt, och tänder igen. Värre om det går fel med hela familjen som åskådare ...och domare...
Code: Select all
-- EARTH HOUR #######################################
lights={46,156,135,85,81,11,13,23,25,87,7,15,17,9,121} -- eller hämta värden från HomeTable
rule("earthDates={2019/3/30/20:30,2020/3/28/20:30}")
rule("for _,v in ipairs(earthDates) do log(osdate('Earth hour %c',v)); post(#earthHour,v) end")
rule("#earthHour => states = lights:value; lights:off; wait(01:00); lights:value = states")
Om ni vill testa så kan ni lägga till reglerna
Code: Select all
rule("#earthHour2 => states = lights:value; lights:off; wait(00:00:10); lights:value = states")
rule("@now+00:00:05 => post(#earthHour2)")
Detta släcker finfint, men den tänder inte igen?jang wrote: ↑25 Mar 2020, 13:40 'dolist' försvann i ER2... nu i ER3 ser det mer ut som Lua med en "for .. pairs(...) do .... end"
Code: Select all
-- EARTH HOUR ####################################### --lights={ 252,248 } -- eller hämta värden från HomeTable --rule("earthDates={2020/3/25/13:13,2021/3/27/20:30,2022/3/26/20:30}") --rule("for _,v in ipairs(earthDates) do log(osdate('Earth hour %c',v)); post(#earthHour,v) end") --rule("#earthHour => states = lights:value; lights:off; wait(00:02); lights:value = states")
Testar just nu med 2 st Fibaro wallplugs
Men efter en stund så crashar ER
[DEBUG] 13:12:17: for _,v in ipairs(earthDates) do log(osdate('Earth hour %c',v)); post(#earthHour,v) end = nil
[DEBUG] 13:12:17: Rule:4[#earthHour => states = lights:value; lights:off; wait(00:02); lights:value = sta...] = OK
[DEBUG] 13:13:00: [{"type":"earthHour"}]>>'Rule:4[#earthHour => states = lights:value; lights:off; wait(00:02); lights:value = sta...]'
[DEBUG] 13:18:29: Aborting: Server not started yet
[DEBUG] 13:18:39: Aborting: Server not started yet
[DEBUG] 13:21:46: Aborting: Server not started yet
[DEBUG] 13:22:21: Aborting: Server not started yet
[DEBUG] 13:22:27: Aborting: Server not started yet
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
Fw 4.600
BeyondMeasure 1.10
EventRunner
- RH_Dreambox
- Z-Wave Kung
- Posts: 1203
- Joined: 03 Jan 2015, 16:49
- 9
- Location: Vegby
- Contact:
Ja, det blev samma fel hos mig. Men jag blir inte klok på varför.
Min gamla ombyggda HC2 har fått ett nytt liv och min HC3 är nu nedkopplad.
HC2 med Home Assistant har blivit en riktig Game Changer och nu har jag hemautomatik på riktigt.
https://www.zwaveforum.se/viewtopic.php?t=7087
HC2 med Home Assistant har blivit en riktig Game Changer och nu har jag hemautomatik på riktigt.
https://www.zwaveforum.se/viewtopic.php?t=7087
Sorry, det var ett fel sedan jag flyttade från ER2 till ER3. Koden för att tilldela en lista av devices en lista utav värden var trasig och det verkar inte som ngn använder det förutom i earthHour exemplet.RH_Dreambox wrote: ↑25 Mar 2020, 16:09 Ja, det blev samma fel hos mig. Men jag blir inte klok på varför.
Dvs.
a = {17,42}:value
tilldelar 'a' listan {"0","0"} om både 17 och 41 är av. Det funkade.
{17,42}={"0","0"} skulle tilldela 17:value=0 och 42:value=0 men den koden hade fallit bort när jag gick från ER2 till ER3.
Nu har jag pushat ER3 fixB89 som rättar till det.
Vi hinner fortfarande till på lördag
Nu funkade detjang wrote: ↑25 Mar 2020, 21:42Sorry, det var ett fel sedan jag flyttade från ER2 till ER3. Koden för att tilldela en lista av devices en lista utav värden var trasig och det verkar inte som ngn använder det förutom i earthHour exemplet.RH_Dreambox wrote: ↑25 Mar 2020, 16:09 Ja, det blev samma fel hos mig. Men jag blir inte klok på varför.
Dvs.
a = {17,42}:value
tilldelar 'a' listan {"0","0"} om både 17 och 41 är av. Det funkade.
{17,42}={"0","0"} skulle tilldela 17:value=0 och 42:value=0 men den koden hade fallit bort när jag gick från ER2 till ER3.
Nu har jag pushat ER3 fixB89 som rättar till det.
Vi hinner fortfarande till på lördag
Lördagen är räddad, @jang tack så mycket!!
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
Fw 4.600
BeyondMeasure 1.10
EventRunner
- RH_Dreambox
- Z-Wave Kung
- Posts: 1203
- Joined: 03 Jan 2015, 16:49
- 9
- Location: Vegby
- Contact:
Jag skulle tro att det beror på att vi "amatörer" inte begriper oss på dina avancerade funktioner, och kan bara använda dem med hjälp från dig.Sorry, det var ett fel sedan jag flyttade från ER2 till ER3. Koden för att tilldela en lista av devices en lista utav värden var trasig och det verkar inte som ngn använder det förutom i earthHour exemplet.
Men jag skall göra vad jag kan för att hitta fler tillämpningar.
Min gamla ombyggda HC2 har fått ett nytt liv och min HC3 är nu nedkopplad.
HC2 med Home Assistant har blivit en riktig Game Changer och nu har jag hemautomatik på riktigt.
https://www.zwaveforum.se/viewtopic.php?t=7087
HC2 med Home Assistant har blivit en riktig Game Changer och nu har jag hemautomatik på riktigt.
https://www.zwaveforum.se/viewtopic.php?t=7087
jang wrote: ↑25 Mar 2020, 13:40 'dolist' försvann i ER2... nu i ER3 ser det mer ut som Lua med en "for .. pairs(...) do .... end"
Ett problem kan vara att de lampor man vill slå av måste support "turnOff" (fibaro:call(id,"turnOff")) vilket de flest gör.Code: Select all
-- EARTH HOUR ####################################### lights={46,156,135,85,81,11,13,23,25,87,7,15,17,9,121} -- eller hämta värden från HomeTable rule("earthDates={2019/3/30/20:30,2020/3/28/20:30}") rule("for _,v in ipairs(earthDates) do log(osdate('Earth hour %c',v)); post(#earthHour,v) end") rule("#earthHour => states = lights:value; lights:off; wait(01:00); lights:value = states")
Om ni vill testa så kan ni lägga till reglernaSå kommer den 5sek efter ni startat om ER att posta en #earthHour2 som släcker i 10s. Då ser ni om lamporna släcker korrekt, och tänder igen. Värre om det går fel med hela familjen som åskådare ...och domare...Code: Select all
rule("#earthHour2 => states = lights:value; lights:off; wait(00:00:10); lights:value = states") rule("@now+00:00:05 => post(#earthHour2)")
Då var det fixat tack då blir det Earth Hour för mig med första gången är det bara lägga till datumen sen lär väll ändra sig till nästa år
kör Hc3 och det fungerar bättre och bätttre sakta men säkert