From f7131aaca085ef715fb361b8cf4546b71a109e7f Mon Sep 17 00:00:00 2001 From: Blackymas Date: Tue, 21 Feb 2023 01:02:28 +0100 Subject: [PATCH] add 7 free chips with icon - change chips 01-03 --- nspanel_blueprint.yaml | 445 ++++++++++++++++++++++++++++++++++------- 1 file changed, 373 insertions(+), 72 deletions(-) diff --git a/nspanel_blueprint.yaml b/nspanel_blueprint.yaml index 83a6cde..8093ec4 100644 --- a/nspanel_blueprint.yaml +++ b/nspanel_blueprint.yaml @@ -237,6 +237,125 @@ The goal was to create a version that allows everyone to use the NSpanel fully l entity: domain: - sensor + chip01: + name: Chip 1 - Top Menu (Optional) + description: '* *Top Menu Position 4 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip01_icon: + name: ICON Chip 1 (Optional) + description: '* *Icon which should be displayed when chip 1 entity is on*' + default: [] + selector: + text: {} + chip02: + name: Chip 2 - Top Menu (Optional) + description: '* *Top Menu Position 5 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip02_icon: + name: ICON Chip 2 (Optional) + description: '* *Icon which should be displayed when chip 2 entity is on*' + default: [] + selector: + text: {} + chip03: + name: Chip 3 - Top Menu (Optional) + description: '* *Top Menu Position 6 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip03_icon: + name: ICON Chip 3 (Optional) + description: '* *Icon which should be displayed when chip3 entity is on*' + default: [] + selector: + text: {} + chip04: + name: Chip 4 - Top Menu (Optional) + description: '* *Top Menu Position 7 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip04_icon: + name: ICON Chip 4 (Optional) + description: '* *Icon which should be displayed when chip 4 entity is on*' + default: [] + selector: + text: {} + chip05: + name: Chip 5 - Top Menu (Optional) + description: '* *Top Menu Position 8 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip05_icon: + name: ICON Chip 5 (Optional) + description: '* *Icon which should be displayed when chip 5 entity is on*' + default: [] + selector: + text: {} + chip06: + name: Chip 6 - Top Menu (Optional) + description: '* *Top Menu Position 9 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip06_icon: + name: ICON Chip 6 (Optional) + description: '* *Icon which should be displayed when chip 6 entity is on*' + default: [] + selector: + text: {} + chip07: + name: Chip 7 - Top Menu (Optional) + description: '* *Top Menu Position 10 - Entity for which an icon should be displayed in the top menu when the value is on.*' + default: [] + selector: + entity: + domain: + - binary_sensor + - sensor + - light + - switch + chip07_icon: + name: ICON Chip 7 (Optional) + description: '* *Icon which should be displayed when chip 7 entity is on*' + default: [] + selector: + text: {} hotwatercharge: name: Hot Water Charge (Optional) description: '* *Choose your switch to turn your hot water ON or OFF*' @@ -246,14 +365,6 @@ The goal was to create a version that allows everyone to use the NSpanel fully l domain: - switch - input_boolean - heatingsystemflame: - name: Top Menu 04 (Optional) - description: '* *Top Menu 04 is a Flame icon. When your selected sensor is on, a flame icon is displayed*' - default: [] - selector: - entity: - domain: - - binary_sensor climate: name: Climate to control (Optional) description: '* *If an entity is selected, the **"Thermostat page"** is activated and enabled. If you have **"Underfloor Heating System"** and want to switch it via the relay, you must create a separate climate in HA. See HowTo*' @@ -2311,7 +2422,6 @@ trigger_variables: # current_page: "sensor.{{ nspanel_name }}_current_page" current_page: "sensor.{{ nspanel_name }}_currentpage" hotwatercharge: !input "hotwatercharge" - heatingsystemflame: !input "heatingsystemflame" display_target_temperature: "sensor.{{ nspanel_name }}_display_target_temperature" relay01_entity: "switch.{{ nspanel_name }}_relay_1" relay02_entity: "switch.{{ nspanel_name }}_relay_2" @@ -2368,6 +2478,20 @@ variables: home_value02_icon: !input "home_value02_icon" home_value03: !input "home_value03" home_value03_icon: !input "home_value03_icon" + chip01: !input "chip01" + chip01_icon: !input "chip01_icon" + chip02: !input "chip02" + chip02_icon: !input "chip02_icon" + chip03: !input "chip03" + chip03_icon: !input "chip03_icon" + chip04: !input "chip04" + chip04_icon: !input "chip04_icon" + chip05: !input "chip05" + chip05_icon: !input "chip05_icon" + chip06: !input "chip06" + chip06_icon: !input "chip06_icon" + chip07: !input "chip07" + chip07_icon: !input "chip07_icon" hotwatertemp: !input "hotwatertemp" outdoortemp: !input "outdoortemp" indoortemp: !input "indoortemp" @@ -2424,10 +2548,8 @@ variables: flame_pic_on: "57" # flame_pic_off: "60" top_menu_blank: "60" - thermostat_pic_on: "58" - heat_pic_on: "59" - relay01_pic_on: "105" - relay02_pic_on: "106" + + weather_sunny: "2" @@ -2478,8 +2600,13 @@ variables: button_icon_color_2: "1055" #Blue button_icon_color_3: "63488" #Red - ###### "Weather" NEXTION FONT ICON MAPPING ##### + ###### "GENERAL" NEXTION FONT ICON MAPPING ##### + blank_icon: "徭" #blank macbook bug home_indoor_temp_icon: "" #E50E + relay01_icon: "" #E3A5 + relay02_icon: "" #E3A8 + thermostat_icon: "" #E50E + heat_icon: "" #E50F ###### "BUTTON" NEXTION FONT ICON MAPPING ##### button_icon_unknown: "" #E027 @@ -2498,7 +2625,6 @@ variables: button_icon_climate: "" #E392 ###### "Weather" NEXTION FONT ICON MAPPING ##### - weather_icon_blank: "" #blank weather_icon_rain: "" #E595 weather_icon_sun: "" #E5A7 weather_icon_protect: "" #F05C @@ -3352,12 +3478,54 @@ trigger: entity_id: !input "hotwatercharge" id: hotwatercharge_state - ##### Heating System Flame - Trigger "heatingsystemflame_state" ##### + ##### Chip 01 - Trigger "chip01_state" ##### - platform: event event_type: state_changed event_data: - entity_id: !input "heatingsystemflame" - id: heatingsystemflame_state + entity_id: !input "chip01" + id: chip01_state + + ##### Chip 02 - Trigger "chip02_state" ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input "chip02" + id: chip02_state + + ##### Chip 03 - Trigger "chip03_state" ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input "chip03" + id: chip03_state + + ##### Chip 04 - Trigger "chip04_state" ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input "chip04" + id: chip04_state + + ##### Chip 05 - Trigger "chip05_state" ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input "chip05" + id: chip05_state + + ##### Chip 06 - Trigger "chip06_state" ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input "chip06" + id: chip06_state + + ##### Chip 07 - Trigger "chip07_state" ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input "chip07" + id: chip07_state ##### Relay01 - Trigger "relay01_state" ##### - platform: event @@ -5553,35 +5721,38 @@ action: value_template: '{{ climate |length > 0 }}' then: - variables: - top_menu_climate: >- - {%- if states(climate) == "heat" and state_attr(climate, "hvac_action") != None and state_attr(climate, "hvac_action") == "heating" -%} {{ heat_pic_on }} - {%- elif states(climate) == "heat" -%} {{ thermostat_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_climate: >- + {%- if states(climate) == "heat" and state_attr(climate, "hvac_action") != None and state_attr(climate, "hvac_action") == "heating" -%} {{ heat_icon }} + {%- elif states(climate) == "heat" -%} {{ thermostat_icon }} + {%- else -%} {{ blank_icon }} {%- endif -%} - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_03.pic={{ top_menu_climate }} + component: home.icon_top_03 + message: "{{ chip_climate }}" ##### StatusBar - Relay Symbols ###### - variables: - relay01_pic: >- - {%- if states(relay01_entity) == 'on' -%} {{ relay01_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_relay01: >- + {%- if states(relay01_entity) == 'on' -%} {{ relay01_icon }} + {%- else -%} {{ blank_icon}} {%- endif -%} - relay02_pic: >- - {%- if states(relay02_entity) == 'on' -%} {{ relay02_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_relay02: >- + {%- if states(relay02_entity) == 'on' -%} {{ relay02_icon }} + {%- else -%} {{ blank_icon }} {%- endif -%} - delay: milliseconds: "{{ delay_value }}" - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_01.pic={{ relay01_pic }} + component: home.icon_top_01 + message: "{{ chip_relay01 }}" - delay: milliseconds: "{{ delay_value }}" - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_02.pic={{ relay02_pic }} + component: home.icon_top_02 + message: "{{ chip_relay02 }}" ##### Set notify icon ##### - variables: @@ -5618,21 +5789,43 @@ action: data: cmd: "homebt06_pic.pic={{ home_button_entities }}" - ###### StatusBar - Icon 04 ###### - - if: - - condition: template - value_template: '{{ heatingsystemflame |length > 0 }}' - then: - - variables: - flame_pic: >- - {%- if states(heatingsystemflame) == "on" -%} {{ flame_pic_on }} - {%- else -%} {{ top_menu_blank }} - {%- endif -%} - - delay: - milliseconds: "{{ delay_value }}" - - service: "{{ command_printf }}" - data: - cmd: home.icon_top_04.pic={{ flame_pic }} + ###### CHIPS 01 - 07 - Statusbar 04 - 10 ###### + - repeat: + for_each: + - position: home.icon_top_04 + entity: "{{ chip01 }}" + entity_icon: "{{ chip01_icon }}" + - position: home.icon_top_05 + entity: "{{ chip02 }}" + entity_icon: "{{ chip02_icon }}" + - position: home.icon_top_06 + entity: "{{ chip03 }}" + entity_icon: "{{ chip03_icon }}" + - position: home.icon_top_07 + entity: "{{ chip04 }}" + entity_icon: "{{ chip04_icon }}" + - position: home.icon_top_08 + entity: "{{ chip05 }}" + entity_icon: "{{ chip05_icon }}" + - position: home.icon_top_09 + entity: "{{ chip06 }}" + entity_icon: "{{ chip06_icon }}" + - position: home.icon_top_10 + entity: "{{ chip07 }}" + entity_icon: "{{ chip07_icon }}" + + sequence: + - if: + - condition: template + value_template: '{{ repeat.item.entity |length > 0 }}' + then: + - service: "{{ command_text_printf }}" + data: + component: "{{ repeat.item.position }}" + message: >- + {%- if states(repeat.item.entity) == 'on' -%} {{ repeat.item.entity_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} ## PAGE WEATHE01 ## - conditions: '{{ trigger.event.data.new_state.state == page_weather01 }}' @@ -8405,19 +8598,124 @@ action: data: entity: '{{ entity_long }},{{ entity_back }},{{ entity_long_name }}' - ##### Set Flame-Symbol ##### + ##### CHIP 01 - Trigger - Statusbar 04 ##### - conditions: - condition: trigger - id: heatingsystemflame_state + id: chip01_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" sequence: - variables: - flame_pic: >- - {%- if trigger.event.data.new_state.state == 'on' -%} {{ flame_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip01_icon }} + {%- else -%} {{ blank_icon }} {%- endif -%} - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_04.pic={{ flame_pic }} + component: home.icon_top_04 + message: "{{ chip_icon }}" + + ##### CHIP 02 - Trigger - Statusbar 05 ##### + - conditions: + - condition: trigger + id: chip02_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" + sequence: + - variables: + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip02_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} + - service: "{{ command_text_printf }}" + data: + component: home.icon_top_05 + message: "{{ chip_icon }}" + + ##### CHIP 03 - Trigger - Statusbar 06 ##### + - conditions: + - condition: trigger + id: chip03_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" + sequence: + - variables: + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip03_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} + - service: "{{ command_text_printf }}" + data: + component: home.icon_top_06 + message: "{{ chip_icon }}" + + ##### CHIP 04 - Trigger - Statusbar 07 ##### + - conditions: + - condition: trigger + id: chip04_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" + sequence: + - variables: + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip04_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} + - service: "{{ command_text_printf }}" + data: + component: home.icon_top_07 + message: "{{ chip_icon }}" + + ##### CHIP 05 - Trigger - Statusbar 08 ##### + - conditions: + - condition: trigger + id: chip05_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" + sequence: + - variables: + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip05_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} + - service: "{{ command_text_printf }}" + data: + component: home.icon_top_08 + message: "{{ chip_icon }}" + + ##### CHIP 06 - Trigger - Statusbar 09 ##### + - conditions: + - condition: trigger + id: chip06_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" + sequence: + - variables: + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip06_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} + - service: "{{ command_text_printf }}" + data: + component: home.icon_top_09 + message: "{{ chip_icon }}" + + ##### CHIP 07 - Trigger - Statusbar 10 ##### + - conditions: + - condition: trigger + id: chip07_state + - condition: template + value_template: "{{ states(current_page) == page_home }}" + sequence: + - variables: + chip_icon: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ chip07_icon }} + {%- else -%} {{ blank_icon }} + {%- endif -%} + - service: "{{ command_text_printf }}" + data: + component: home.icon_top_10 + message: "{{ chip_icon }}" ##### Set Relay01-Symbol ##### - conditions: @@ -8425,13 +8723,14 @@ action: id: relay01_state sequence: - variables: - relay01_pic: >- - {%- if trigger.event.data.new_state.state == 'on' -%} {{ relay01_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_relay01: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ relay01_icon }} + {%- else -%} {{ blank_icon }} {%- endif -%} - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_01.pic={{ relay01_pic }} + component: home.icon_top_01 + message: "{{ chip_relay01 }}" ##### Set Relay02-Symbol ##### - conditions: @@ -8439,13 +8738,14 @@ action: id: relay02_state sequence: - variables: - relay02_pic: >- - {%- if trigger.event.data.new_state.state == 'on' -%} {{ relay02_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_relay02: >- + {%- if trigger.event.data.new_state.state == 'on' -%} {{ relay02_icon }} + {%- else -%} {{ blank_icon }} {%- endif -%} - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_02.pic={{ relay02_pic }} + component: home.icon_top_02 + message: "{{ chip_relay02 }}" ##### Sync Hotwater Charge button-symbol ##### - conditions: @@ -8520,14 +8820,15 @@ action: - conditions: '{{ states(current_page) == page_home }}' sequence: - variables: - top_menu_climate: >- - {%- if trigger.event.data.new_state.state == "heat" and trigger.event.data.new_state.attributes.hvac_action is defined and trigger.event.data.new_state.attributes.hvac_action == "heating" -%} {{ heat_pic_on }} - {%- elif trigger.event.data.new_state.state == "heat" -%} {{ thermostat_pic_on }} - {%- else -%} {{ top_menu_blank }} + chip_climate: >- + {%- if trigger.event.data.new_state.state == "heat" and trigger.event.data.new_state.attributes.hvac_action is defined and trigger.event.data.new_state.attributes.hvac_action == "heating" -%} {{ heat_icon }} + {%- elif trigger.event.data.new_state.state == "heat" -%} {{ thermostat_icon }} + {%- else -%} {{ blank_icon }} {%- endif -%} - - service: "{{ command_printf }}" + - service: "{{ command_text_printf }}" data: - cmd: home.icon_top_03.pic={{ top_menu_climate }} + component: home.icon_top_03 + message: "{{ chip_climate }}" ##### Settings Entity changed -> open settings-page ##### - conditions: