2 Commits

Author SHA1 Message Date
Edward Firmo
92d7fd429a Reverted back icon size 48
The removal of this font reduced the file size with impact to the UI. The reduced file size didn't made a significant impact to the TFT Upload, so reverting this.
2023-10-21 20:22:34 +02:00
Edward Firmo
007a25bb94 Split set_brightness 2023-10-21 20:12:35 +02:00
8 changed files with 78 additions and 69 deletions

View File

@@ -58,11 +58,11 @@ packages:
- nspanel_esphome_advanced.yaml # activate advanced (legacy) elements - can be useful for troubleshooting - nspanel_esphome_advanced.yaml # activate advanced (legacy) elements - can be useful for troubleshooting
... ...
``` ```
2.
   
## Overview of all changes ## Overview of all changes
1. New Upload TFT engine 1. New Upload TFT engine
2. Smaller TFT file size 2.
   
## Details of all changes ## Details of all changes
@@ -72,15 +72,7 @@ We rebuilt the Upload TFT engine and now it will be using less resources from ES
The original engine from Nextion component still as a fallback in case the new engine fails, but it might be removed in a future version. The original engine from Nextion component still as a fallback in case the new engine fails, but it might be removed in a future version.
### 2. Smaller TFT file size ### 2.
The TFT files are now 15 to 20% smaller when compared to the previous version. This was achieved by removing some icon font sizes, so you will notice difference (a smaller icon) in the following components:
| Pages | Components |
| :--: | :--: |
| settings | bt_reboot<br>bt_sleep |
| cover | cover_open<br>cover_close<br>cover_stop |
| notification<br>confirm | bt_accept<br>bt_clear |
| fan | button_up<br>button_down<br>button_on<br>button_off |
&nbsp; &nbsp;
## Next topics we are currently working on ## Next topics we are currently working on

View File

