From 74ed612c1595390a45966bf004c5525e2567a24e Mon Sep 17 00:00:00 2001
From: Edward Firmo <94725493+edwardtfn@users.noreply.github.com>
Date: Fri, 8 Dec 2023 11:42:13 +0100
Subject: [PATCH] Changed to 6 custom buttons on home page
---
ReleaseNotes.md | 8 +--
advanced/hmi/nspanel_eu.HMI | Bin 14899044 -> 14899044 bytes
advanced/hmi/nspanel_eu_code/home.txt | 56 ++++++++++++++++++++
advanced/hmi/nspanel_us.HMI | Bin 14731244 -> 14731244 bytes
advanced/hmi/nspanel_us_code/home.txt | 56 ++++++++++++++++++++
advanced/hmi/nspanel_us_land.HMI | Bin 14676066 -> 14678540 bytes
advanced/hmi/nspanel_us_land_code/home.txt | 56 ++++++++++++++++++++
nspanel_blueprint.yaml | 58 ++++++++++++++++++++-
nspanel_eu.tft | Bin 7248344 -> 7251068 bytes
nspanel_us.tft | Bin 7255240 -> 7258348 bytes
nspanel_us_land.tft | Bin 7248344 -> 7251068 bytes
11 files changed, 229 insertions(+), 5 deletions(-)
diff --git a/ReleaseNotes.md b/ReleaseNotes.md
index 9e84ceb..0056e6c 100644
--- a/ReleaseNotes.md
+++ b/ReleaseNotes.md
@@ -34,12 +34,12 @@ Updates may come with changes on the blueprint inputs and we highly recommend yo
## Breaking changes
1. Service `esphome.xxxxx_set_component_color` parameter `background` is deprecated.
-2. Due to the additional custom button, the other buttons on home page changed it's position slightly
+2. Due to the additional custom buttons, the other buttons on home page changed their positions.
## Overview of noteworthy changes
1. Standardized entity's icons
-2. Additional custom button on Home page
+2. Additional custom buttons on Home page
3. Outdoor temperature selectable font size
@@ -49,8 +49,8 @@ Updates may come with changes on the blueprint inputs and we highly recommend yo
The engine for defining the icons to be shown and it's color was standardize between all the pages, so now you may see a more consistent User's Interface.
-### 2. Additional custom button on Home page
-It's that simple, now you have 4 buttons where used to be 3. 😉
+### 2. Additional custom buttons on Home page
+It's that simple, now you have 6 buttons where used to be 3. 😉
### 3. Outdoor temperature selectable font size
diff --git a/advanced/hmi/nspanel_eu.HMI b/advanced/hmi/nspanel_eu.HMI
index d1988964cbe4f20073c30f0809f1ad2e93022033..8712ea092c8f1e53bc90a685c7019f51d18c0195 100644
GIT binary patch
delta 1761
zcmd6l{Zo`x6vxlqWr3QZq1Xj=%r=eQnYPI(3N@f0EoxB<)HD}g3Q7f9S$SVrz6q3|
zxXCRt1x3S`kivM
fOQCMHg#{-DN9L&W$JcxKCAQ2DY
zVI(0Lk6=C);88q=6g-Y6U`HwzVi6YONj!x#q+^q&gnSgB5Jf0P2}H_(
zyytb!M6^}YSyvH-@+0-H+^dN;YVjY#h>A6xajmWg&AMmd6ryXmuYawaMpUBt&tFe;
zixxLpiS`-D9Wb@b)EnJ&vtH128&Q!~JUvF&(x&U{X6w4AGT`uK!BVbwLu(
zpBykTU)R|w`hhOl^#f%t*5e~-x^^tnJ%cNV3baF~We}BWx_=GP0Zo@=5>@%N|NBkr
zhz@FrBiTfanzlQMVzlcj&Lhg#;uHBq!P>9+vw-Mw;0}rYC?qMu7WBDG7
zjK4=Mlc}5Bfuh?>66Cf+YNXyZP^sAVtD&aASUK+MN|dd~e32c^s?8v4t0sGjyX1{?
zx^2?Y>8rou8oDs)8lT&(O%^s;9?!0S#s;hk4^1}6)I_$07rLW`wA8thWZx|3Xyw?1
zkNJ@Ki20Z~#hhlknNOHA%vt7Brib~A`JCxx`j{`6FPX2He&%atfcb{`midl3$9&J6
UX9k%I%n!^EGpvkFTr67kH~3pqBLDyZ
delta 1134
zcmd7Q>vPOk9LMoJn`|;Qlj)AlFWMPHhS?`fN2WZWR2Ff+Y-rs@<6gI-ku0_>yYDt}
z4;wiykwy^LhFZ-JDf?R$mkLdbAZ|$+9k&?|jEBZIc;G+KGxIug&iS10_dGcdD%U1H
z5Qpb0H8;FKwNkdoN)?Jzws4Z8l~NJ6Ym@o9+1w
z2QA9&&HLuzdK|OWw~*|tH=h$~2}kgKwG1EM_x@
zxqQbw=CgqB$zdV69OhS!5aB4lQH9Adj&p))
ze&-~oh+-X$UG*kisM`Os`4@JTU)V`Ed1D>T6vN7DsVhGZCg_LHa-7PoW0!LbbxRMQ
zl540kb4M^YUg<#FP*6MX`+MqFZmUQ~r{#X8J)N!PW_1V4m8lC)SiQB=Z>5+X(`sm=
zJ&k!OI<5ZQp+4mcY%?1hVw;p%T4MFGn-Ue+bzLCZ&a_IbF-m&|o@=eMCzKm+y6TUg
z#NO3so|M&l^=TDW8^_z$g$JznBfYLb+Bug5+-grG%cu17%AlpQoi#S*mRoi7_xn#>AKzAH`Bzu3WMVxwAPXCjjT~&kX5=Cd`6$5iC`1v8QG!yGp&S*cgbiCz1z;<-p&B*V
zju%jiI@F^9jgZlV9k633n$ZG*U3d|#cnQ1lGWOsVw4oiZVlQ69KD>_o=)eIS#38(a
zPP~aObfX7vp%;C48}C5DyEu$~yodKO02K}l_BjK8oZ2IoT3r9&9R3F*gqo<{RS{z#
zYB2JepVRy+H)?vFKarp0sc*W5C{L^ZFqNoO(`kXao(R%C@z)Ve<9%Jv>g$QhH2?T4
zqC2#@F_dVZfhydlj@kM~x8AM~wBJcoq7B~|rfXr<_4IpnU4Or>{pRbsDpJ>fM(Mg}
zF`w@};BvICvt#r?7h?5583}s*`y^ebrs$rDRYXNv=%h5Fa!sFHLv%pXWf?>@F73L%
zc>~cwt9a%g+xBur@2x@bk+S1iGD98QZ{LQcj=?x7T1+N7R!Eu3
zWU?dFAYzWFA`6jDg8gj!wsUM-#J@ZIjQ;^L~TExR_Mv;
zp5^vg)zc1>gtfE%Ze_scs5gqZc!$fW=l0qc414U!k`ylD`K4U&-zF7wH}~rop?H8XoMW?4;->yHF~LsIIl;x?e6T9S--{*A`Ti
zZmuP*mXLkT+7mNPW_tDJ_g5GXpWpl*elx#sf4RrrFX|&KYPJz+3AHH$)i%Y5vxHhz
z*%~t}3{xYF-yxx@V%QutG8-HrMz|wvXhLy^GB#XMR7Eje*pzPdxZc1
diff --git a/advanced/hmi/nspanel_us_code/home.txt b/advanced/hmi/nspanel_us_code/home.txt
index 857009c..f582d64 100644
--- a/advanced/hmi/nspanel_us_code/home.txt
+++ b/advanced/hmi/nspanel_us_code/home.txt
@@ -464,6 +464,62 @@ Text button04
printh FF FF FF
}
+Text button05
+ Attributes
+ ID : 47
+ Scope : global
+ Dragging : 0
+ Send Component ID : on press and release
+ Associated Keyboard: none
+ Text :
+ Max. Text Size : 3
+
+ Events
+ Touch Press Event
+ click_comp.txt="button05"
+ click_timer.en=1
+
+ Touch Release Event
+ if(click_timer.en==1)
+ {
+ click_timer.en=0
+ lastclick.txt="{\"page\": \"home\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
+ printh 92
+ prints "localevent",0
+ printh 00
+ prints lastclick.txt,0
+ printh 00
+ printh FF FF FF
+ }
+
+Text button06
+ Attributes
+ ID : 48
+ Scope : global
+ Dragging : 0
+ Send Component ID : on press and release
+ Associated Keyboard: none
+ Text :
+ Max. Text Size : 3
+
+ Events
+ Touch Press Event
+ click_comp.txt="button06"
+ click_timer.en=1
+
+ Touch Release Event
+ if(click_timer.en==1)
+ {
+ click_timer.en=0
+ lastclick.txt="{\"page\": \"home\", \"event\": \"short_click\", \"component\": \""+click_comp.txt+"\"}"
+ printh 92
+ prints "localevent",0
+ printh 00
+ prints lastclick.txt,0
+ printh 00
+ printh FF FF FF
+ }
+
Picture weather
Attributes
ID : 7
diff --git a/advanced/hmi/nspanel_us_land.HMI b/advanced/hmi/nspanel_us_land.HMI
index f4a9f11a214b95ce47cb49a3a735f32800632e18..37fb4bfcbc3924f2682d1419672725b056e6e362 100644
GIT binary patch
delta 1699
zcmd6n{Zmv`7{{Nx>;gKW>`n{iprWRY!)WW&lxav9ASyx|wZ3Iu$_h$ZXhm7xm2ZK@
zOS0iH4ZLI;+6yG;RY9~D3++WTurjYylao#P12fDt^+R+no}DxP1$Abgxu5f#?{l8-
zJ@?H0`Nxsan&FYq_I~Tc4Ouz4vs0HXCNcD}KGJM_Vn$%d8m%ZDV{9F_DHJ$q=aayI
zeR-^Fc3xJnzF??8DpGj{|rItvHB7co*;CeSCm6
zwBth@Mh7}^1V^Fc7>?rvy3mc2=)ozR#z*)VpWsuR!Dsj!y*P_=_yS+zD}0Uf=)(nE
z#5d^2050KMe24FG89(3(3|#FToaTwBE^;NAmvt_`uX9*lvJqFFW+AEzF>f-_Wq$GN
z1?P+*3RiCC^T!fx6!~irL?wc=?2?V!rN(^+(Kx=ZIo3`fDi!)G6N&B?`H)zm{T3=8
z6}3*48{IWS7PQPHDi*~tvm`T@WXFAyYafstK3{U>0?Gd*O7Uw%tgez8V-1mCnD+30MVa9KbwmdRmu3@Hn{2+nZ9UN;vC!rv(gbJth-Qi7
zDk&f;6#3yoqEPW^{`M1%jGiIUUqwVcLZg=vof5ohD^aV^PXf_d>&=2+tBIBbC+)Rz
z!QVg>CJHJ7M3)468l`6PZpqi1O=jxx;(4rZe4dp>BvnM}(W%Cf@ya$fWwXzzY-dyM
z=Z_t%rOD@Hlb32y%AIUz3s0TX=TsF~6+L04k&@5S&l^!n4I8rbB(nH6BTDaTD6%QK
z%P`^;)_uBrsy^w?QSt{dM|Qi#%Nr)sA*g|r9yO2tV1D(HzY|1awee_n9LNW62LS92_l&3%wQ%V%wjg7gb_{zbBH90xy-}F
zd={{fMMM+BVwSL!SeCJz6|6)ij#aE?4e_icfpsLZo+LJqObV%_v5`%rvzaYyWgFYs
z!A^Fun+*1l$zJxcpDf@22g&9ThdIJgayZ6ua>?TaCoyx1)11M=S!MmZH!qEJOO_o<;#a|OkX?J0g
z(r;IrL`!W$?O4V7)!{2z@(f*_mZ(
+ *HOME page*
+
+ *Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | script | fan | climate | media_player)*
+
+ *Entities with supported advanced settings will open it's settings page, all other entities will execute the action or toggle when clicked.*
+ default: []
+ selector: *home-custom-button-entity-selector
+ home_custom_button05_icon:
+ name: Custom button 05 - ICON (Optional)
+ description: >
+ *HOME page*
+
+ *Icon which should be displayed (Default - an icon matching the entity will be set automatically)*
+ default: []
+ selector: *icon-selector
+ ## Page Home - Custom button 06
+ home_custom_button06:
+ name: Custom button 06 - ENTITY (Optional)
+ description: >
+ *HOME page*
+
+ *Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | script | fan | climate | media_player)*
+
+ *Entities with supported advanced settings will open it's settings page, all other entities will execute the action or toggle when clicked.*
+ default: []
+ selector: *home-custom-button-entity-selector
+ home_custom_button06_icon:
+ name: Custom button 06 - ICON (Optional)
+ description: >
+ *HOME page*
+
+ *Icon which should be displayed (Default - an icon matching the entity will be set automatically)*
+ default: []
+ selector: *icon-selector
##### Alarm Control Panel - Page Alarm
##### PLACEHOLDER ######################################################################
@@ -6318,6 +6356,18 @@ trigger:
event_data:
entity_id: !input 'home_custom_button04'
id: home_custom_buttons
+ ##### Custom button 05 - Trigger 'home_custom_buttons' #####
+ - platform: event
+ event_type: state_changed
+ event_data:
+ entity_id: !input 'home_custom_button05'
+ id: home_custom_buttons
+ ##### Custom button 06 - Trigger 'home_custom_buttons' #####
+ - platform: event
+ event_type: state_changed
+ event_data:
+ entity_id: !input 'home_custom_button06'
+ id: home_custom_buttons
##### Trigger - Relays - State change #################################################################################################################
@@ -7004,7 +7054,7 @@ action:
- *delay-default
- service: '{{ nextion.command.printf }}'
data:
- cmd: home.outdoor_temp.font='{{ home_outdoor_temp_font if is_number(home_outdoor_temp_font) else "4" }}'
+ cmd: 'home.outdoor_temp.font={{ home_outdoor_temp_font if is_number(home_outdoor_temp_font) else "4" }}'
continue_on_error: true
- &refresh-page_home-indoor_temp
@@ -7171,6 +7221,12 @@ action:
- entity: !input home_custom_button04
icon: !input home_custom_button04_icon
component: button04
+ - entity: !input home_custom_button05
+ icon: !input home_custom_button05_icon
+ component: button05
+ - entity: !input home_custom_button06
+ icon: !input home_custom_button06_icon
+ component: button06
- repeat:
for_each: '{{ home_page_custom_buttons }}'
sequence:
diff --git a/nspanel_eu.tft b/nspanel_eu.tft
index 0f755501ff1e916296c5c0d9a61faca060c91675..0f7261882d9ec6e7f01d1908d14d5a3fc60293a0 100644
GIT binary patch
delta 289102
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