From 631516f7c6540e242b82d8effbdd153e2010c5e3 Mon Sep 17 00:00:00 2001 From: Andy Thomas Date: Thu, 7 Mar 2024 09:25:42 +0100 Subject: [PATCH 1/5] Update 'compiling errors' doc --- docs/error_compiling.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/docs/error_compiling.md b/docs/error_compiling.md index d8a2158..aedbb01 100644 --- a/docs/error_compiling.md +++ b/docs/error_compiling.md @@ -1,17 +1,20 @@ # Compiling Errors Guide -The most common cases for compiling errors are related to build files needing to be cleaned up and to lack of resourced on your ESPHome comoiler host. +The most common cases for compiling errors are related to build files needing to be cleaned up and the lack of resources on your ESPHome compiler host. These are our suggestions for both cases: ## Clean-up build files -Go to your ESPHome Dashboard, click the 3-dot meny related to your device and then "**Clean Build Files**": +Go to your ESPHome Dashboard, click the 3-dot menu related to your device and then "**Clean Build Files**": ![image](https://raw.githubusercontent.com/Blackymas/NSPanel_HA_Blueprint/dev/docs/pics/esphome_dashboard_clean_build_files.png) ## Limited resources on ESPHome compiler host ### Free Up Server Resources -1. Add the following to your device's YAML to reduce resource usage (this may slow down the compilation process): + +1. First, please check the available memory of the ESPHome compiler host. 4GB of memory are recommended if you are installing ESPHome as a Home Assistant add-on. Therefore, a RasPi 4 with 4GB RAM is the minimum if you are using a Raspberry Pi. A manual installation requires at least 2GB of memory and 500MB of swap space or 3GB of memory. With less memory the compiler will crash! + +2. Add the following to your device's YAML to reduce resource usage (this may slow down the compilation process): ```yaml # Limit the amount of resources used for compiling @@ -23,15 +26,15 @@ Go to your ESPHome Dashboard, click the 3-dot meny related to your device and th > Place this in a dedicated customization section in your YAML for easier maintenance, similar to [this example](https://github.com/Blackymas/NSPanel_HA_Blueprint/blob/main/docs/customization.md#instructions). -2. Restart your host system, not just Home Assistant. Use the advanced options to **Reboot system**, which also restarts add-ons and can free up memory. +3. Restart your host system, not just Home Assistant. Use the advanced options to **Reboot system**, which also restarts add-ons and can free up memory. -3. Temporarily stop non-essential add-ons in Home Assistant, especially resource-intensive ones like Studio Code Server. +4. Temporarily stop non-essential add-ons in Home Assistant, especially resource-intensive ones like Studio Code Server. -4. [Clean up build files](#clean-up-build-files) +5. [Clean up build files](#clean-up-build-files) -5. Try compiling again. +6. Try compiling again. -6. After completion, restart your host system to reactivate the stopped add-ons. +7. After completion, restart your host system to reactivate the stopped add-ons. ### Compile Using Your Computer 1. Install ESPHome on your computer (Windows, Mac, or Linux) following this guide: [Installing ESPHome Manually](https://esphome.io/guides/installing_esphome.html). From 9f24df32c4d913674d24ebd9681c027a7d47ddb9 Mon Sep 17 00:00:00 2001 From: Andy Thomas Date: Thu, 7 Mar 2024 09:36:54 +0100 Subject: [PATCH 2/5] Update 'Blueprint' doc --- docs/blueprint.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/blueprint.md b/docs/blueprint.md index fbbc31b..ecefef4 100644 --- a/docs/blueprint.md +++ b/docs/blueprint.md @@ -19,7 +19,7 @@ For an easier overview, the menu items "Icon Color" and "Label Color" will not b You will be presented with a list of all of your ESPHome ESP32 devices and you must select your panel from the list. -This is technically the only required field, as basic functionality will be available when the Blueprint knows to which panel it have to send the settings. +This is technically the only required field, as basic functionality will be available when the Blueprint knows to which panel it has to send the settings. > [!NOTE] > You cannot have more than one blueprint based automation per each panel @@ -90,22 +90,22 @@ The behavior of these buttons will depend on the entity's domain (light, media p ## Alarm Control Panel An alarm control panel entity can be controlled by your panel. -When you assign the entity here, it's icon will be shown as a button on the Home page. +When you assign the entity here, its icon will be shown as a button on the Home page. ## Climate ### Climate to Control (Optional) Here you select the main climate entity controlled by your panel. -It's temperature will be used on the Home page and by clicking on that value you will be able to control the climate settings. +Its temperature will be used on the Home page and by clicking on that value you will be able to control the climate settings. -You can optionally use your panel to control a climate system locally, using it's temperature sensor and relays. -You will find more details about this on the Add-on Climate docummentation. +You can optionally use your panel to control a climate system locally, using its temperature sensor and relays. +You will find more details about this on the Add-on Climate documentation. -If you are using the Add-on Climate, it will create a climate entity in your panel's device page. +If you are using the climate add-on, it will create a climate entity in your panel's device page. You still have to select that entity on this field in the blueprint settings to have it used as your main climate. -Additional climate entities can be assigned to buttons and will be explained later in this documment. +Additional climate entities can be assigned to buttons and will be explained later in this document. On the blueprint settings, you will also find settings for sensors and custom buttons to be shown on all the climate pages. @@ -118,7 +118,7 @@ Activates the QR Code page and shows the QR Code button on the Home page. ### QR Code content (Optional) String, which is shown as a QR Code on the NSPanel. -This can be a simple text, a URL or could also be used for a simplified login to the Wi-Fi. +This can be a simple text, an URL or could also be used for a simplified login to the Wi-Fi. Here is an example (simply change SSID and password to your credentials and either use "WPA" or "WEP"): `WIFI:S:SSID;T:WPA/WEP;P:PASSWORD;;` From 33c3d55879f964e0752dfdf467b6a7aa43c8b57d Mon Sep 17 00:00:00 2001 From: Andy Thomas Date: Thu, 7 Mar 2024 12:44:01 +0100 Subject: [PATCH 3/5] Update climate addon docs Include a concrete example with data. --- docs/addon_climate.md | 40 +++++++++++++++++++++++++++++---- docs/pics/addon_underfloor.png | Bin 0 -> 111281 bytes 2 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 docs/pics/addon_underfloor.png diff --git a/docs/addon_climate.md b/docs/addon_climate.md index f83d703..d353f54 100644 --- a/docs/addon_climate.md +++ b/docs/addon_climate.md @@ -21,6 +21,9 @@ Don't use it for directly power your cooler/heater if exceeding the panel specif You will need to add the reference to `addon_climate_heat`, `addon_climate_cool` or `addon_climate_dual` files on your ESPHome settings in the `package` section and after the `remote_package` (base code), as shown bellow (for `heat` in this example): +> [!NOTE] +> From time to time, there are changes in ESPHome that lead to an added `_2` for the embedded thermostats. If you encounter this issue, please have a look at this [entry](https://community.home-assistant.io/t/esphome-devices-all-renamed-with-2-added/388146) in the Home Assistent Forum. + ```yaml substitutions: # Settings - Editable values @@ -81,9 +84,9 @@ heat_overrun|Optional|Number representing a temperature hysteresis in the select - For more details on the keys, please take a look at [ESPHome Base Climate Configurations](https://esphome.io/components/climate/index.html#base-climate-configuration) and [ESPHome Climate Thermostat - Additional actions behavior](https://esphome.io/components/climate/thermostat.html#additional-actions-behavior). -### Examples +## Examples -#### Cooler +### Cooler ```yaml substitutions: @@ -122,7 +125,7 @@ packages: refresh: 300s ``` -#### Heater +### Heater ```yaml substitutions: @@ -161,7 +164,7 @@ packages: refresh: 300s ``` -#### Dual +### Dual ```yaml substitutions: @@ -202,3 +205,32 @@ packages: - nspanel_esphome_addon_climate_dual.yaml refresh: 300s ``` + +### Concrete example: (Water) underfloor heating + +The NSPanel is particularly nice as a replacement for existing water underfloor heating controllers. They are installed at approximately eye level and (often) supplied by 230V. In my case, the valve is type 'normally closed,' i.e. an open relay corresponds to 'no heating.' I am using relay #1. Please note that this is _not_ a PID controller, but simply on-off. At a certain value, the heating starts and at another value it switches off again. These value were set to `0.3°C` below and `0.1°C` above the setpoint, respectively. It turned out that `0.3`and `0.1` worked well for all off our 4 rooms. The minimum settable value is `15°C`, the maximum `22°C` and the granularity (step size) is `0.1°C`. In addition, I chose to set the default temperature to `21.2°C`. + +```yaml + ##### addon-configuration ##### + ## addon_climate ## + heater_relay: "1" #Use relay 1 + temp_min: "15" + temp_max: "22" + temp_step: "0.1" + cold_tolerance: "0.3" + hot_tolerance: "0.1" + + ##### CHANGE ME END ##### +climate: + - id: !extend thermostat_embedded + preset: + - name: Home + default_target_temperature_low: 21.2 + mode: "heat" +``` + +Please note, that any filter that smoothes the temperature readings (e.g. averaging) is discouraged since it slows the response times of the already slow underwater floor heater. The temperature stability is quite nice which can be seen in the following viewgraph. + +![temperature vs time](pics/addon_underfloor.png) + +Mar 5 at approx. 9.30am, the window was opened and all heaters were set to 'off.' \ No newline at end of file diff --git a/docs/pics/addon_underfloor.png b/docs/pics/addon_underfloor.png new file mode 100644 index 0000000000000000000000000000000000000000..9a80f7cd1f77090531e24e0645d8e2b1cd012254 GIT binary patch literal 111281 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 literal 0 HcmV?d00001 From 2ebc92439c06a98c0ec4792a70e595fc5cc4e2be Mon Sep 17 00:00:00 2001 From: Andy Thomas Date: Thu, 7 Mar 2024 13:00:35 +0100 Subject: [PATCH 4/5] Lint --- docs/addon_climate.md | 16 +++++++++++++--- docs/error_compiling.md | 5 ++++- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/docs/addon_climate.md b/docs/addon_climate.md index d353f54..ccaee15 100644 --- a/docs/addon_climate.md +++ b/docs/addon_climate.md @@ -22,7 +22,8 @@ You will need to add the reference to `addon_climate_heat`, `addon_climate_cool` and after the `remote_package` (base code), as shown bellow (for `heat` in this example): > [!NOTE] -> From time to time, there are changes in ESPHome that lead to an added `_2` for the embedded thermostats. If you encounter this issue, please have a look at this [entry](https://community.home-assistant.io/t/esphome-devices-all-renamed-with-2-added/388146) in the Home Assistent Forum. +> From time to time, there are changes in ESPHome that lead to an added `_2` for the embedded thermostats. +> If you encounter this issue, please have a look at this [entry](https://community.home-assistant.io/t/esphome-devices-all-renamed-with-2-added/388146) in the Home Assistent Forum. ```yaml substitutions: @@ -208,7 +209,15 @@ packages: ### Concrete example: (Water) underfloor heating -The NSPanel is particularly nice as a replacement for existing water underfloor heating controllers. They are installed at approximately eye level and (often) supplied by 230V. In my case, the valve is type 'normally closed,' i.e. an open relay corresponds to 'no heating.' I am using relay #1. Please note that this is _not_ a PID controller, but simply on-off. At a certain value, the heating starts and at another value it switches off again. These value were set to `0.3°C` below and `0.1°C` above the setpoint, respectively. It turned out that `0.3`and `0.1` worked well for all off our 4 rooms. The minimum settable value is `15°C`, the maximum `22°C` and the granularity (step size) is `0.1°C`. In addition, I chose to set the default temperature to `21.2°C`. +The NSPanel is particularly nice as a replacement for existing water underfloor heating controllers. +They are installed at approximately eye level and (often) supplied by 230V. +In my case, the valve is type 'normally closed,' i.e. an open relay corresponds to 'no heating.' +I am using relay #1. Please note that this is _not_ a PID controller, but simply on-off. +At a certain value, the heating starts and at another value it switches off again. +These value were set to `0.3°C` below and `0.1°C` above the setpoint, respectively. +It turned out that `0.3`and `0.1` worked well for all off our 4 rooms. +The minimum settable value is `15°C`, the maximum `22°C` and the granularity (step size) is `0.1°C`. +In addition, I chose to set the default temperature to `21.2°C`. ```yaml ##### addon-configuration ##### @@ -229,7 +238,8 @@ climate: mode: "heat" ``` -Please note, that any filter that smoothes the temperature readings (e.g. averaging) is discouraged since it slows the response times of the already slow underwater floor heater. The temperature stability is quite nice which can be seen in the following viewgraph. +Please note, that any filter that smoothes the temperature readings (e.g. averaging) is discouraged since it slows the response times of the already slow underwater floor heater. +The temperature stability is quite nice which can be seen in the following viewgraph. ![temperature vs time](pics/addon_underfloor.png) diff --git a/docs/error_compiling.md b/docs/error_compiling.md index aedbb01..3a544d0 100644 --- a/docs/error_compiling.md +++ b/docs/error_compiling.md @@ -12,7 +12,10 @@ Go to your ESPHome Dashboard, click the 3-dot menu related to your device and th ## Limited resources on ESPHome compiler host ### Free Up Server Resources -1. First, please check the available memory of the ESPHome compiler host. 4GB of memory are recommended if you are installing ESPHome as a Home Assistant add-on. Therefore, a RasPi 4 with 4GB RAM is the minimum if you are using a Raspberry Pi. A manual installation requires at least 2GB of memory and 500MB of swap space or 3GB of memory. With less memory the compiler will crash! +1. First, please check the available memory of the ESPHome compiler host. 4GB of memory are recommended if you are installing ESPHome as a Home Assistant add-on. +Therefore, a RasPi 4 with 4GB RAM is the minimum if you are using a Raspberry Pi. +A manual installation requires at least 2GB of memory and 500MB of swap space or 3GB of memory. +With less memory the compiler will crash! 2. Add the following to your device's YAML to reduce resource usage (this may slow down the compilation process): From ae090a24819bfd97187eaf965d0a3f1c2bf3bbfa Mon Sep 17 00:00:00 2001 From: Edward Firmo <94725493+edwardtfn@users.noreply.github.com> Date: Fri, 8 Mar 2024 09:50:36 +0100 Subject: [PATCH 5/5] Added thanks in the release notes --- ReleaseNotes.md | 6 +++++- docs/addon_climate.md | 34 ++++++++++++++++------------------ 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/ReleaseNotes.md b/ReleaseNotes.md index 0e64d53..6216657 100644 --- a/ReleaseNotes.md +++ b/ReleaseNotes.md @@ -213,7 +213,11 @@ or our [online documentation](https://github.com/Blackymas/NSPanel_HA_Blueprint/ Discover our upcoming projects in our [Milestones](https://github.com/Blackymas/NSPanel_HA_Blueprint/milestones?direction=asc&sort=title&state=open). ## Special Thanks -*Details to be added.* +We extend our heartfelt thanks to the contributors who have played a pivotal role in enhancing the NSPanel's capabilities and documentation in this release: +- **@shing6326**: For diligently addressing and fixing issues related to the new Fan oscillating feature. +Your efforts have significantly improved its functionality and reliability (#1839). +- **@andythomas**: For the comprehensive enhancements made to our documentation. +Your contributions have made our guides more informative and accessible, enriching the user experience for everyone (#1865). ## Previous releases - [v4.2.6 - Enhancing Stability and User Experience](https://github.com/Blackymas/NSPanel_HA_Blueprint/releases/tag/v4.2.6) diff --git a/docs/addon_climate.md b/docs/addon_climate.md index ccaee15..09cb514 100644 --- a/docs/addon_climate.md +++ b/docs/addon_climate.md @@ -22,8 +22,8 @@ You will need to add the reference to `addon_climate_heat`, `addon_climate_cool` and after the `remote_package` (base code), as shown bellow (for `heat` in this example): > [!NOTE] -> From time to time, there are changes in ESPHome that lead to an added `_2` for the embedded thermostats. -> If you encounter this issue, please have a look at this [entry](https://community.home-assistant.io/t/esphome-devices-all-renamed-with-2-added/388146) in the Home Assistent Forum. +> Occasionally, ESPHome updates may result in the `entity_id` of embedded thermostats being appended with `_2`. +> If you experience this change, refer to this [forum post](https://community.home-assistant.io/t/esphome-devices-all-renamed-with-2-added/388146) on the Home Assistant Forum for guidance. ```yaml substitutions: @@ -207,17 +207,15 @@ packages: refresh: 300s ``` -### Concrete example: (Water) underfloor heating - -The NSPanel is particularly nice as a replacement for existing water underfloor heating controllers. -They are installed at approximately eye level and (often) supplied by 230V. -In my case, the valve is type 'normally closed,' i.e. an open relay corresponds to 'no heating.' -I am using relay #1. Please note that this is _not_ a PID controller, but simply on-off. -At a certain value, the heating starts and at another value it switches off again. -These value were set to `0.3°C` below and `0.1°C` above the setpoint, respectively. -It turned out that `0.3`and `0.1` worked well for all off our 4 rooms. -The minimum settable value is `15°C`, the maximum `22°C` and the granularity (step size) is `0.1°C`. -In addition, I chose to set the default temperature to `21.2°C`. +### Real Use Case Example: Water Underfloor Heating with NSPanel +The NSPanel works nicely as a replacement for existing water underfloor heating controllers, installed at eye level and often powered by 100-240VAC. +In my specific use case, the control valve is of the 'normally closed' type, meaning that an open relay indicates 'no heating.' +I have utilized relay #1 for this purpose. It's important to note that this setup does not act as a PID controller but operates on a simple on-off mechanism. +The system initiates heating at a preset value below and turns it off at a value above the set point. +I have set these values to `0.3°C` below and `0.1°C` above the target temperature, respectively. +These adjustments, `0.3` and `0.1`, have been effectively maintaining the desired temperature in all of our four rooms. +The thermostat's settings range from a minimum of `15°C` to a maximum of `22°C`, with a granularity of `0.1°C` for adjustments. +Furthermore, I have selected `21.2°C` as the default target temperature. ```yaml ##### addon-configuration ##### @@ -238,9 +236,9 @@ climate: mode: "heat" ``` -Please note, that any filter that smoothes the temperature readings (e.g. averaging) is discouraged since it slows the response times of the already slow underwater floor heater. -The temperature stability is quite nice which can be seen in the following viewgraph. +Please note that employing any filter to smooth the temperature readings, such as averaging, is discouraged. +Such filtering methods can delay the response times of an already slow underfloor heating system. +Despite this, the temperature stability achieved is quite satisfactory, as illustrated in the graph below. -![temperature vs time](pics/addon_underfloor.png) - -Mar 5 at approx. 9.30am, the window was opened and all heaters were set to 'off.' \ No newline at end of file +![Temperature vs Time](pics/addon_underfloor.png) +*On March 5th, around 9:30 PM, a window was opened, and all heaters were set to 'off.'*