@@ -76,13 +76,11 @@ packages:
|
|||||||
6. Buttons now will run an automation
|
6. Buttons now will run an automation
|
||||||
<br>On the previous versions, a button with an automation will enable or disable the automation. Now the button will trigger the automation.
|
<br>On the previous versions, a button with an automation will enable or disable the automation. Now the button will trigger the automation.
|
||||||
<br>If you want the legacy behavior, please create a script to enable/disable the automation and assign this to your button. 😉
|
<br>If you want the legacy behavior, please create a script to enable/disable the automation and assign this to your button. 😉
|
||||||
7. ESP-IDF IS TEMPORARILY UNAVAILABLE
|
|
||||||
|
|
||||||
|
|
||||||
## Overview of noteworthy changes
|
## Overview of noteworthy changes
|
||||||
1. New Upload TFT engine
|
1. New Upload TFT engine
|
||||||
2. Hardware restarts with button hold for 15s
|
2. Hardware restarts with button hold for 15s
|
||||||
3. ~~Support to `esp-idf` framework~~
|
3. Support to `esp-idf` framework
|
||||||
4. Support to 921600 bps
|
4. Support to 921600 bps
|
||||||
5. Font size for chips
|
5. Font size for chips
|
||||||
6. Short click to open Climate and Media Player
|
6. Short click to open Climate and Media Player
|
||||||
@@ -119,18 +117,16 @@ Now if you press the hardware buttons for more than 15s, the panel will act as t
|
|||||||
| Right | Restarts the panel | It is equivalent to press the "Restart" button on the Settings page or from Home Assistant, but is available even when the Wi-Fi isn't connected or Home Assistant is out. |
|
| Right | Restarts the panel | It is equivalent to press the "Restart" button on the Settings page or from Home Assistant, but is available even when the Wi-Fi isn't connected or Home Assistant is out. |
|
||||||
|
|
||||||
|
|
||||||
### 3. ~~Support to `esp-idf` framework~~
|
### 3. Support to `esp-idf` framework
|
||||||
~~Although this project still using ESPHome default framework (currently `arduino`), we started supporting the framework `esp-idf` as this is a recomendation from ESPHome team since an year ago or so.~~
|
Although this project still using ESPHome default framework (currently `arduino`), we started supporting the framework `esp-idf` as this is a recomendation from ESPHome team since an year ago or so.
|
||||||
~~The `arduino` protocol still more popular and therefore more components are available, but there are some advantages with the ESP-IDF framework:~~
|
The `arduino` protocol still more popular and therefore more components are available, but there are some advantages with the ESP-IDF framework:
|
||||||
- ~~It is updated more frequently by EspressIF, which means it is more secure and stable.~~
|
- It is updated more frequently by EspressIF, which means it is more secure and stable.
|
||||||
- ~~It reduces a layer, as Arduino is developed in top of ESP-IDF, so basically we are changing from ESPHome -> Arduino -> ESP-IDF -> Hardware to ESPHome -> ESP-IDF -> Hardware.~~
|
- It reduces a layer, as Arduino is developed in top of ESP-IDF, so basically we are changing from ESPHome -> Arduino -> ESP-IDF -> Hardware to ESPHome -> ESP-IDF -> Hardware.
|
||||||
- ~~By reducing a layer, more memory is available for future features and for the custom components you might want to add to your panel.~~
|
- By reducing a layer, more memory is available for future features and for the custom components you might want to add to your panel.
|
||||||
- ~~The memory management is more efficient, which makes critical tasks, like uploading a TFT file, more reliable.~~
|
- The memory management is more efficient, which makes critical tasks, like uploading a TFT file, more reliable.
|
||||||
~~<br>In the future we will probably make this as the default framework, so if you are a new user or if for some reason you have to flash your panel via serial/usb, it's a good idea to change to ESP-IDF now.~~
|
<br>In the future we will probably make this as the default framework, so if you are a new user or if for some reason you have to flash your panel via serial/usb, it's a good idea to change to ESP-IDF now.
|
||||||
~~<br>Please look at [customizations docs in the Wiki](https://github.com/Blackymas/NSPanel_HA_Blueprint/wiki/(EN)-Customization#framework-esp-idf) for more details on how to change the framework.~~
|
<br>Please look at [customizations docs in the Wiki](https://github.com/Blackymas/NSPanel_HA_Blueprint/wiki/(EN)-Customization#framework-esp-idf) for more details on how to change the framework.
|
||||||
~~<br>-> The ESP-IDF framework will be used when you enable the advanced mode.~~
|
<br>-> The ESP-IDF framework will be used when you enable the advanced mode.
|
||||||
|
|
||||||
> The support to IDF was temporarily removed on v4.1.2
|
|
||||||
|
|
||||||
|
|
||||||
### 4. Support to 921600 bps
|
### 4. Support to 921600 bps
|
||||||
|
|||||||
@@ -13,11 +13,6 @@ substitutions:
|
|||||||
# nextion_update_blank_url: "https://github.com/Blackymas/NSPanel_HA_Blueprint/raw/main/custom_configuration/nspanel_blank.tft"
|
# nextion_update_blank_url: "https://github.com/Blackymas/NSPanel_HA_Blueprint/raw/main/custom_configuration/nspanel_blank.tft"
|
||||||
##############################################
|
##############################################
|
||||||
|
|
||||||
#external_components:
|
|
||||||
# - source: github://pr#5683 # Remove this when that pr is merged
|
|
||||||
# components:
|
|
||||||
# - nextion
|
|
||||||
|
|
||||||
button:
|
button:
|
||||||
##### UPDATE TFT DISPLAY #####
|
##### UPDATE TFT DISPLAY #####
|
||||||
- name: ${device_name} Update TFT display
|
- name: ${device_name} Update TFT display
|
||||||
@@ -94,8 +89,7 @@ script:
|
|||||||
exit_reparse->execute();
|
exit_reparse->execute();
|
||||||
delay_seconds_(2);
|
delay_seconds_(2);
|
||||||
ESP_LOGV(TAG, "Calling upload from Nextion component");
|
ESP_LOGV(TAG, "Calling upload from Nextion component");
|
||||||
disp1->upload_tft();
|
if (disp1->upload_tft()) id(restart_nspanel).press();
|
||||||
id(restart_nspanel).press();
|
|
||||||
ESP_LOGD(TAG, "Turn off Nextion");
|
ESP_LOGD(TAG, "Turn off Nextion");
|
||||||
screen_power->turn_off();
|
screen_power->turn_off();
|
||||||
delay_seconds_(3);
|
delay_seconds_(3);
|
||||||
|
|||||||
@@ -20,9 +20,9 @@ button:
|
|||||||
|
|
||||||
captive_portal:
|
captive_portal:
|
||||||
|
|
||||||
#esp32:
|
esp32:
|
||||||
# framework:
|
framework:
|
||||||
# type: esp-idf
|
type: esp-idf
|
||||||
|
|
||||||
sensor:
|
sensor:
|
||||||
##### Uptime Sensors #####
|
##### Uptime Sensors #####
|
||||||
|
|||||||
@@ -10,6 +10,11 @@ substitutions:
|
|||||||
version: "4.1.2"
|
version: "4.1.2"
|
||||||
#############################
|
#############################
|
||||||
|
|
||||||
|
external_components:
|
||||||
|
- source: github://pr#5825 # Remove this when that pr is merged and released
|
||||||
|
components:
|
||||||
|
- nextion
|
||||||
|
|
||||||
##### ESPHOME CONFIGURATION #####
|
##### ESPHOME CONFIGURATION #####
|
||||||
esphome:
|
esphome:
|
||||||
name: ${device_name}
|
name: ${device_name}
|
||||||
@@ -32,7 +37,7 @@ esphome:
|
|||||||
- script.execute: exit_reparse
|
- script.execute: exit_reparse
|
||||||
- wait_until:
|
- wait_until:
|
||||||
condition:
|
condition:
|
||||||
- lambda: !lambda return disp1->is_setup();
|
- lambda: !lambda return disp1->is_detected();
|
||||||
timeout: 20s
|
timeout: 20s
|
||||||
- lambda: |-
|
- lambda: |-
|
||||||
static const char *const TAG = "on_boot";
|
static const char *const TAG = "on_boot";
|
||||||
@@ -50,7 +55,7 @@ esphome:
|
|||||||
};
|
};
|
||||||
|
|
||||||
nextion_status->execute();
|
nextion_status->execute();
|
||||||
if (not disp1->is_setup()) {
|
if (not disp1->is_detected()) {
|
||||||
ESP_LOGE(TAG, "No response from Nextion display");
|
ESP_LOGE(TAG, "No response from Nextion display");
|
||||||
ESP_LOGD(TAG, "Turn off Nextion");
|
ESP_LOGD(TAG, "Turn off Nextion");
|
||||||
screen_power->turn_off();
|
screen_power->turn_off();
|
||||||
@@ -62,12 +67,12 @@ esphome:
|
|||||||
}
|
}
|
||||||
- wait_until:
|
- wait_until:
|
||||||
condition:
|
condition:
|
||||||
- lambda: !lambda return disp1->is_setup();
|
- lambda: !lambda return disp1->is_detected();
|
||||||
timeout: 20s
|
timeout: 20s
|
||||||
- lambda: |-
|
- lambda: |-
|
||||||
static const char *const TAG = "on_boot";
|
static const char *const TAG = "on_boot";
|
||||||
nextion_status->execute();
|
nextion_status->execute();
|
||||||
if (not disp1->is_setup()) {
|
if (not disp1->is_detected()) {
|
||||||
ESP_LOGE(TAG, "No response from Nextion display");
|
ESP_LOGE(TAG, "No response from Nextion display");
|
||||||
}
|
}
|
||||||
ESP_LOGD(TAG, "Finished");
|
ESP_LOGD(TAG, "Finished");
|
||||||
@@ -1344,7 +1349,7 @@ switch:
|
|||||||
on_turn_on:
|
on_turn_on:
|
||||||
- wait_until:
|
- wait_until:
|
||||||
condition:
|
condition:
|
||||||
- lambda: !lambda return disp1->is_setup();
|
- lambda: !lambda return disp1->is_detected();
|
||||||
timeout: 20s
|
timeout: 20s
|
||||||
- lambda: |-
|
- lambda: |-
|
||||||
if (id(boot_sequence_completed)) {
|
if (id(boot_sequence_completed)) {
|
||||||
@@ -2646,7 +2651,7 @@ script:
|
|||||||
- lambda: |-
|
- lambda: |-
|
||||||
static const char *const TAG = "script.nextion_status";
|
static const char *const TAG = "script.nextion_status";
|
||||||
ESP_LOGD(TAG, "Nextion status:");
|
ESP_LOGD(TAG, "Nextion status:");
|
||||||
//ESP_LOGD(TAG, " Is detected: %s", disp1->is_detected() ? "True" : "False");
|
ESP_LOGD(TAG, " Is detected: %s", disp1->is_detected() ? "True" : "False");
|
||||||
ESP_LOGD(TAG, " Is setup: %s", disp1->is_setup() ? "True" : "False");
|
ESP_LOGD(TAG, " Is setup: %s", disp1->is_setup() ? "True" : "False");
|
||||||
|
|
||||||
##### ADD-ONS ############################################################
|
##### ADD-ONS ############################################################
|
||||||
|
|||||||
Reference in New Issue
Block a user