From a2f5e69b763163ef2e162de0bf7005df4feb1a9c Mon Sep 17 00:00:00 2001 From: Blackymas Date: Mon, 6 Mar 2023 01:09:09 +0100 Subject: [PATCH 1/2] new slider function brightness, temp, color, cover --- nspanel_blueprint.yaml | 83 +++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 41 deletions(-) diff --git a/nspanel_blueprint.yaml b/nspanel_blueprint.yaml index 072a893..9feac9b 100644 --- a/nspanel_blueprint.yaml +++ b/nspanel_blueprint.yaml @@ -6067,19 +6067,19 @@ action: - service: "{{ command_value }}" data: component: lightsettings.lightslider - message: '{{ (state_attr(entity_long, "brightness") | int ) |round(0) }}' + message: '{{ (state_attr(entity_long, "brightness") | int * 255 / 100 ) |round(0) }}' - delay: milliseconds: "{{ delay_value }}" - service: "{{ command_text_printf }}" data: component: lightsettings.light_value - message: '{{ (state_attr(entity_long, "brightness") | int * 100 /255) | round(0) }}%' + message: '{{ (state_attr(entity_long, "brightness") | int ) | round(0) }}%' - delay: milliseconds: "{{ delay_value }}" - service: "{{ command_text_printf }}" data: component: lightsettings.light_value_2 - message: '{{ (state_attr(entity_long, "brightness") | int * 100 /255) | round(0) }}%' + message: '{{ (state_attr(entity_long, "brightness") | int ) | round(0) }}%' else: - service: "{{ command_value }}" data: @@ -7860,7 +7860,6 @@ action: data: cmd: "page {{ page_home }}" - ## PAGE NOTIFICATION ## - conditions: '{{ trigger.event.data.new_state.state == page_notification }}' alias: 'notification page' @@ -8799,19 +8798,22 @@ action: - service: light.turn_on data: entity_id: "{{ entity_long }}" - brightness: '{{ trigger.event.data.new_state.state |replace("brightness","") | int }}' - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_text_printf }}" - data: - component: lightsettings.light_value - message: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 100 /255) |round(0) }}%' - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_text_printf }}" - data: - component: lightsettings.light_value_2 - message: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 100 /255) |round(0) }}%' + brightness: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 255 / 100) |round(0) }}' + # brightness: '{{ trigger.event.data.new_state.state |replace("brightness","") | int }}' + + ##### ist jetzt direkt im Nextion Editor hinterlegt ##### + # - delay: + # milliseconds: "{{ delay_value }}" + # - service: "{{ command_text_printf }}" + # data: + # component: lightsettings.light_value + # message: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 100 /255) |round(0) }}%' + # - delay: + # milliseconds: "{{ delay_value }}" + # - service: "{{ command_text_printf }}" + # data: + # component: lightsettings.light_value_2 + # message: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 100 /255) |round(0) }}%' # value_template: '{{ states(last_click_lightsettings) is match "brightness\d+" }}' # sequence: @@ -8834,18 +8836,20 @@ action: data: entity_id: "{{ entity_long }}" color_temp: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}' - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_text_printf }}" - data: - component: lightsettings.temp_value - message: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}' - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_text_printf }}" - data: - component: lightsettings.temp_value_2 - message: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}' + + ##### wird im Nextion Editor gemacht + # - delay: + # milliseconds: "{{ delay_value }}" + # - service: "{{ command_text_printf }}" + # data: + # component: lightsettings.temp_value + # message: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}' + # - delay: + # milliseconds: "{{ delay_value }}" + # - service: "{{ command_text_printf }}" + # data: + # component: lightsettings.temp_value_2 + # message: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}' ##### Page Lightsettings - Color RGB Slider MOVE ##### - conditions: @@ -8884,18 +8888,15 @@ action: data: entity_id: "{{ entity_long }}" position: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }}' - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_text_printf }}" - data: - component: coversettings.cover_value - message: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }} %' - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_text_printf }}" - data: - component: coversettings.cover_value_2 - message: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }} %' + + ##### wird in Nextion gemacht ##### + # - delay: + # milliseconds: "{{ delay_value }}" + # - service: "{{ command_text_printf }}" + # data: + # component: coversettings.cover_value + # message: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }} %' + ##### Page Coversettings - Cover CLOSE Button ##### - conditions: From a113e0cd43fba6830d0867c383f76b2c17e6ee43 Mon Sep 17 00:00:00 2001 From: Blackymas <41958506+Blackymas@users.noreply.github.com> Date: Mon, 6 Mar 2023 01:11:10 +0100 Subject: [PATCH 2/2] new function slider brightness, temp, color, cover --- nspanel_eu.HMI | Bin 21307134 -> 21307134 bytes nspanel_eu.tft | Bin 10046180 -> 10046196 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/nspanel_eu.HMI b/nspanel_eu.HMI index c4e79556f3a672bad2f5888f52b99e91c6d34aca..fe4d8fff68955d8c0e2dc9cd0288bdfc9ae22b69 100644 GIT binary patch delta 3963 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 EcXMShmH+?% diff --git a/nspanel_eu.tft b/nspanel_eu.tft index 00152548a75a91fcd5af96206e361d59510e2aea..09fe2cedeebd5b9f5c554656355f496daadb9de4 100644 GIT binary patch delta 12716 zcmeI2cYGB^yT_k7C+FlOq|i)AuaFKwfzTqMD2S9$RFq<bbizP3!l17 z3=G?wKX7nirf3CnkSKyy3@c;e_JRya&NUL;_Hffix(jncX zyR0ESq^In+WR{#N zr^$Dvl<&#ua)!*7Gv)homYgkfHs#vGc-o-c+B~IJo?~8?aB)V4<@TM%-%ZPP=QGQ5 zeHwTZk$4nHlq@EO5XFVp4>zTqDEuw)o#nZqd~A7c$p5i}v-XPI?;U2GCbbd5E!;(X z7fcjyMu|_1Ppn}C{uGjmViqs_Cn!HC%njjIYjQ*U{?~@i^fkF&USf!I%J$sdLcHp1 zvokl)&bm9!ZTDBXK6T6!ITC7w_&iLV8)tl#8^J|i<%U#Wo1gcD(`{ewVY_JPJpN5? zYJ@0u#+K$zixAzNYii};_`Nf+Y2F(VqMdVTpS)k}VuLgD)x5zjqL=f`;JgofEN;V` z<0j?}@)4t*$L8cs@Db;o-99speP`_7nTIq7DIe(rqz{qiBF%H|-#P!>%Tw;|66A0p zN+MqhYD{!-poO+rh`OPCGKJ`^RjND`<%Ow4t~XUV6XjRZh`5#2Z2uw3e(6L}Qk7Rx z0L{uKau!>u1IF7=wJ2vEQ6p~`S}KT+k_TO1LR08&iVM|6gLC9U_m>i#9)U6%T%ZVg zVH=Tmh6|lRy_={_2M!YH2VH15$^jygnp`Hjb{_*;iJnK<=_#m9uFWh@Lb+vQL3!bJ zv%DJRRlNnBE>h)RgeRTp-%C)V=Uu5D2D~I3baarQsNt@ZjtN{BA#`Peplfftl7;}@ zmJsTmBj}?us@xFee=ir*y_3VN?}~ErHbJ`cUOjI0gPV>&GnW&Ua_g&n%-(PX(cBeW zmd2J-$-Jid>47}*8V_;5`?+cpwUWz9xn7NU5lwaJv}hx4a``oO+HbDJ^;^YTuX8M< z^VivF>$-|)C@(ETq^?|ChDNKQe7TA}J<*I&xrwLA z&~?37oD{l#M&u9l;kWLv=DFXLb=|&(Xb=b9}qMSYM^LAUEO+=l!_&!HDyph%Qo|gQ9sr>u{9%7H)O!Vqz zK6IZ0YfP&+*Nqg(Cm--`+cQN(ukg}`9N}nztgdIHV}{AFCUJwYIAK#TZmTh9;+57lK83> z0~~`=x`p?S<>0y>33u|tU#AEsL)Z1DR^DBsz&}5|8OPbQA#M$~67@yOX3eHWh*;iX z!}Qie(e+W*bgOYjr|p>DW}fY;Ic-}}6Um(%TAY`W)pco|Yt?lP4Skp$+FY+*y9`;^ zC*in!7Z-fX;i4D!bHmhrg4Av|*Q%@G32@hZEkEtzoXcEfAHN%q|871KgNlN&GW^t)V!zT_zM?$X(6H~ z7kg>DZFTn%#qb<&EyCeIR@Z%D*GN9?tt}D}oLN%~aq-y?PYf*MX8GwJeENtM%Dy_NiF3c#)^k#At%>N(qiSO!ebAx)zX2_zS)5o0Q|!aN>);BngtCWg*2NuN z$*t>Z+ui5@Q3BE{^Pj*J%25xlU<#=`=?QI)c$YnVw2O`zXrb%t1TV7`_~fStb0c3Z z(>@F8oddkS5eM^OUtH8#e9{+Dq5#sltkpx5DBf2OGphNmI{!o*U*c>(T$-BSvgh-> z%QhF%N>2BOl>IFqO5=aynd}#UE3}C-1GI~l(qi6ui8r{XyHL`NVj{;O4hzy^#SQKf zggZFo5YdrCyf=@7{Q_tlTwRw&&fn@gh0QZMz`YaK36tO-hKCm6#N(_X*x=Pf{@6HNDBu zb^RVWz#Gor0aDxzL#)3b*X23ki1iom2*&{9j=+pZczqL?adw2}>tzVKo-DeeXAhH9 z2O_k&_IBSBeepe??T*;(cy=VZdj5c?;|JdR0tb8b6bUp0e>aOc-uer4Ww{0N%2`j%q;r^yvZqz5H*`eHNpTd{z5e77cL9NrEi^x z+x#N;PJ~_p{ppjO-w&}$xOHPlOHLAboH8-zJxOdcZ*!qIM$oyzOl_+p{S?sxBtHC< zhPT3#@ctP^vT z0Hkj?s~H*%;KF9ON)e}t=J4<&TqPr`>n&Y6yXbm1^zmV563+1o}$rO(;D#%LDv&)DK=g2 zU^Cw&$(rW2?L5|YzY{g%bx&gkr;~BPiuh_W05lZxCZyktstCtGWOaQUx~6hm8*PYt z?F&RhkUqS?>z~$q_=`50hsEmx?`)%ObNdn%buSXN=d2WT-i4yBuQEG7OhMxCV(G_R~uL%=o1@jxlh^wYvES*0fN>@L@c{H}3^ zKeT(LCh{yDu5%jPR6MB~M*STwuR%E{jt#?^f>KS@9 z)U&TEBMQ7>m_OFCu8f01Fvf%%L^(J9=ALE34Yq}XBv(-JGN*LW;w)Eg@Sl+E&YOVG zt*YQN^s3;qXWhcHam!ej#agm%@y>7zaTnUq+m+B~2vyN%+kczrNj}pZ(f8lxoJe$? zbBE}&J5|v)=Z=X!yX#$|@prj#1B7$E%l#Xm&ri_W-DAHfE!NA(SEZkQ={k+qYgupc(@#sbv;yARjM}L#ha{Lj$kcb=KODEdPbNV4%FP)PcYelYM zgpV8&{GhQGV+kX!KU3T0xCt>xh)VdgUPBwNr?lVQn?e5{0Bi~AQ%+3N;;hK>uT9YG zl-aB@0_|rZb+z!+94*$0Jg;r0ZFc?CBB+j4@Q5TW#>*&F!@)6DfvZ$97~><$?=;so z+grFGrVIDD0NR@*G=yqN=wcI;!ApmtH?rKVC88dNmTVX7-U?BTLRA{NF18D*;VSqB z+E`KG;MV9l(pAuLs3%&Zr%|X%L-%Bdp!bosI=Jx&AkDy`wS_})X|lG}?GkE|+yo8d z#1Y`qc@!T5;ylz{MDlT0y$v8*^W6mRYJ=X-xZ}1U{d@i>bZ(2>V?ewOp<@j}6Kbf= z1`w@f?t*jMqVp%HxsMdhC8N=M8M2Qd@g)yItC3E4sNMz=t-U-14``3xZuma#k2IT? zzJcC0WGge#+gjTYbUgyc&b0-<@27=XA+i_Nfi4giae9UpVVwl&yENW!Jx~WD2WUao zZOFV6p#5&Wh0Lx?yxv?4-m4?Xt1gF)gI|#6Zb7*3Bk*;94B{o+_rPGy*V7QHBjQs} z;A8s)IuTWu>T%<=|6U9lLN!F}cwf+%n|(yErs`J4Dch5cnY;A&f#bAbd7d&;U-C2!Sjw zNx)!xpfwER9@c`#SA>RMm4vq3FhS*Y{kP^_Dv zpy+-OHU13+J=c)MC@k0Zq5K#Y-$vy(NcS67!s57w3XAU1jRa*Pt!~6eMx%Qq@{e)x z1cZi(pkHDoE*@>9xad9`HD{2#8}qU^&^;UZ$G|wfsUhh4r#K#JS^-9g1{inR@kXVP zW}K0sg)#D zghmJojjy*5l+~gFjVPFCwEqgVOH1DS7VLt&V&kfof_z(5u+b<~!^SsT;YElxf3p#a zV&i30^=Vy+jfPN_jrJ|A1=UaHfs+s$c?HLJlLakEu7D#7CLHY#pbmeU8&5`4C z+E(BZ1rv`p|8@c&SfOk2xFf6RcnR8z?JMYL6spqEUesRDckMYtA_VdZkBJ=wE$L7d zkA_|qkM>89M?J%Br(+D{6(5VA5p@2UN_>Q%`1tIzf;K%{nU7EuAM17$G_7OBlCf?_ zwPd^iv1X^o0C^5=OhCp!{~v%%fK<>)0TOuy$P%+%WkA}0gp~4}S~DWA2wCu)AbaNu zLK=l?2syAbE?H+qNaPhEKhLCf* z3VMV#=Bg0|MaTi&1QmCyAf!>KhLDNf1x-dO>|TkG@!cy3`3q`dQw6=8YSe~1j-mV* zA+u3=0?Dn1>TWI@WoiW>oALNJxYwTBS=FG3L$I<^4 zL0@z8Z?rg1BdhDf>23U*srCnFe1okgZ2yvPUp{*V>%unQVy}Vva@TM1ar81OGT2d! z(O%{z#n=Vd3dNY!T{J(0b-ec>>=10`z(d$wi0r58hVYp~T7+w;Sv>!rUsn2lrwzAh z5Z4&>zMNMRU1#&v@3aFEpY>N=3-L1%;Ww=R{v*f~XhDBKGo5ERL2m?(qZOBhbv3i=#!Fpl(RK@Dhhw6VlY{ zC8E zk71W<543nLIfiSvhs%%Qjtm}z)eLX>8F$3UV)K~_@b5x(M_i9<`^5KLd>nhoAw$%h z+Tb{h=bXTo0wnd0Tn=r^5YE4gb7P3cJJRxKC{MnJJ(aSdy!ak&VB9c48mF8>@HifI z3c-&+X~WUK;(PbVFdqE?-^LSP!+h6|cA+<;)LC1N-ymt(B2 zp(XK|GZ^b@_Bab8PIw(FKrTM3MOnta&Yq973t}suJclSdQ4_=3Z-}z`{vRd^mj+(zO}GLol?f>?{&NM0ififkL8g>vcz1lhou7tpHjC_x8C8BCA0 z^c}^Mt!Sk~8_A)U&`Renmk@CIXt0(Ye<0xU(cINmP-O2sMv!w1yV()3GY4MASY?m~ zyuoFVEM;Rj$Q8}BHw4+zdG8gRy~bCspjn%AASc}*aWJ2D6nI$Lr1PH+w7r0eUKza7 z4MSew9e<*2PKKa|8JzEqA#*Z#r#q(CY^=bKNNLwFy=FZ78d{x(((O$i=z&(J$8wGb zTFrV>&;w2^L#tWbuM8)VG|t#GsCNS=ku;9`dm-X)ka~`1KW{|*jpJ`(ti18S>39}3 zF;?DqPN<2oTH$BaRa|llW3}S)Tlfj#;spMyRzZ>1%8ANCU*mXvBIlogU7(pBvL#Hy zdz$Cmg|EUUDGP}~oOutwM7+R@?is-{@dc5|ZBM}nd6_)=6z*ix$uRz8j`q)o#wTqSfGc1s#6ZSQy4y2EWT) zFCn0-#Fvp|w?Ck{O4CHPwa^0CVMoZdl7lW|uovDF^d(=1go_mDiowdEyguEukfr=R z{__e3TRt6zobk7Z#B#psC~(?3&wwlWb2kjwc?R$N69bk(dX?w6W56=r;f?_pWaIxK zn8^dLVI~W*Ip-Q$wVx?y1E+bQRePT8fmYX`40xX#m!Z|QncTk&VHdtH$bA<3-M~d# z$o;$!vEwX3MO@Dt5j)P}gqs-aCZs|0YhtLI9A6VdeKZ^U3ORh_7KZw0Hve@CkMi?e zUaP?A<(aPxlz?OJd}SbL3PSl1KZR&O=sk!ggpPlpAXNN;2_d`vLqTtTs61rYjHIE?g-s(_G-w8mTCu=Sa0ZPmt=P1Z{XC?en!?d}Xuy#@N5j*t zDKq70rkU)`3Iu&zpn%k@zyy;01hi)tC_9}fPe#2Uo2?G;=dhb@n5W{v=|Jbn z%07IFprcC^mWD4ev1G6H5tbVtDOc6{$aIx`8?>0E3QXIe0ZjH`O9lP3RQYPyQst}K z%LGkbX8OufdzoU>E@%lKn{2Y|T4p-SKH_8S1%9mHG~#0uPIjN=g5F!M%;mG(G?(Q| z91T3l&y>4X;P~xl%3aWuyBwcm&-HWVu5yT`yHZywceP)s+%}P`N9hP`T?Mv>S!WUHhQn zO=qdGM!Cy-4VqhW64%<*v&cl)Lgb;;pi=lDqOZDt9&CBDjY43%avexhs3Ka#!ObED(y6yBZfMcb$UP#i`tNsz|wOrW1R3PUWtdPUWtqTksOy uqTJPVi*nalXsKJ3yUs$xtIwXZ6>q4m%3V2I6}nn*eCL8qE(>Q(-2PvOhOa9C delta 12675 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