Sonoff NSPanel Blueprint - Configure your own custom NSPanel easy via a Blueprint

I have been running four panels for about 8 months now; I appreciate the effort and time put into the project and I’m excited to see the 4.0 changes.

I have upgraded my panels several times before without issue. Unfortunately, I too am experiencing the slow Nextion TFT upload issue and have come here to gain any insight. I tried about a dozen times yesterday on two panels to get the TFT code uploaded between both a local http server and the GitHub, but ultimately gave in to letting it run its course, 30 hours / 50% into the upload now, and fingers crossed. Otherwise, I’m thinking I will try to roll back HA to previous version of ESP Home & Blueprint template in an attempt to re-load the 3.4 TFT back.

UPDATE 9/29:
I did let the slow upload finish only to result in a white screen & “System Data ERROR!” message.
Then, I proceeded to revert ESP Home to 8.3 and downgraded the NS Panel.

Reverted the following files to v3.4.

  • nspanel_blueprint.yaml
  • nspanel_eu.tft
  • nspanel_esphome.yaml

When attempting to Update the TFT display, it was still extremely slow to upload.

However, what ultimately worked was loading nspanel_blank.tft, followed by 4.0 nspanel_eu.tft, using the v3.4 “nspanel_esphome.yaml”

Using this method I was able to upload the Nextion FTF files on all four panels without issue on the first try within about 15 minutes each.

The good news is, I am back to a known working state.
Once the 4.0.2 TFT file was loaded to the Nextion, I was able to update the blueprint & ESP Home yaml to 4.0 files followed by updating ESP Home back to 2023.9.1 and finally HA Core 2023.9.3 with everything continuing to stay functional.

1 Like

Thank You Edward for the new features!

I love the Custom buttons on the Home page. ( I’m able to free up one of my hardware buttons for another function)

I spent some time with the Media Player page. I do like the design, however as the other guys stated in the beta form, the ability to group and control more than one speaker will make this a daily go-to. Currently, all my Sonos speakers will follow the master to play/pause the group, however, the volume control will only control the single entity defined. At the moment, I handle this function on the Button Page, and have volume up & down buttons pointing to scripts to make a service call out to Sonos and include the entrees I wish to adjust the volumes for. So maybe all the grouping logic doesn’t need to be handled in the panel itself. I do appreciate the effort and making the media player a reality and understand this is the first release of the media player.

Thanks again for the hard work, please let me know how I can buy you a pizza and ice cream. :pizza: :icecream:

1 Like

I updated my panel today and I love the new features. Thanks so much for all the great work you do!

1 Like

Finally all updated to 4.0.2 with also the TFT to be updated.

Some caveats I had mentioned in a previous post that the TFP update took 3days(!!!) using either a local tft or github file.

What I figured out was that during validation my Hass.io (running latest version) on RaspberryPi 4 slowed down or even frozen with the ingress ESPHome logs showing. What I did was rebooting/restarting Homeassistant multiple times before/after validation, installation and TFT update and finally it worked.

What I also found, as I am using the EU TFT version, was that uploading a blank .tft file first, then editing the .yaml file back to the nspanel TFT file, reinstalling and updating the TFT with the proper file worked smoothly. The blank TFT file is just showing a QR code (didn’t scan it btw) but it updates really fast as the file is much slower that the nspanel_eu.tft.

I found many users struggling with nspanel updates, wrong/no version of nspanel showing in Homeassistant and connection timeouts. So when running on a low resource appliance ESPHome obviously is having a massive impact on the platform itself, however it would be worth installing the blank TFT before using the proper one.

All working via Wifi not requiring re-opening the nspanel and connecting it via serial or using the Nextion Editor like some people did.

This is what I added to my .yaml file for installing the blank TFT display:
nextion_update_url: "https://raw.githubusercontent.com/Blackymas/NSPanel_HA_Blueprint/dev/custom_configuration/nspanel_blank.tft"

1 Like

I’m looking for a simple way to let my Nspanel sleep during the night, as it was before version 4.0
I updated all to 4.0.2. But I did not get it done. Who fixed it?

Set the Timeout Sleep to any value grater than 0 and it should work.