@@ -520,8 +520,7 @@ api:
if (id(current_page).state == "screensaver") id(disp1).goto_page(id(wakeup_page_name).state.c_str()); if (id(current_page).state == "screensaver") id(disp1).goto_page(id(wakeup_page_name).state.c_str());
if (reset_timer) if (reset_timer)
id(timer_reset_all).execute(id(wakeup_page_name).state.c_str()); id(timer_reset_all).execute(id(wakeup_page_name).state.c_str());
else else {
{
id(timer_sleep).execute(id(wakeup_page_name).state.c_str(), int(id(timeout_sleep).state)); id(timer_sleep).execute(id(wakeup_page_name).state.c_str(), int(id(timeout_sleep).state));
id(timer_dim).execute(id(wakeup_page_name).state.c_str(), int(id(timeout_dim).state)); id(timer_dim).execute(id(wakeup_page_name).state.c_str(), int(id(timeout_dim).state));
} }
@@ -726,6 +725,7 @@ display:
- lambda: |- - lambda: |-
ESP_LOGV("display.disp1.on_setup", "Nextion starting"); ESP_LOGV("display.disp1.on_setup", "Nextion starting");
if (id(current_page).state != "boot") id(disp1).goto_page("boot"); if (id(current_page).state != "boot") id(disp1).goto_page("boot");
id(set_brightness).execute(100);
id(disp1).send_command_printf("bkcmd=3"); id(disp1).send_command_printf("bkcmd=3");
id(disp1).set_component_text_printf("boot.esph_version", "%s", "${version}"); // ### esphome-version ### id(disp1).set_component_text_printf("boot.esph_version", "%s", "${version}"); // ### esphome-version ###
id(disp1).show_component("bt_reboot"); id(disp1).show_component("bt_reboot");
@@ -736,6 +736,7 @@ display:
- lambda: |- - lambda: |-
ESP_LOGV("display.disp1.on_setup", "Publish IP address"); ESP_LOGV("display.disp1.on_setup", "Publish IP address");
id(disp1).set_component_text_printf("boot.ip_addr", "%s", network::get_ip_address().str().c_str()); id(disp1).set_component_text_printf("boot.ip_addr", "%s", network::get_ip_address().str().c_str());
id(set_brightness).execute(100);
ESP_LOGV("display.disp1.on_setup", "Report to Home Assistant"); ESP_LOGV("display.disp1.on_setup", "Report to Home Assistant");
auto ha_event = new esphome::api::CustomAPIDevice(); auto ha_event = new esphome::api::CustomAPIDevice();
ha_event->fire_homeassistant_event("esphome.nspanel_ha_blueprint", ha_event->fire_homeassistant_event("esphome.nspanel_ha_blueprint",
@@ -751,6 +752,7 @@ display:
id(disp1).send_command_printf("settings.brightslider.val=%i", id(display_brightness_global)); id(disp1).send_command_printf("settings.brightslider.val=%i", id(display_brightness_global));
id(disp1).send_command_printf("brightness_dim=%i", id(display_dim_brightness_global)); id(disp1).send_command_printf("brightness_dim=%i", id(display_dim_brightness_global));
id(disp1).send_command_printf("settings.dimslider.val=%i", id(display_dim_brightness_global)); id(disp1).send_command_printf("settings.dimslider.val=%i", id(display_dim_brightness_global));
id(set_brightness).execute(id(display_brightness_global));
id(nextion_init).publish_state(true); id(nextion_init).publish_state(true);
ESP_LOGV("display.disp1.on_setup", "Report to Home Assistant"); ESP_LOGV("display.disp1.on_setup", "Report to Home Assistant");
//auto ha_event = new esphome::api::CustomAPIDevice(); //auto ha_event = new esphome::api::CustomAPIDevice();
@@ -770,21 +772,21 @@ globals:
###### Last volume level from Home Assistant ###### ###### Last volume level from Home Assistant ######
- id: last_volume_level - id: last_volume_level
type: int type: uint
restore_value: false restore_value: false
initial_value: '-1' initial_value: '0'
###### Last duration from Home Assistant ###### ###### Last duration from Home Assistant ######
- id: last_media_duration - id: last_media_duration
type: int type: uint
restore_value: false restore_value: false
initial_value: '-1' initial_value: '0'
###### Last duration from Home Assistant ###### ###### Last duration from Home Assistant ######
- id: last_media_position - id: last_media_position
type: int type: uint
restore_value: false restore_value: false
initial_value: '-1' initial_value: '0'
###### Relay fallback even when buttons have other entities? ###### ###### Relay fallback even when buttons have other entities? ######
- id: relay_1_fallback - id: relay_1_fallback
@@ -798,16 +800,10 @@ globals:
##### Display mode (1 = EU, 2 = US, 3 = US Landscape) ##### Display mode (1 = EU, 2 = US, 3 = US Landscape)
- id: display_mode - id: display_mode
type: int type: uint
restore_value: true restore_value: true
initial_value: '0' initial_value: '0'
##### Is dimmed #####
- id: is_dim_brightness
type: bool
restore_value: false
initial_value: 'false'
##### Entity Id of the entity displayed on the detailed pages ##### Entity Id of the entity displayed on the detailed pages
- id: entity_id - id: entity_id
type: std::string type: std::string
@@ -822,16 +818,22 @@ globals:
##### Save Display Brightness for NSPanel reboot ##### ##### Save Display Brightness for NSPanel reboot #####
- id: display_brightness_global - id: display_brightness_global
type: int type: uint
restore_value: true restore_value: true
initial_value: '100' initial_value: '100'
##### Save Display DIM Brightness for NSPanel reboot ##### Save Display DIM Brightness for NSPanel reboot
- id: display_dim_brightness_global - id: display_dim_brightness_global
type: int type: uint
restore_value: true restore_value: true
initial_value: '10' initial_value: '10'
##### Remember last brighness value sent to Nextion #####
- id: display_last_brightness
type: uint
restore_value: false
initial_value: '100'
##### Temperature unit ##### ##### Temperature unit #####
##### Is embedded sensor used for indoor temperature? ##### ##### Is embedded sensor used for indoor temperature? #####
- id: embedded_indoor_temp - id: embedded_indoor_temp
@@ -849,7 +851,7 @@ globals:
# restore_value: no # restore_value: no
# initial_value: '"%A, %d.%m"' # initial_value: '"%A, %d.%m"'
- id: home_date_color - id: home_date_color
type: int type: uint
restore_value: true restore_value: true
initial_value: '65535' initial_value: '65535'
@@ -858,7 +860,7 @@ globals:
restore_value: no restore_value: no
initial_value: '"%H:%M"' initial_value: '"%H:%M"'
- id: home_time_color - id: home_time_color
type: int type: uint
restore_value: true restore_value: true
initial_value: '65535' initial_value: '65535'
@@ -868,7 +870,7 @@ globals:
restore_value: false restore_value: false
initial_value: '' initial_value: ''
- id: home_relay1_icon_color - id: home_relay1_icon_color
type: int type: uint
restore_value: true restore_value: true
initial_value: '65535' initial_value: '65535'
@@ -877,7 +879,7 @@ globals:
restore_value: false restore_value: false
initial_value: '' initial_value: ''
- id: home_relay2_icon_color - id: home_relay2_icon_color
type: int type: uint
restore_value: true restore_value: true
initial_value: '65535' initial_value: '65535'
@@ -1066,9 +1068,9 @@ number:
id(display_dim_brightness_global) = int(x); id(display_dim_brightness_global) = int(x);
id(disp1).send_command_printf("brightness_dim=%i", int(x)); id(disp1).send_command_printf("brightness_dim=%i", int(x));
id(disp1).send_command_printf("settings.dimslider.val=%i", int(x)); id(disp1).send_command_printf("settings.dimslider.val=%i", int(x));
if (id(current_page).state != "screensaver" and id(is_dim_brightness)) if (id(current_page).state != "screensaver" and (id(display_last_brightness) <= id(display_dim_brightness_global)))
{ {
id(disp1).set_backlight_brightness(x/100); id(set_brightness).execute(x);
id(timer_sleep).execute(id(current_page).state.c_str(), int(id(timeout_sleep).state)); id(timer_sleep).execute(id(current_page).state.c_str(), int(id(timeout_sleep).state));
if (id(current_page).state == "settings") id(disp1).set_component_text_printf("dim_text", "%i%%", int(x)); if (id(current_page).state == "settings") id(disp1).set_component_text_printf("dim_text", "%i%%", int(x));
} }
@@ -1549,7 +1551,7 @@ script:
mode: restart mode: restart
parameters: parameters:
page: string page: string
timeout: int timeout: uint
then: then:
- lambda: |- - lambda: |-
ESP_LOGV("script.timer_page", "Reset timer: %is", timeout); ESP_LOGV("script.timer_page", "Reset timer: %is", timeout);
@@ -1570,18 +1572,16 @@ script:
mode: restart mode: restart
parameters: parameters:
page: string page: string
timeout: int timeout: uint
then: then:
- lambda: |- - lambda: |-
ESP_LOGV("script.timer_dim", "Reset timer: %is", timeout); ESP_LOGV("script.timer_dim", "Reset timer: %is", timeout);
if (id(is_dim_brightness)) if (id(display_last_brightness) <= id(display_dim_brightness_global)
{ and page != "screensaver"
if (page != "screensaver" and page != "boot" and page != "blank-screensaver") and page != "boot"
{ and page != "blank-screensaver") {
ESP_LOGD("script.timer_dim", "Waking up on page: %s", page.c_str()); ESP_LOGD("script.timer_dim", "Waking up on page: %s", page.c_str());
id(disp1).send_command_printf("wakeup_timer.en=1"); id(set_brightness).execute(id(display_brightness_global));
}
id(is_dim_brightness) = false;
} }
- if: - if:
condition: condition:
@@ -1589,17 +1589,17 @@ script:
then: then:
- delay: !lambda return (timeout *1000); - delay: !lambda return (timeout *1000);
- lambda: |- - lambda: |-
if (id(current_page).state != "screensaver" and id(current_page).state != "blank-screensaver" and id(current_page).state != "boot" and timeout >= 1) if (id(current_page).state != "screensaver" and
{ id(current_page).state != "blank-screensaver" and
ESP_LOGD("script.timer_dim", "Dimming the display to %i%%", id(display_dim_brightness_global)); id(current_page).state != "boot" and
id(disp1).send_command_printf("dim=%i", id(display_dim_brightness_global)); timeout >= 1) {
id(is_dim_brightness) = true; id(set_brightness).execute(id(display_dim_brightness_global));
} }
- id: timer_sleep # Handle the sleep (go to screensaver page) after a timeout - id: timer_sleep # Handle the sleep (go to screensaver page) after a timeout
mode: restart mode: restart
parameters: parameters:
page: string page: string
timeout: int timeout: uint
then: then:
- lambda: |- - lambda: |-
ESP_LOGV("script.timer_sleep", "Reset timer: %is", timeout); ESP_LOGV("script.timer_sleep", "Reset timer: %is", timeout);
@@ -1610,11 +1610,28 @@ script:
then: then:
- delay: !lambda return (timeout *1000); - delay: !lambda return (timeout *1000);
- lambda: |- - lambda: |-
if (id(current_page).state != "screensaver" and id(current_page).state != "boot" and timeout >= 1) if (id(current_page).state != "screensaver" and
{ id(current_page).state != "boot" and
timeout >= 1) {
ESP_LOGD("script.timer_sleep", "Going to sleep from page %s", id(current_page).state.c_str()); ESP_LOGD("script.timer_sleep", "Going to sleep from page %s", id(current_page).state.c_str());
id(disp1).goto_page("screensaver"); id(disp1).goto_page("screensaver");
id(is_dim_brightness) = true; id(set_brightness).execute(0);
}
- id: set_brightness
mode: restart
parameters:
brightness: uint
then:
- lambda: |-
ESP_LOGD("script.set_brightness", "brightness: %i%%", brightness);
if (id(current_page).state != "screensaver") {
if (brightness == id(display_brightness_global)) {
id(disp1).send_command_printf("wakeup_timer.en=1");
} else {
id(disp1).set_backlight_brightness(static_cast<float>(brightness) / 100.0f);
}
id(display_last_brightness) = brightness;
} }
- id: set_climate - id: set_climate
@@ -1622,8 +1639,8 @@ script:
parameters: parameters:
current_temp: float current_temp: float
target_temp: float target_temp: float
temp_step: int temp_step: uint
total_steps: int total_steps: uint
temp_offset: int temp_offset: int
climate_icon: string climate_icon: string
embedded_climate: bool embedded_climate: bool
@@ -1885,8 +1902,8 @@ script:
mode: restart mode: restart
parameters: parameters:
component: string component: string
action: int action: uint
mode: int mode: uint
then: then:
- lambda: |- - lambda: |-
switch (action) // CLIMATE_ACTION_OFF = 0, CLIMATE_ACTION_COOLING = 2, CLIMATE_ACTION_HEATING = 3, CLIMATE_ACTION_IDLE = 4, CLIMATE_ACTION_DRYING = 5, CLIMATE_ACTION_FAN = 6 switch (action) // CLIMATE_ACTION_OFF = 0, CLIMATE_ACTION_COOLING = 2, CLIMATE_ACTION_HEATING = 3, CLIMATE_ACTION_IDLE = 4, CLIMATE_ACTION_DRYING = 5, CLIMATE_ACTION_FAN = 6
@@ -1972,7 +1989,7 @@ script:
parameters: parameters:
component: string component: string
text: string text: string
line_length_limit: int line_length_limit: uint
then: then:
- lambda: |- - lambda: |-
int startPos = 0; int startPos = 0;
@@ -2079,9 +2096,9 @@ script:
id(entity_id) = ""; id(entity_id) = "";
} }
if (page != "media_player") { if (page != "media_player") {
id(last_volume_level) = -1; id(last_volume_level) = 0;
id(last_media_duration) = -1; id(last_media_duration) = 0;
id(last_media_position) = -1; id(last_media_position) = 0;
} }
// Report new page to logs // Report new page to logs

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.