Tested with the following integrations:
- AccuWeather - Better when forecast is enabled
- Met.no - Better when hourly entity is enabled
- OpenMeteo
- OpenWeatherMap
- SMHI
1. The blueprint will now ask for user to select the panel from the list of ESPHome devices instead of typing it's name, in order to reduce the chance of an error
-> The old name format still supported, so this is not a breaking change.
2. If a weather entity is not provided, the blueprint will pick one weather entity available, if any.
* Use Home Assistant icon selector for icons
Replace all icon selection to Home Assistant native icon selector, improving the user experience.
Note: As not all the MDI icons are available for Nextion, if one of those icons is selected it will be displayed as a question mark `?`.
* Fix button icon when unavailable
Apply fixed from PR#660 into this branch to avoid merging conflicts in the future.
* Supports legacy icon selection
This add the support for legacy icon selection, so icons will still be shown if users install the new version in an environment where icons where previously selected.
This was already implemented on #543 but it was lost later:
As it is now, using minutes: "/1", the time will update every minute, but that could happen when lots of seconds has passed on that minute, making possible the displayed time to be up to 59s late.
By changing that to seconds: 0 if forces the update in the same rate, but always in the first second of a minute, keeping the displayed time always updated.
This reduces the number of parallel instances of the blueprint running. I've done several tests and couldn't see more than 10 instances, so I believe if we should limit the concurrent runs and this will probably be an indication of a problem we want to know about.
This supports users mistyping the NSPanel name in the blueprint settings. One of the most common mistakes is using `-` in the name, instead of `_` and this change will try to replace that when users type the name with this invalid char.
The weather integration is now automatically detected by the Blueprint, based on the attributes provided by the integration itself, so an user selection is not needed anymore.