Or if you are looking for something that changes during the day, you can take a look at this: Sleep mode switch removed in v4.0? · Issue #1060 · Blackymas/NSPanel_HA_Blueprint · GitHub

How it was before? Do you had an automation to change the switch? Share that here and I can try to suggest something.

1 Like

I try to install 4.0.2 over wifi but probably brick my device.
LCD shows: "
Model does not match
Device Model :
XXXXXXX


Any advice ?

LOG :slight_smile: INFO ESPHome 2023.9.3
INFO Reading configuration /config/esphome/nsblack.yaml…
INFO Updating https://github.com/Blackymas/NSPanel_HA_Blueprint@main
INFO Detected timezone ‘Europe/Athens’
WARNING GPIO4 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See Frequently Asked Questions — ESPHome
INFO Starting log output from nsblack.local using esphome API
INFO Successfully connected to nsblack.local
[22:43:29][I][app:102]: ESPHome version 2023.9.3 compiled on Oct 4 2023, 22:28:13
[22:43:29][C][wifi:546]: WiFi:
[
[22:43:29][C][wifi:383]: SSID: [redacted]
[22:43:29][C][wifi:384]: IP Address: 192.168.1.185
[22:43:29][C][wifi:386]: BSSID: [redacted]
[22:43:29][C][wifi:387]: Hostname: ‘nsblack’
[22:43:29][C][wifi:389]: Signal strength: -53 dB ▂▄▆█
[22:43:29][C][wifi:393]: Channel: 11
[22:43:29][C][wifi:394]: Subnet: 255.255.255.0
[22:43:29][C][wifi:395]: Gateway: 192.168.1.1
[22:43:29][C][wifi:396]: DNS1: 192.168.1.1
[22:43:29][C][wifi:397]: DNS2: 0.0.0.0
[22:43:30][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:30][W][nextion:072]: Nextion is not connected!
[22:43:30][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:30][W][component:205]: Components should block for at most 20-30ms.
[22:43:30][C][logger:357]: Logger:
[22:43:30][C][logger:358]: Level: DEBUG
[22:43:30][C][logger:359]: Log Baud Rate: 115200
[22:43:30][C][logger:361]: Hardware UART: UART0
[22:43:30][C][uart.arduino_esp32:124]: UART Bus 1:
[22:43:30][C][uart.arduino_esp32:125]: TX Pin: GPIO16
[22:43:30][C][uart.arduino_esp32:126]: RX Pin: GPIO17
[22:43:30][C][uart.arduino_esp32:128]: RX Buffer Size: 256
[22:43:30][C][uart.arduino_esp32:130]: Baud Rate: 115200 baud
[22:43:30][C][uart.arduino_esp32:131]: Data Bits: 8
[22:43:30][C][uart.arduino_esp32:132]: Parity: NONE
[22:43:30][C][uart.arduino_esp32:133]: Stop bits: 1
[22:43:30][C][ledc.output:164]: LEDC Output:
[22:43:30][C][ledc.output:165]: Pin GPIO21
[22:43:30][C][ledc.output:166]: LEDC Channel: 0
[22:43:30][C][ledc.output:167]: PWM Frequency: 1000.0 Hz
[22:43:30][C][ledc.output:168]: Bit depth: 16
[22:43:30][C][template.binary_sensor:028]: Template Binary Sensor ‘nsblack Nextion display’
[22:43:30][C][template.binary_sensor:028]: Device Class: ‘connectivity’
[22:43:30][C][uptime.sensor:031]: Uptime Sensor ‘nsblack Uptime seconds’
[22:43:30][C][uptime.sensor:031]: Device Class: ‘duration’
[22:43:30][C][uptime.sensor:031]: State Class: ‘total_increasing’
[22:43:30][C][uptime.sensor:031]: Unit of Measurement: ‘s’
[22:43:30][C][uptime.sensor:031]: Accuracy Decimals: 0
[22:43:30][C][uptime.sensor:031]: Icon: ‘mdi:timer-outline’
[22:43:30][C][template.sensor:022]: Template Sensor ‘nsblack API uptime’
[22:43:30][C][template.sensor:022]: Device Class: ‘timestamp’
[22:43:30][C][template.sensor:022]: State Class: ‘’
[22:43:30][C][template.sensor:022]: Unit of Measurement: ‘’
[22:43:30][C][template.sensor:022]: Accuracy Decimals: 0
[22:43:30][C][template.sensor:023]: Update Interval: never
[22:43:30][C][template.sensor:022]: Template Sensor ‘nsblack Device uptime’
[22:43:30][C][template.sensor:022]: Device Class: ‘timestamp’
[22:43:30][C][template.sensor:022]: State Class: ‘’
[22:43:30][C][template.sensor:022]: Unit of Measurement: ‘’
[22:43:30][C][template.sensor:022]: Accuracy Decimals: 0
[22:43:30][C][template.sensor:023]: Update Interval: never
[22:43:30][C][template.text_sensor:020]: Template Sensor ‘nsblack Notification Label’
[22:43:30][C][template.text_sensor:020]: Template Sensor ‘nsblack Notification Text’
[22:43:30][C][switch.gpio:068]: GPIO Switch ‘nsblack Screen Power’
[22:43:30][C][switch.gpio:091]: Restore Mode: always ON
[22:43:30][C][switch.gpio:031]: Pin: GPIO4
[22:43:30][C][template.number:050]: Template Number ‘nsblack Display Brightness’
[22:43:30][C][template.number:050]: Unit of Measurement: ‘%’
[22:43:30][C][template.number:051]: Optimistic: YES
[22:43:30][C][template.number:052]: Update Interval: 60.0s
[22:43:30][C][template.number:050]: Template Number ‘nsblack Display Brightness Dimdown’
[22:43:30][C][template.number:050]: Unit of Measurement: ‘%’
[22:43:30][C][template.number:051]: Optimistic: YES
[22:43:30][C][template.number:052]: Update Interval: 60.0s
[22:43:30][C][template.number:050]: Template Number ‘nsblack Temperature Correction’
[22:43:30][C][template.number:050]: Unit of Measurement: ‘°C’
[22:43:30][C][template.number:051]: Optimistic: YES
[22:43:30][C][template.number:052]: Update Interval: 60.0s
[22:43:30][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:30][W][nextion:072]: Nextion is not connected!
[22:43:30][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:30][W][component:205]: Components should block for at most 20-30ms.
[22:43:30][C][template.number:050]: Template Number ‘nsblack Timeout Page’
[22:43:30][C][template.number:050]: Icon: ‘mdi:timer’
[22:43:30][C][template.number:050]: Unit of Measurement: ‘s’
[22:43:30][C][template.number:051]: Optimistic: YES
[22:43:30][C][template.number:052]: Update Interval: 60.0s
[22:43:30][C][template.number:050]: Template Number ‘nsblack Timeout Dimming’
[22:43:30][C][template.number:050]: Icon: ‘mdi:timer’
[22:43:30][C][template.number:050]: Unit of Measurement: ‘s’
[22:43:30][C][template.number:051]: Optimistic: YES
[22:43:30][C][template.number:052]: Update Interval: 60.0s
[22:43:30][C][template.number:050]: Template Number ‘nsblack Timeout Sleep’
[22:43:30][C][template.number:050]: Icon: ‘mdi:timer’
[22:43:30][C][template.number:050]: Unit of Measurement: ‘s’
[22:43:30][C][template.number:051]: Optimistic: YES
[22:43:30][C][template.number:052]: Update Interval: 60.0s
[22:43:30][C][template.select:065]: Template Select ‘nsblack Wake-up page’
[22:43:30][C][template.select:065]: Icon: ‘mdi:page-next-outline’
[22:43:30][C][template.select:066]: Update Interval: 60.0s
[22:43:30][C][template.select:069]: Optimistic: YES
[22:43:30][C][template.select:070]: Initial Option: home
[22:43:30][C][template.select:071]: Restore Value: YES
[22:43:30][C][switch.gpio:068]: GPIO Switch ‘nsblack Relay 1’
[22:43:30][C][switch.gpio:091]: Restore Mode: restore defaults to OFF
[22:43:30][C][switch.gpio:031]: Pin: GPIO22
[22:43:31][C][switch.gpio:068]: GPIO Switch ‘nsblack Relay 2’
[22:43:31][C][switch.gpio:091]: Restore Mode: restore defaults to OFF
[22:43:31][C][switch.gpio:031]: Pin: GPIO19
[22:43:31][C][gpio.binary_sensor:015]: GPIO Binary Sensor ‘nsblack Left Button’
[22:43:31][C][gpio.binary_sensor:016]: Pin: GPIO14
[22:43:31][C][gpio.binary_sensor:015]: GPIO Binary Sensor ‘nsblack Right Button’
[22:43:31][C][gpio.binary_sensor:016]: Pin: GPIO27
[22:43:31][C][template.text_sensor:020]: Template Sensor ‘nsblack Current page’
[22:43:31][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:31][W][nextion:072]: Nextion is not connected!
[22:43:31][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:31][W][component:205]: Components should block for at most 20-30ms.
[22:43:31][C][template.switch:068]: Template Switch ‘nsblack Notification sound’
[22:43:31][C][template.switch:091]: Restore Mode: restore defaults to OFF
[22:43:31][C][template.switch:057]: Optimistic: YES
[22:43:31][C][template.switch:068]: Template Switch ‘nsblack Relay 1 Local’
[22:43:31][C][template.switch:091]: Restore Mode: restore defaults to OFF
[22:43:31][C][template.switch:057]: Optimistic: YES
[22:43:31][C][template.switch:068]: Template Switch ‘nsblack Relay 2 Local’
[22:43:31][C][template.switch:091]: Restore Mode: restore defaults to OFF
[22:43:31][C][template.switch:057]: Optimistic: YES
[22:43:31][C][template.switch:068]: Template Switch ‘nsblack Notification unread’
[22:43:31][C][template.switch:091]: Restore Mode: always OFF
[22:43:31][C][template.switch:057]: Optimistic: YES
[22:43:31][C][rtttl:018]: Rtttl
[22:43:31][C][restart.button:017]: Restart Button ‘nsblack Restart’
[22:43:31][C][adc:097]: ADC Sensor ‘ntc_source’
[22:43:31][C][adc:097]: Device Class: ‘voltage’
[22:43:31][C][adc:097]: State Class: ‘measurement’
[22:43:31][C][adc:097]: Unit of Measurement: ‘V’
[22:43:31][C][adc:097]: Accuracy Decimals: 2
[22:43:31][C][adc:107]: Pin: GPIO38
[22:43:31][C][adc:122]: Attenuation: 11db
[22:43:31][C][adc:142]: Update Interval: 60.0s
[22:43:31][C][resistance:010]: Resistance Sensor ‘resistance_sensor’
[22:43:31][C][resistance:010]: State Class: ‘measurement’
[22:43:31][C][resistance:010]: Unit of Measurement: ‘Ω’
[22:43:31][C][resistance:010]: Accuracy Decimals: 1
[22:43:31][C][resistance:010]: Icon: ‘mdi:flash’
[22:43:31][C][resistance:011]: Configuration: DOWNSTREAM
[22:43:31][C][resistance:012]: Resistor: 11200.00Ω
[22:43:31][C][resistance:013]: Reference Voltage: 3.3V
[22:43:31][C][version.text_sensor:021]: Version Text Sensor ‘nsblack ESPhome Version’
[22:43:31][C][version.text_sensor:021]: Icon: ‘mdi:new-box’
[22:43:31][C][nextion:117]: Nextion:
[22:43:31][C][nextion:118]: Device Model:
[22:43:31][C][nextion:119]: Firmware Version:
[22:43:31][C][nextion:120]: Serial Number:
[22:43:31][C][nextion:121]: Flash Size:
[22:43:31][C][nextion:122]: Wake On Touch: True
[22:43:31][C][homeassistant.time:010]: Home Assistant Time:
[22:43:31][C][homeassistant.time:011]: Timezone: ‘EET-2EEST,M3.5.0/3,M10.5.0/4’
[22:43:31][C][status:034]: Status Binary Sensor ‘nsblack Status’
[22:43:31][C][status:034]: Device Class: ‘connectivity’
[22:43:31][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:31][W][nextion:072]: Nextion is not connected!
[22:43:31][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:32][W][component:205]: Components should block for at most 20-30ms.
[22:43:32][C][ntc:014]: NTC Sensor ‘nsblack Temperature’
[22:43:32][C][ntc:014]: Device Class: ‘temperature’
[22:43:32][C][ntc:014]: State Class: ‘measurement’
[22:43:32][C][ntc:014]: Unit of Measurement: ‘°C’
[22:43:32][C][ntc:014]: Accuracy Decimals: 1
[22:43:32][C][captive_portal:088]: Captive Portal:
[22:43:32][C][web_server:161]: Web Server:
[22:43:32][C][web_server:162]: Address: nsblack.local:80
[22:43:32][C][mdns:115]: mDNS:
[22:43:32][C][mdns:116]: Hostname: nsblack
[22:43:32][C][ota:097]: Over-The-Air Updates:
[22:43:32][C][ota:098]: Address: nsblack.local:3232
[22:43:32][C][ota:101]: Using Password.
[22:43:32][C][api:138]: API Server:
[22:43:32][C][api:139]: Address: nsblack.local:6053
[22:43:32][C][api:143]: Using noise encryption: NO
[22:43:32][C][wifi_info:009]: WifiInfo IPAddress ‘nsblack IP’
[22:43:32][C][wifi_info:011]: WifiInfo SSID ‘nsblack SSID’
[22:43:32][C][wifi_info:012]: WifiInfo BSSID ‘nsblack BSSID’
[22:43:32][C][wifi_signal.sensor:009]: WiFi Signal ‘nsblack RSSI’
[22:43:32][C][wifi_signal.sensor:009]: Device Class: ‘signal_strength’
[22:43:32][C][wifi_signal.sensor:009]: State Class: ‘measurement’
[22:43:32][C][wifi_signal.sensor:009]: Unit of Measurement: ‘dBm’
[22:43:32][C][wifi_signal.sensor:009]: Accuracy Decimals: 0
[22:43:32][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:32][W][nextion:072]: Nextion is not connected!
[22:43:32][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:32][W][component:205]: Components should block for at most 20-30ms.
[22:43:33][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:33][W][nextion:072]: Nextion is not connected!
[22:43:33][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:33][W][component:205]: Components should block for at most 20-30ms.
[22:43:33][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:33][W][nextion:072]: Nextion is not connected!
[22:43:33][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:33][W][component:205]: Components should block for at most 20-30ms.
[22:43:34][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:34][W][nextion:072]: Nextion is not connected!
[22:43:34][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:34][W][component:205]: Components should block for at most 20-30ms.
[22:43:35][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:35][W][nextion:072]: Nextion is not connected!
[22:43:35][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:35][W][component:205]: Components should block for at most 20-30ms.
[22:43:35][D][sensor:094]: ‘nsblack Uptime seconds’: Sending state 35.90000 s with 0 decimals of accuracy
[22:43:35][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:35][W][nextion:072]: Nextion is not connected!
[22:43:35][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:35][W][component:205]: Components should block for at most 20-30ms.
[22:43:36][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:36][W][nextion:072]: Nextion is not connected!
[22:43:36][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:36][W][component:205]: Components should block for at most 20-30ms.
[22:43:37][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:37][W][nextion:072]: Nextion is not connected!
[22:43:37][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:37][W][component:205]: Components should block for at most 20-30ms.
[22:43:37][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:37][W][nextion:072]: Nextion is not connected!
[22:43:37][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:37][W][component:205]: Components should block for at most 20-30ms.
[22:43:38][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:38][W][nextion:072]: Nextion is not connected!
[22:43:38][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:38][W][component:205]: Components should block for at most 20-30ms.
[22:43:39][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:39][W][nextion:072]: Nextion is not connected!
[22:43:39][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:39][W][component:205]: Components should block for at most 20-30ms.
[22:43:39][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:39][W][nextion:072]: Nextion is not connected!
[22:43:39][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:39][W][component:205]: Components should block for at most 20-30ms.
[22:43:40][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:40][W][nextion:072]: Nextion is not connected!
[22:43:40][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:40][W][component:205]: Components should block for at most 20-30ms.
[22:43:41][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:41][W][nextion:072]: Nextion is not connected!
[22:43:41][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:41][W][component:205]: Components should block for at most 20-30ms.
[22:43:41][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:41][W][nextion:072]: Nextion is not connected!
[22:43:41][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:41][W][component:205]: Components should block for at most 20-30ms.
[22:43:42][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:42][W][nextion:072]: Nextion is not connected!
[22:43:42][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:42][W][component:205]: Components should block for at most 20-30ms.
[22:43:43][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:43][W][nextion:072]: Nextion is not connected!
[22:43:43][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:43][W][component:205]: Components should block for at most 20-30ms.
[22:43:43][E][uart:015]: Reading from UART timed out at byte 0!
[22:43:43][W][nextion:072]: Nextion is not connected!
[22:43:43][W][component:204]: Component nextion.display took a long time for an operation (0.11 s).
[22:43:43][W][component:205]: Components should block for at most 20-30ms.

I had the same problem. I think you need to power off and on your NSPanel. (Can be the mains or just remove the display from the base and reconnect).

Try uploading blank tft file. And try again. Had this one couple of times and you can recover from it.

Edit. Yes.
And the power cycle thing. You only need to report the screen not the full device. But that option is not in by default.
You can do this modifying the esphome file.

1 Like

Success recovery by uploading blank tft file.
Thank you

1 Like

After multiple attempts I’ve managed to get the blank tft file on my NS Panel (shows the QR code).

I did. it takes you to the Github page describing the blank tft file and wat to do next. Pretty cool idea really.

I’l try once more to flash the proper tft file but I haven’t had success so many times I’m not very optimistic. My other NS Panel went smoothly the first time.

With the blank tft file loaded: (display is connected, good)
image

With the us.tft file in the ESP code and 2 hours after pressing ‘update tft’:
image

Back to the long/never completing upload.

Do we know why this sometimes happens?

Thank you very much for this new local climate update.
I tried to implement it however it does not turn the relay on and off automatically. When I look at the log the “Mode:off” is visible even when the target temp is above the room temp. I looked into the “How to” and there was a statement:

" You will need to add the reference to addon_climate_heat or addon_climate_cool files on your ESPHome settings in the package section and after te remote_package (base code), as shown bellow (for heat in this example):"

I think I missing these files in my local HA install. Could someone help me with where these files should be stored locally so that the automation works? In the below screenshots you can see the Thermostat state is Off even when the target is above room temp.

Thanks Edward! Yes, indeed. I used an automation to switch the screen off and the same for the screen on. Something like set screen to ‘sleep mode’ on @ 23h00 and ‘sleep mode’ off @ 7h00. In the old version it was a switch. The switch is still visible and inactive in version 4.0.2 of the blueprint

1 Like

Why depreciate a very useful option. I have a NS-panel near my head in the bedroom, and O boy do I like it to go to sleep at night else you keep that faint but very obvious lighting glow.
I made it so that when I goto bed an automation puts the panel to sleep, but that is gone then.
I feel the same with HA lately, many so called old or not so necessary option just get deleted without proper asking if people are wanting this.
For me a reason not to update Blacky mass blueprint and newer firmware.

@jayjay, the switch was deprecated, but not the functionality. You achieve exactly the same results by using the new “Timeout Sleep”, with even mor flexibility.
Please take a look at this discussion in GitHub: Sleep mode switch removed in v4.0? · Issue #1060 · Blackymas/NSPanel_HA_Blueprint · GitHub

And let us know how you used this before (in an automation?) and we definitely can help you to get the same result with the latest version.

Hi all. How can i have the Display to stay always on?

Set Timeout sleep to 0s.
If you don’t want to have your display dimming, set also Timeout Dim to 0s.

Finally I was able to do the switch from Tasmota lovelace UI to esphome (via USB) and this Blueprint. It did not work out of the box: flashing TFT made trouble.
Finally I switched back to Tasmota (via USB), flashed the blank TFT and flashed esphome again. From there it went fine now :wink:
Thank you for this nice work!
Just some questions to the config of the blueprint:

  • Is it possible to show the status of a door lock on the home page?
    (I use the left button to open/close the lock and the right one to activate Lock 'n Go.
  • Is ist possible to the status of the garage door ont the home page? (its a cover)
  • Is it possible to suppress the additional pages? Currently I only need the home page for status display and the alarm panel.

Thanks so much.

Getting an Error in HA

die einen unbekannten Dienst aufruft: esphome.nskeller_send_command_text_printf

Calling unknown service. However Panel works?