Blackymas / NSPanel_HA_Blueprint

This allows you to configure your complete NSPanel via Blueprint with UI and without changing anything in the code
1.44k stars 258 forks source link

Failure to program nspanel_blank.tft on Nextion loaded with nspanel-lovelace-ui #1374

Closed jvanstraten closed 11 months ago

jvanstraten commented 11 months ago

tl;dr

I'm pretty sure I've already followed all the troubleshooting steps as far as they apply, and I am trying to load nspanel_blank.tft first, but the display doesn't seem to be going into programming mode at all. I went all the way to hooking up a logic analyzer to see what the ESP and display are doing, but didn't really get anywhere.

Context

I'm almost completely new to HomeAssistent, and am completely new to ESPHome. Thus far I've just been making and programming my own microcontroller + relay boards. My only prior experience is from a few months ago, when I first tried to get my NSPanel to do something. I went for the Tasmota + lovelace UI TFT file, but ultimately tossed it in a corner for half a year because it wasn't doing what I wanted. I'm not sure this project is doing that either (I'm looking for something lightweight that I can use as baseline for my own C programming, in particular because I was hoping to use some spare I/Os on the NSPanel to connect to my homebrew serial network), but regardless, I figured I'd give it a try. I'm afraid I don't know exactly which commit at joBr99/nspanel-lovelace-ui I stuck on there, but I was working on this mid August so it'd be some commit around that time, and I do know I never got around to changing HMI files.

What I did

substitutions:
  device_name: "nskitchen"
  wifi_ssid: !secret wifi_ssid
  wifi_password: !secret wifi_password
  nextion_update_url: "http://homeassistant.local:8123/local/nspanel_eu.tft"

packages:
  remote_package:
    url: https://github.com/Blackymas/NSPanel_HA_Blueprint
    ref: main
    files:
      - nspanel_esphome.yaml
    refresh: 300s
esp32:
  framework:
    type: esp-idf

What went wrong

The Nextion never seems to enter its programming mode; it keeps showing the lovelace UI "no response from HomeAssistant yet" spinner. That spinner does start lagging a whole lot, its refresh rate reducing to the rate at which the ESP is spamming [xx:xx:xx][W][nextion:077]: Nextion is not connected!. After letting it run for a few minutes, I decided it's probably not working, so I power cycled. The spinner comes right back up again, so if it did program anything, it couldn't have been much.

What I already tried

From the troubleshooting page:

1) Using a local source. I already am. Also checked to make sure behavior is different when the file is not being served by HA. 2) HTTP instead of HTTPS. Seems N/A. 3) Network issues. I doubt this has anything to do with it, everything else on the network seems stable. 4) DNS. Seems N/A. 5) Check the file size by downloading to your computer. Way ahead of you, I already did an md5sum check just to be sure. 6) Power cycle your panel. I tried several times. 7) Flash your panel again. I didn't have any customizations to begin with; everything, including HA itself in fact, is a fresh install. Since the device showed up in ESPHome just fine, I'm not sure what flashing the same thing again would accomplish in my case. 8) Alternative http service. I didn't try this, because as part of step 1 I'm already pretty sure the download is not the problem.

I tried to look for similar issues, but there are so many of them that I quickly got lost. This part of the log (full log here) seems different from the issues I've seen:

[18:07:36][D][nextion_upload:130]: Nextion TFT upload requested
[18:07:36][D][nextion_upload:131]: url: http://homeassistant.local:8123/local/nspanel_blank.tft
[18:07:36][D][nextion_upload:178]: TFT file size: 275288
[18:07:36][D][nextion_upload:190]: Updating Nextion
[18:07:38][D][nextion_upload:218]: Upgrade response is []                <========= ???
[18:07:38][E][nextion_upload:223]: Preparation for tft update failed 0 ""
[18:07:38][D][nextion_upload:254]: Restarting Nextion

To further debug, I tapped into the serial port between the ESP32 and the Nextion with my logic analyzer by soldering to the respective test points. Data attached; the .sal file can be viewed with Logic regardless of whether you have a Saleae device or not. I'm not sure what's going on with this link because I've yet to dive into the Nextion docs. I guess that's next on my todo list (that, or buying a new NSPanel...), but I figured I'd ask here, too.

Any ideas on where to go from here?

edwardtfn commented 11 months ago

Compilation was a few hours ago, so probably v4.1.2

We have release v4.1.3 a couple of hours ago, so if you want update it, it might be a good idea. You dint have to go the whole process anymore, as you may be able to see the panel in your ESPHome dashboard, so just click the 3-dot menu, select "Clean build files", then click "Install" and select the option to install it wirelessly, so you dint have to disassemble your panel again.

I will come with some more comments to your message in a minute,

edwardtfn commented 11 months ago

All TFT files are also from https://github.com/Blackymas/NSPanel_HA_Blueprint/commit/f357a58b9ee9b88f2eead61f3e7a86264e020cc1 (v4.1.2).

That's fine. No need to update those TFT files.

edwardtfn commented 11 months ago

Alternative http service. I didn't try this, because as part of step 1 I'm already pretty sure the download is not the problem.

[18:07:36][D][nextion_upload:131]: url: http://homeassistant.local:8123/local/nspanel_blank.tft

I don't think this is the problem. I can see in the logs that the panel could get a file from your server, so it looks OK.

edwardtfn commented 11 months ago

keeps showing the lovelace UI "no response from HomeAssistant yet" spinner. That spinner does start lagging a whole lot, its refresh rate reducing to the rate at which the ESP is spamming

Please click times in the center of that ring until a new page is shown. On that page, please click the buttons to set recmod and set baud rate 115200. I don't remember exactly the labels, but both should be in the bottom right corner of the screen (at least it is in the EU version).

After that, pleas wait half a minute to give ESPHome a chance to establish communication and then press the "Upload TFT" button again. If that fails again, I woukd appreciate if you can send the logs from this whole process, so please start capturing logs before the 9 clicks. 😉

edwardtfn commented 11 months ago

Upgrade response is [] <========= ???

This means no response from Nextion display, probably due to an incorrect baud rate or the display is in reparse mode. Pressing those buttons I've mentioned will fix both.

jvanstraten commented 11 months ago

I checked with my LA that both sides are chatting at 115200, at least at a glance. But that lovelace-ui debug page looks promising; I'll retry.

jvanstraten commented 11 months ago

Behavior seems to be the same, unfortunately.

If that fails again, I woukd appreciate if you can send the logs from this whole process, so please start capturing logs before the 9 clicks. 😉

I did upload the full log; https://github.com/Blackymas/NSPanel_HA_Blueprint/files/13539777/logs_nskitchen_logs.txt

Here's the new one directly pasted into a comment though.

INFO ESPHome 2023.11.6
INFO Reading configuration /config/esphome/nskitchen.yaml...
INFO Updating https://github.com/Blackymas/NSPanel_HA_Blueprint@main
INFO Detected timezone 'Europe/Amsterdam'
INFO Starting log output from nskitchen.local using esphome API
WARNING Can't connect to ESPHome API for nskitchen: Error connecting to ('192.168.1.12', 6053): [Errno 113] Connect call failed ('192.168.1.12', 6053) (SocketAPIError)
INFO Trying to connect to nskitchen in the background
INFO Successfully connected to nskitchen in 0.019s
INFO Successful handshake with nskitchen in 0.035s
[20:07:40][I][app:102]: ESPHome version 2023.11.6 compiled on Dec  3 2023, 16:34:03
[20:07:40][C][wifi:559]: WiFi:
[20:07:40][C][wifi:391]:   Local MAC: C0:49:EF:FA:6B:44
[20:07:40][C][wifi:396]:   SSID: [redacted]
[20:07:40][C][wifi:397]:   IP Address: 192.168.1.12
[20:07:40][C][wifi:399]:   BSSID: [redacted]
[20:07:40][C][wifi:400]:   Hostname: 'nskitchen'
[20:07:40][C][wifi:402]:   Signal strength: -55 dB ▂▄▆█
[20:07:40][C][wifi:406]:   Channel: 6
[20:07:40][C][wifi:407]:   Subnet: 255.255.255.0
[20:07:40][C][wifi:408]:   Gateway: 192.168.1.1
[20:07:40][C][wifi:409]:   DNS1: 8.8.8.8
[20:07:40][C][wifi:410]:   DNS2: 8.8.4.4
[20:07:40][C][logger:416]: Logger:
[20:07:40][C][logger:417]:   Level: DEBUG
[20:07:40][C][logger:418]:   Log Baud Rate: 0
[20:07:40][C][logger:420]:   Hardware UART: UART0
[20:07:40][C][uart.idf:126]: UART Bus:
[20:07:40][C][uart.idf:127]:   Number: 0
[20:07:40][C][uart.idf:128]:   TX Pin: GPIO16
[20:07:40][C][uart.idf:129]:   RX Pin: GPIO17
[20:07:40][C][uart.idf:131]:   RX Buffer Size: 256
[20:07:40][C][uart.idf:133]:   Baud Rate: 115200 baud
[20:07:40][C][uart.idf:134]:   Data Bits: 8
[20:07:40][C][uart.idf:135]:   Parity: NONE
[20:07:40][C][uart.idf:136]:   Stop bits: 1
[20:07:40][C][ledc.output:164]: LEDC Output:
[20:07:40][C][ledc.output:165]:   Pin GPIO21
[20:07:40][C][ledc.output:166]:   LEDC Channel: 0
[20:07:40][C][ledc.output:167]:   PWM Frequency: 1000.0 Hz
[20:07:40][C][ledc.output:168]:   Bit depth: 16
[20:07:40][D][nextion:746]: Removing old queue type "NO_RESULT" name "backlight_brightness"
[20:07:40][D][nextion:746]: Removing old queue type "NO_RESULT" name "goto_page"
[20:07:40][D][nextion:746]: Removing old queue type "NO_RESULT" name "auto_wake_on_touch"
[20:07:40][C][template.binary_sensor:028]: Template Binary Sensor 'nskitchen Nextion display'
[20:07:40][C][template.binary_sensor:028]:   Device Class: 'connectivity'
[20:07:40][C][template.number:050]: Template Number 'nskitchen Display Brightness'
[20:07:40][C][template.number:050]:   Unit of Measurement: '%'
[20:07:40][C][template.number:051]:   Optimistic: YES
[20:07:40][C][template.number:052]:   Update Interval: 60.0s
[20:07:40][C][template.number:050]: Template Number 'nskitchen Display Brightness Dimdown'
[20:07:40][C][template.number:050]:   Unit of Measurement: '%'
[20:07:40][C][template.number:051]:   Optimistic: YES
[20:07:40][C][template.number:052]:   Update Interval: 60.0s
[20:07:40][C][template.number:050]: Template Number 'nskitchen Temperature Correction'
[20:07:40][C][template.number:050]:   Unit of Measurement: '°C'
[20:07:40][C][template.number:051]:   Optimistic: YES
[20:07:40][C][template.number:052]:   Update Interval: 60.0s
[20:07:40][C][template.number:050]: Template Number 'nskitchen Timeout Page'
[20:07:40][C][template.number:050]:   Icon: 'mdi:timer'
[20:07:40][C][template.number:050]:   Unit of Measurement: 's'
[20:07:40][C][template.number:051]:   Optimistic: YES
[20:07:40][C][template.number:052]:   Update Interval: 60.0s
[20:07:40][C][template.number:050]: Template Number 'nskitchen Timeout Dimming'
[20:07:40][C][template.number:050]:   Icon: 'mdi:timer'
[20:07:40][C][template.number:050]:   Unit of Measurement: 's'
[20:07:40][C][template.number:051]:   Optimistic: YES
[20:07:40][C][template.number:052]:   Update Interval: 60.0s
[20:07:40][C][template.number:050]: Template Number 'nskitchen Timeout Sleep'
[20:07:40][C][template.number:050]:   Icon: 'mdi:timer'
[20:07:40][C][template.number:050]:   Unit of Measurement: 's'
[20:07:40][C][template.number:051]:   Optimistic: YES
[20:07:40][C][template.number:052]:   Update Interval: 60.0s
[20:07:40][C][template.select:065]: Template Select 'nskitchen Wake-up page'
[20:07:40][C][template.select:065]:   Icon: 'mdi:page-next-outline'
[20:07:40][C][template.select:066]:   Update Interval: 60.0s
[20:07:40][C][template.select:069]:   Optimistic: YES
[20:07:40][C][template.select:070]:   Initial Option: home
[20:07:40][C][template.select:071]:   Restore Value: YES
[20:07:41][C][template.text_sensor:020]: Template Sensor 'nskitchen Detailed Entity'
[20:07:41][C][template.text_sensor:020]:   Icon: 'mdi:tablet-dashboard'
[20:07:41][C][template.text_sensor:020]: Template Sensor 'nskitchen Notification Label'
[20:07:41][C][template.text_sensor:020]: Template Sensor 'nskitchen Notification Text'
[20:07:41][C][switch.gpio:068]: GPIO Switch 'nskitchen Relay 1'
[20:07:41][C][switch.gpio:091]:   Restore Mode: restore defaults to OFF
[20:07:41][C][switch.gpio:031]:   Pin: GPIO22
[20:07:41][C][switch.gpio:068]: GPIO Switch 'nskitchen Relay 2'
[20:07:41][C][switch.gpio:091]:   Restore Mode: restore defaults to OFF
[20:07:41][C][switch.gpio:031]:   Pin: GPIO19
[20:07:41][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'nskitchen Left Button'
[20:07:41][C][gpio.binary_sensor:016]:   Pin: GPIO14
[20:07:41][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'nskitchen Right Button'
[20:07:41][C][gpio.binary_sensor:016]:   Pin: GPIO27
[20:07:41][C][switch.gpio:068]: GPIO Switch 'nskitchen Nextion display - Power'
[20:07:41][C][switch.gpio:091]:   Restore Mode: always ON
[20:07:41][C][switch.gpio:031]:   Pin: GPIO4
[20:07:41][C][template.switch:068]: Template Switch 'nskitchen Notification sound'
[20:07:41][C][template.switch:091]:   Restore Mode: restore defaults to OFF
[20:07:41][C][template.switch:057]:   Optimistic: YES
[20:07:41][C][template.switch:068]: Template Switch 'nskitchen Relay 1 Local'
[20:07:41][C][template.switch:091]:   Restore Mode: restore defaults to OFF
[20:07:41][C][template.switch:057]:   Optimistic: YES
[20:07:41][C][template.switch:068]: Template Switch 'nskitchen Relay 2 Local'
[20:07:41][C][template.switch:091]:   Restore Mode: restore defaults to OFF
[20:07:41][C][template.switch:057]:   Optimistic: YES
[20:07:41][C][template.switch:068]: Template Switch 'nskitchen Notification unread'
[20:07:41][C][template.switch:091]:   Restore Mode: always OFF
[20:07:41][C][template.switch:057]:   Optimistic: YES
[20:07:41][C][rtttl:029]: Rtttl
[20:07:41][C][nextion:124]: Nextion:
[20:07:41][C][nextion:125]:   Device Model:     NX4832F035_011C
[20:07:41][C][nextion:126]:   Firmware Version: 72
[20:07:41][C][nextion:127]:   Serial Number:    BD8C3401D8E75A67
[20:07:41][C][nextion:128]:   Flash Size:       16777216
[20:07:41][C][nextion:129]:   Wake On Touch:    True
[20:07:41][C][nextion:140]:   Start Up Page :      8
[20:07:41][C][restart.button:017]: Restart Button 'nskitchen Restart'
[20:07:41][C][adc:097]: ADC Sensor 'ntc_source'
[20:07:41][C][adc:097]:   Device Class: 'voltage'
[20:07:41][C][adc:097]:   State Class: 'measurement'
[20:07:41][C][adc:097]:   Unit of Measurement: 'V'
[20:07:41][C][adc:097]:   Accuracy Decimals: 2
[20:07:41][C][adc:107]:   Pin: GPIO38
[20:07:41][C][adc:122]:  Attenuation: 11db
[20:07:41][C][adc:142]:   Update Interval: 60.0s
[20:07:41][C][resistance:010]: Resistance Sensor 'resistance_sensor'
[20:07:41][C][resistance:010]:   State Class: 'measurement'
[20:07:41][C][resistance:010]:   Unit of Measurement: 'Ω'
[20:07:41][C][resistance:010]:   Accuracy Decimals: 1
[20:07:41][C][resistance:010]:   Icon: 'mdi:flash'
[20:07:41][C][resistance:011]:   Configuration: DOWNSTREAM
[20:07:41][C][resistance:012]:   Resistor: 11200.00Ω
[20:07:41][C][resistance:013]:   Reference Voltage: 3.3V
[20:07:41][C][ntc:014]: NTC Sensor 'nskitchen Temperature'
[20:07:41][C][ntc:014]:   Device Class: 'temperature'
[20:07:41][C][ntc:014]:   State Class: 'measurement'
[20:07:41][C][ntc:014]:   Unit of Measurement: '°C'
[20:07:41][C][ntc:014]:   Accuracy Decimals: 1
[20:07:41][C][homeassistant.time:010]: Home Assistant Time:
[20:07:41][C][homeassistant.time:011]:   Timezone: 'CET-1CEST,M3.5.0,M10.5.0/3'
[20:07:41][C][status:034]: Status Binary Sensor 'nskitchen Status'
[20:07:41][C][status:034]:   Device Class: 'connectivity'
[20:07:41][C][mdns:115]: mDNS:
[20:07:41][C][mdns:116]:   Hostname: nskitchen
[20:07:41][C][ota:097]: Over-The-Air Updates:
[20:07:41][C][ota:098]:   Address: nskitchen.local:3232
[20:07:41][C][ota:101]:   Using Password.
[20:07:41][W][ota:107]: Last Boot was an unhandled reset, will proceed to safe mode in 1 restarts
[20:07:41][C][api:139]: API Server:
[20:07:41][C][api:140]:   Address: nskitchen.local:6053
[20:07:41][C][api:144]:   Using noise encryption: NO
[20:07:58][D][main:2562]: Exit reparse
[20:07:58][D][script.nextion_status:2653]: Nextion status:
[20:07:58][D][script.nextion_status:2654]:   Is detected: True
[20:07:58][D][script.nextion_status:2655]:   Is setup:    False
[20:07:58][D][script.nextion_status:2653]: Nextion status:
[20:07:58][D][script.nextion_status:2654]:   Is detected: True
[20:07:58][D][script.nextion_status:2655]:   Is setup:    False
[20:07:58][D][on_boot:078]: Finished
[20:08:21][D][sensor:094]: 'ntc_source': Sending state 1.90500 V with 2 decimals of accuracy
[20:08:21][D][resistance:039]: 'resistance_sensor' - Resistance 15294.6Ω
[20:08:21][D][sensor:094]: 'resistance_sensor': Sending state 15294.62402 Ω with 1 decimals of accuracy
[20:08:21][D][ntc:026]: 'nskitchen Temperature' - Temperature: 15.7°C
[20:08:21][D][sensor:094]: 'nskitchen Temperature': Sending state 15.73457 °C with 1 decimals of accuracy
[20:08:27][D][button:010]: 'nskitchen Update TFT display' Pressed.
[20:08:27][D][main:732]: Button pressed: Update TFT display
[20:08:27][D][script.upload_tft:086]: Try #1
[20:08:27][D][script.nextion_status:2653]: Nextion status:
[20:08:27][D][script.nextion_status:2654]:   Is detected: True
[20:08:27][D][script.nextion_status:2655]:   Is setup:    False
[20:08:27][D][script.upload_tft:088]: Setting Nextion protocol reparse mode to passive
[20:08:27][D][main:2562]: Exit reparse
[20:08:27][D][script.upload_tft:070]: Wait 2 seconds
[20:08:29][D][nextion_upload:130]: Nextion TFT upload requested
[20:08:29][D][nextion_upload:131]: url: http://homeassistant.local:8123/local/nspanel_eu.tft
[20:08:29][D][nextion_upload:178]: TFT file size: 275288
[20:08:29][D][nextion_upload:190]: Updating Nextion
[20:08:31][D][nextion_upload:218]: Upgrade response is []
[20:08:31][E][nextion_upload:223]: Preparation for tft update failed 0 ""
[20:08:31][D][nextion_upload:254]: Restarting Nextion
[20:08:33][D][script.upload_tft:093]: Turn off Nextion
[20:08:33][D][switch:016]: 'nskitchen Nextion display - Power' Turning OFF.
[20:08:33][D][switch:055]: 'nskitchen Nextion display - Power': Sending state OFF
[20:08:33][D][script.upload_tft:070]: Wait 3 seconds
[20:08:36][D][script.upload_tft:096]: Turn on Nextion
[20:08:36][D][switch:012]: 'nskitchen Nextion display - Power' Turning ON.
[20:08:36][D][switch:055]: 'nskitchen Nextion display - Power': Sending state ON
[20:08:36][D][script.upload_tft:070]: Wait 10 seconds
[20:08:46][D][script.upload_tft:086]: Try #2
[20:08:46][D][script.nextion_status:2653]: Nextion status:
[20:08:46][D][script.nextion_status:2654]:   Is detected: True
[20:08:46][D][script.nextion_status:2655]:   Is setup:    False
[20:08:46][D][script.upload_tft:088]: Setting Nextion protocol reparse mode to passive
[20:08:46][D][main:2562]: Exit reparse
[20:08:46][D][script.upload_tft:070]: Wait 2 seconds
[20:08:48][D][nextion_upload:130]: Nextion TFT upload requested
[20:08:48][D][nextion_upload:131]: url: http://homeassistant.local:8123/local/nspanel_eu.tft
[20:08:48][D][nextion_upload:178]: TFT file size: 275288
[20:08:48][D][nextion_upload:190]: Updating Nextion
[20:08:50][D][nextion_upload:218]: Upgrade response is []
[20:08:50][E][nextion_upload:223]: Preparation for tft update failed 0 ""
[20:08:50][D][nextion_upload:254]: Restarting Nextion
[20:08:52][D][script.upload_tft:093]: Turn off Nextion
[20:08:52][D][switch:016]: 'nskitchen Nextion display - Power' Turning OFF.
[20:08:52][D][switch:055]: 'nskitchen Nextion display - Power': Sending state OFF
[20:08:52][D][script.upload_tft:070]: Wait 3 seconds
[20:08:55][D][script.upload_tft:096]: Turn on Nextion
[20:08:55][D][switch:012]: 'nskitchen Nextion display - Power' Turning ON.
[20:08:55][D][switch:055]: 'nskitchen Nextion display - Power': Sending state ON
[20:08:55][D][script.upload_tft:070]: Wait 10 seconds
[20:09:05][D][script.upload_tft:086]: Try #3
[20:09:05][D][script.nextion_status:2653]: Nextion status:
[20:09:05][D][script.nextion_status:2654]:   Is detected: True
[20:09:05][D][script.nextion_status:2655]:   Is setup:    False
[20:09:05][D][script.upload_tft:088]: Setting Nextion protocol reparse mode to passive
[20:09:05][D][main:2562]: Exit reparse
[20:09:05][D][script.upload_tft:070]: Wait 2 seconds
[20:09:07][D][nextion_upload:130]: Nextion TFT upload requested
[20:09:07][D][nextion_upload:131]: url: http://homeassistant.local:8123/local/nspanel_eu.tft
[20:09:07][D][nextion_upload:178]: TFT file size: 275288
[20:09:07][D][nextion_upload:190]: Updating Nextion
[20:09:09][D][nextion_upload:218]: Upgrade response is []
[20:09:09][E][nextion_upload:223]: Preparation for tft update failed 0 ""
[20:09:09][D][nextion_upload:254]: Restarting Nextion
[20:09:10][D][script.upload_tft:093]: Turn off Nextion
[20:09:10][D][switch:016]: 'nskitchen Nextion display - Power' Turning OFF.
[20:09:10][D][switch:055]: 'nskitchen Nextion display - Power': Sending state OFF
[20:09:10][D][script.upload_tft:070]: Wait 3 seconds
[20:09:13][D][script.upload_tft:096]: Turn on Nextion
[20:09:13][D][switch:012]: 'nskitchen Nextion display - Power' Turning ON.
[20:09:13][D][switch:055]: 'nskitchen Nextion display - Power': Sending state ON
[20:09:13][D][script.upload_tft:070]: Wait 10 seconds
[20:09:23][E][script.upload_tft:100]: TFT upload failed.
[20:09:23][D][script.upload_tft:101]: Turn off Nextion
[20:09:23][D][switch:016]: 'nskitchen Nextion display - Power' Turning OFF.
[20:09:23][D][switch:055]: 'nskitchen Nextion display - Power': Sending state OFF
[20:09:23][D][script.upload_tft:070]: Wait 2 seconds
[20:09:25][D][script.upload_tft:104]: Turn on Nextion
[20:09:25][D][switch:012]: 'nskitchen Nextion display - Power' Turning ON.
[20:09:25][D][switch:055]: 'nskitchen Nextion display - Power': Sending state ON
[20:09:25][D][script.upload_tft:106]: Restarting esphome
[20:09:25][D][script.upload_tft:070]: Wait 1 seconds
[20:09:26][D][button:010]: 'nskitchen Restart' Pressed.
[20:09:26][I][restart.button:012]: Restarting device...
[20:09:27][I][app:134]: Rebooting safely...
[20:09:27][D][esp32.preferences:114]: Saving 1 preferences to flash...
[20:09:27][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
INFO Processing expected disconnect from ESPHome API for nskitchen
WARNING Disconnected from API
INFO Successfully connected to nskitchen in 3.092s
INFO Successful handshake with nskitchen in 0.038s
[20:09:35][W][nextion:077]: Nextion is not connected! 
[20:09:35][W][nextion:077]: Nextion is not connected! 
[20:09:36][W][nextion:077]: Nextion is not connected! 
[20:09:36][W][nextion:077]: Nextion is not connected! 
[20:09:37][W][nextion:077]: Nextion is not connected! 
[20:09:38][W][nextion:077]: Nextion is not connected! 
[20:09:38][W][nextion:077]: Nextion is not connected! 
[20:09:39][W][nextion:077]: Nextion is not connected! 
[20:09:39][W][nextion:077]: Nextion is not connected! 
[20:09:40][W][nextion:077]: Nextion is not connected! 
[20:09:40][W][nextion:077]: Nextion is not connected! 
[20:09:41][W][nextion:077]: Nextion is not connected! 
[20:09:41][W][nextion:077]: Nextion is not connected! 
[20:09:42][W][nextion:077]: Nextion is not connected! 
[20:09:42][W][nextion:077]: Nextion is not connected! 
[20:09:43][W][nextion:077]: Nextion is not connected! 
[20:09:43][W][nextion:077]: Nextion is not connected! 
[20:09:44][W][nextion:077]: Nextion is not connected! 
[20:09:45][W][nextion:077]: Nextion is not connected! 
[20:09:45][W][nextion:077]: Nextion is not connected! 
[20:09:46][W][nextion:077]: Nextion is not connected! 
[20:09:46][W][nextion:077]: Nextion is not connected! 
[20:09:47][W][nextion:077]: Nextion is not connected! 
[20:09:47][W][nextion:077]: Nextion is not connected! 
[20:09:48][W][nextion:077]: Nextion is not connected! 
[20:09:48][W][nextion:077]: Nextion is not connected! 
[20:09:49][W][nextion:077]: Nextion is not connected! 
[20:09:49][W][nextion:077]: Nextion is not connected! 
[20:09:50][W][nextion:077]: Nextion is not connected! 
[20:09:50][W][nextion:077]: Nextion is not connected! 
[20:09:51][W][nextion:077]: Nextion is not connected! 
[20:09:52][W][nextion:077]: Nextion is not connected! 
[20:09:52][W][nextion:077]: Nextion is not connected! 
[20:09:53][W][nextion:077]: Nextion is not connected! 
[20:09:53][W][nextion:077]: Nextion is not connected! 
[20:09:54][W][nextion:077]: Nextion is not connected! 
[20:09:54][W][nextion:077]: Nextion is not connected! 
[20:09:55][D][main:2562]: Exit reparse
[20:09:55][W][nextion:077]: Nextion is not connected! 
[20:09:55][W][nextion:077]: Nextion is not connected! 
[20:09:56][W][nextion:077]: Nextion is not connected! 
[20:09:56][W][nextion:077]: Nextion is not connected! 
[20:09:57][W][nextion:077]: Nextion is not connected! 
[20:09:57][W][nextion:077]: Nextion is not connected! 
[20:09:58][W][nextion:077]: Nextion is not connected! 
[20:09:59][W][nextion:077]: Nextion is not connected! 
[20:09:59][W][nextion:077]: Nextion is not connected! 
[20:10:00][W][nextion:077]: Nextion is not connected! 
[20:10:00][W][nextion:077]: Nextion is not connected! 
[20:10:01][W][nextion:077]: Nextion is not connected! 
[20:10:01][W][nextion:077]: Nextion is not connected! 
[20:10:02][W][nextion:077]: Nextion is not connected! 
[20:10:02][W][nextion:077]: Nextion is not connected! 
[20:10:03][W][nextion:077]: Nextion is not connected! 
[20:10:03][W][nextion:077]: Nextion is not connected! 
[20:10:04][W][nextion:077]: Nextion is not connected! 
[repeat ad infinitum]
jvanstraten commented 11 months ago

Here's the debug screen for reference, the two buttons on the bottom right are the ones I mashed:

20231203_201254

edwardtfn commented 11 months ago
[20:07:58][D][script.nextion_status:2653]: Nextion status:
[20:07:58][D][script.nextion_status:2654]:   Is detected: True
[20:07:58][D][script.nextion_status:2655]:   Is setup:    False
[20:07:58][D][script.nextion_status:2653]: Nextion status:
[20:07:58][D][script.nextion_status:2654]:   Is detected: True
[20:07:58][D][script.nextion_status:2655]:   Is setup:    False

This log is from v4.1.2. We made some changes on the upload process on v4,1.3, so I woukd appreciate if you can collect similar logs using v4.1.3.

jvanstraten commented 11 months ago

Ok, gotcha, I wasn't sure from your message if it would affect the upload process. Redoing.

Phenomenal support response time, by the way. Much appreciated!

jvanstraten commented 11 months ago

The upload process changes did the trick! Thanks a lot for the help.

In case anyone else comes across this later:

And this is what the log _should_ look like (click to expand). ``` INFO ESPHome 2023.11.6 INFO Reading configuration /config/esphome/nskitchen.yaml... INFO Detected timezone 'Europe/Amsterdam' INFO Starting log output from nskitchen.local using esphome API WARNING Can't connect to ESPHome API for nskitchen: Error connecting to ('192.168.1.12', 6053): [Errno 113] Connect call failed ('192.168.1.12', 6053) (SocketAPIError) INFO Trying to connect to nskitchen in the background INFO Successfully connected to nskitchen in 3.012s INFO Successful handshake with nskitchen in 0.045s [20:32:57][I][app:102]: ESPHome version 2023.11.6 compiled on Dec 3 2023, 20:29:14 [20:32:57][C][wifi:559]: WiFi: [20:32:57][C][wifi:391]: Local MAC: C0:49:EF:FA:6B:44 [20:32:57][C][wifi:396]: SSID: [redacted] [20:32:57][C][wifi:397]: IP Address: 192.168.1.12 [20:32:57][C][wifi:399]: BSSID: [redacted] [20:32:57][C][wifi:400]: Hostname: 'nskitchen' [20:32:57][C][wifi:402]: Signal strength: -56 dB ▂▄▆█ [20:32:57][C][wifi:406]: Channel: 6 [20:32:57][C][wifi:407]: Subnet: 255.255.255.0 [20:32:57][C][wifi:408]: Gateway: 192.168.1.1 [20:32:57][C][wifi:409]: DNS1: 8.8.8.8 [20:32:57][C][wifi:410]: DNS2: 8.8.4.4 [20:32:57][C][logger:416]: Logger: [20:32:57][C][logger:417]: Level: DEBUG [20:32:57][C][logger:418]: Log Baud Rate: 0 [20:32:57][C][logger:420]: Hardware UART: UART0 [20:32:57][C][uart.idf:126]: UART Bus: [20:32:57][C][uart.idf:127]: Number: 0 [20:32:57][C][uart.idf:128]: TX Pin: GPIO16 [20:32:57][C][uart.idf:129]: RX Pin: GPIO17 [20:32:57][C][uart.idf:131]: RX Buffer Size: 256 [20:32:57][C][uart.idf:133]: Baud Rate: 115200 baud [20:32:57][C][uart.idf:134]: Data Bits: 8 [20:32:57][C][uart.idf:135]: Parity: NONE [20:32:57][C][uart.idf:136]: Stop bits: 1 [20:32:57][C][ledc.output:164]: LEDC Output: [20:32:57][C][ledc.output:165]: Pin GPIO21 [20:32:57][C][ledc.output:166]: LEDC Channel: 0 [20:32:57][C][ledc.output:167]: PWM Frequency: 1000.0 Hz [20:32:57][C][ledc.output:168]: Bit depth: 16 [20:32:57][C][template.binary_sensor:028]: Template Binary Sensor 'nskitchen Nextion display' [20:32:57][C][template.binary_sensor:028]: Device Class: 'connectivity' [20:32:57][C][template.number:050]: Template Number 'nskitchen Display Brightness' [20:32:57][C][template.number:050]: Unit of Measurement: '%' [20:32:57][C][template.number:051]: Optimistic: YES [20:32:57][C][template.number:052]: Update Interval: 60.0s [20:32:57][C][template.number:050]: Template Number 'nskitchen Display Brightness Dimdown' [20:32:57][C][template.number:050]: Unit of Measurement: '%' [20:32:57][C][template.number:051]: Optimistic: YES [20:32:57][C][template.number:052]: Update Interval: 60.0s [20:32:57][C][template.number:050]: Template Number 'nskitchen Temperature Correction' [20:32:57][C][template.number:050]: Unit of Measurement: '°C' [20:32:57][C][template.number:051]: Optimistic: YES [20:32:57][C][template.number:052]: Update Interval: 60.0s [20:32:57][C][template.number:050]: Template Number 'nskitchen Timeout Page' [20:32:57][C][template.number:050]: Icon: 'mdi:timer' [20:32:57][C][template.number:050]: Unit of Measurement: 's' [20:32:57][C][template.number:051]: Optimistic: YES [20:32:57][C][template.number:052]: Update Interval: 60.0s [20:32:57][C][template.number:050]: Template Number 'nskitchen Timeout Dimming' [20:32:57][C][template.number:050]: Icon: 'mdi:timer' [20:32:57][C][template.number:050]: Unit of Measurement: 's' [20:32:57][C][template.number:051]: Optimistic: YES [20:32:57][C][template.number:052]: Update Interval: 60.0s [20:32:57][C][template.number:050]: Template Number 'nskitchen Timeout Sleep' [20:32:57][C][template.number:050]: Icon: 'mdi:timer' [20:32:57][C][template.number:050]: Unit of Measurement: 's' [20:32:57][C][template.number:051]: Optimistic: YES [20:32:57][C][template.number:052]: Update Interval: 60.0s [20:32:57][C][template.select:065]: Template Select 'nskitchen Wake-up page' [20:32:57][C][template.select:065]: Icon: 'mdi:page-next-outline' [20:32:57][C][template.select:066]: Update Interval: 60.0s [20:32:57][C][template.select:069]: Optimistic: YES [20:32:57][C][template.select:070]: Initial Option: home [20:32:57][C][template.select:071]: Restore Value: YES [20:32:57][C][template.text_sensor:020]: Template Sensor 'nskitchen Detailed Entity' [20:32:57][C][template.text_sensor:020]: Icon: 'mdi:tablet-dashboard' [20:32:57][C][template.text_sensor:020]: Template Sensor 'nskitchen Notification Label' [20:32:57][C][template.text_sensor:020]: Template Sensor 'nskitchen Notification Text' [20:32:58][C][switch.gpio:068]: GPIO Switch 'nskitchen Relay 1' [20:32:58][C][switch.gpio:091]: Restore Mode: restore defaults to OFF [20:32:58][C][switch.gpio:031]: Pin: GPIO22 [20:32:58][C][switch.gpio:068]: GPIO Switch 'nskitchen Relay 2' [20:32:58][C][switch.gpio:091]: Restore Mode: restore defaults to OFF [20:32:58][C][switch.gpio:031]: Pin: GPIO19 [20:32:58][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'nskitchen Left Button' [20:32:58][C][gpio.binary_sensor:016]: Pin: GPIO14 [20:32:58][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'nskitchen Right Button' [20:32:58][C][gpio.binary_sensor:016]: Pin: GPIO27 [20:32:58][C][switch.gpio:068]: GPIO Switch 'nskitchen Nextion display - Power' [20:32:58][C][switch.gpio:091]: Restore Mode: always ON [20:32:58][C][switch.gpio:031]: Pin: GPIO4 [20:32:58][C][template.switch:068]: Template Switch 'nskitchen Notification sound' [20:32:58][C][template.switch:091]: Restore Mode: restore defaults to OFF [20:32:58][C][template.switch:057]: Optimistic: YES [20:32:58][C][template.switch:068]: Template Switch 'nskitchen Relay 1 Local' [20:32:58][C][template.switch:091]: Restore Mode: restore defaults to OFF [20:32:58][C][template.switch:057]: Optimistic: YES [20:32:58][C][template.switch:068]: Template Switch 'nskitchen Relay 2 Local' [20:32:58][C][template.switch:091]: Restore Mode: restore defaults to OFF [20:32:58][C][template.switch:057]: Optimistic: YES [20:32:58][C][template.switch:068]: Template Switch 'nskitchen Notification unread' [20:32:58][C][template.switch:091]: Restore Mode: always OFF [20:32:58][C][template.switch:057]: Optimistic: YES [20:32:58][C][rtttl:029]: Rtttl [20:32:58][C][nextion:123]: Nextion: [20:32:58][C][nextion:124]: Device Model: NX4832F035_011C [20:32:58][C][nextion:125]: Firmware Version: 72 [20:32:58][C][nextion:126]: Serial Number: BD8C3401D8E75A67 [20:32:58][C][nextion:127]: Flash Size: 16777216 [20:32:58][C][nextion:128]: Wake On Touch: True [20:32:58][C][nextion:139]: Start Up Page : 8 [20:32:58][C][restart.button:017]: Restart Button 'nskitchen Restart' [20:32:58][C][adc:097]: ADC Sensor 'ntc_source' [20:32:58][C][adc:097]: Device Class: 'voltage' [20:32:58][C][adc:097]: State Class: 'measurement' [20:32:58][C][adc:097]: Unit of Measurement: 'V' [20:32:58][C][adc:097]: Accuracy Decimals: 2 [20:32:58][C][adc:107]: Pin: GPIO38 [20:32:58][C][adc:122]: Attenuation: 11db [20:32:58][C][adc:142]: Update Interval: 60.0s [20:32:58][C][resistance:010]: Resistance Sensor 'resistance_sensor' [20:32:58][C][resistance:010]: State Class: 'measurement' [20:32:58][C][resistance:010]: Unit of Measurement: 'Ω' [20:32:58][C][resistance:010]: Accuracy Decimals: 1 [20:32:58][C][resistance:010]: Icon: 'mdi:flash' [20:32:58][C][resistance:011]: Configuration: DOWNSTREAM [20:32:58][C][resistance:012]: Resistor: 11200.00Ω [20:32:58][C][resistance:013]: Reference Voltage: 3.3V [20:32:58][C][ntc:014]: NTC Sensor 'nskitchen Temperature' [20:32:58][C][ntc:014]: Device Class: 'temperature' [20:32:58][C][ntc:014]: State Class: 'measurement' [20:32:58][C][ntc:014]: Unit of Measurement: '°C' [20:32:58][C][ntc:014]: Accuracy Decimals: 1 [20:32:58][C][homeassistant.time:010]: Home Assistant Time: [20:32:58][C][homeassistant.time:011]: Timezone: 'CET-1CEST,M3.5.0,M10.5.0/3' [20:32:58][C][status:034]: Status Binary Sensor 'nskitchen Status' [20:32:58][C][status:034]: Device Class: 'connectivity' [20:32:59][C][mdns:115]: mDNS: [20:32:59][C][mdns:116]: Hostname: nskitchen [20:32:59][C][ota:097]: Over-The-Air Updates: [20:32:59][C][ota:098]: Address: nskitchen.local:3232 [20:32:59][C][ota:101]: Using Password. [20:32:59][C][api:139]: API Server: [20:32:59][C][api:140]: Address: nskitchen.local:6053 [20:32:59][C][api:144]: Using noise encryption: NO [20:32:59][C][http_request:013]: HTTP Request: [20:32:59][C][http_request:014]: Timeout: 5000ms [20:32:59][C][http_request:015]: User-Agent: ESPHome [20:32:59][C][http_request:016]: Follow Redirects: 1 [20:32:59][C][http_request:017]: Redirect limit: 3 [20:33:16][D][main:2581]: Exit reparse [20:33:29][D][button:010]: 'nskitchen Update TFT display' Pressed. [20:33:29][D][main:730]: Button pressed: Update TFT display [20:33:29][D][script.upload_tft:139]: Starting... [20:33:29][D][script.stop_all:2725]: Stopping scripts... [20:33:29][D][script.stop_all:2774]: Finished [20:33:29][D][script.upload_tft:765]: Try #1 [20:33:29][D][script.upload_tft.upload_tft_esp_idf:630]: Nextion TFT upload requested [20:33:29][D][script.upload_tft.upload_tft_esp_idf:631]: url: http://homeassistant.local:8123/local/nspanel_blank.tft [20:33:29][D][script.upload_tft.upload_tft_esp_idf:632]: baud_rate: 115200 [20:33:29][D][script.upload_tft.upload_tft_esp_idf:645]: Setting Nextion protocol reparse mode to passive [20:33:29][D][main:2581]: Exit reparse [20:33:29][D][script.upload_tft:156]: Wait 5 seconds [20:33:34][D][script.upload_tft.upload_tft_esp_idf:685]: TFT file size: 275288 [20:33:34][D][script.upload_tft.upload_tft_esp_idf:692]: File size check passed. Proceeding... [20:33:34][D][script.upload_tft.upload_tft_esp_idf:697]: Updating Nextion [20:33:34][D][script.upload_tft.send_nextion_command:170]: Sending: whmi-wris 275288,115200,1 [20:33:34][D][script.upload_tft.upload_tft_esp_idf:721]: Waiting for upgrade response [20:33:35][D][script.upload_tft.upload_tft_esp_idf:726]: Upgrade response is [05] [20:33:35][D][script.upload_tft.upload_tft_esp_idf:737]: Updating tft from "http://homeassistant.local:8123/local/nspanel_blank.tft" with a file size of 275288, Heap Size 165324 [20:33:40][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 1.49 %, remaining 271192 bytes [20:33:40][D][script.upload_tft.upload_range_esp_idf_:591]: recv_string [08.00.00.00.00 (5)] [20:33:40][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 2.98 %, remaining 267096 bytes [20:33:41][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 4.46 %, remaining 263000 bytes [20:33:41][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 5.95 %, remaining 258904 bytes [20:33:42][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 7.44 %, remaining 254808 bytes [20:33:42][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 8.93 %, remaining 250712 bytes [20:33:42][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 10.42 %, remaining 246616 bytes [20:33:43][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 11.90 %, remaining 242520 bytes [20:33:43][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 13.39 %, remaining 238424 bytes [20:33:44][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 14.88 %, remaining 234328 bytes [20:33:44][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 16.37 %, remaining 230232 bytes [20:33:44][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 17.85 %, remaining 226136 bytes [20:33:45][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 19.34 %, remaining 222040 bytes [20:33:45][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 20.83 %, remaining 217944 bytes [20:33:45][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 22.32 %, remaining 213848 bytes [20:33:46][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 23.81 %, remaining 209752 bytes [20:33:46][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 25.29 %, remaining 205656 bytes [20:33:47][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 26.78 %, remaining 201560 bytes [20:33:47][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 28.27 %, remaining 197464 bytes [20:33:47][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 29.76 %, remaining 193368 bytes [20:33:48][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 31.25 %, remaining 189272 bytes [20:33:48][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 32.73 %, remaining 185176 bytes [20:33:48][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 34.22 %, remaining 181080 bytes [20:33:49][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 35.71 %, remaining 176984 bytes [20:33:49][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 37.20 %, remaining 172888 bytes [20:33:50][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 38.69 %, remaining 168792 bytes [20:33:50][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 40.17 %, remaining 164696 bytes [20:33:50][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 41.66 %, remaining 160600 bytes [20:33:51][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 43.15 %, remaining 156504 bytes [20:33:51][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 44.64 %, remaining 152408 bytes [20:33:52][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 46.12 %, remaining 148312 bytes [20:33:52][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 47.61 %, remaining 144216 bytes [20:33:52][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 49.10 %, remaining 140120 bytes [20:33:53][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 50.59 %, remaining 136024 bytes [20:33:53][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 52.08 %, remaining 131928 bytes [20:33:53][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 53.56 %, remaining 127832 bytes [20:33:54][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 55.05 %, remaining 123736 bytes [20:33:54][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 56.54 %, remaining 119640 bytes [20:33:55][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 58.03 %, remaining 115544 bytes [20:33:55][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 59.52 %, remaining 111448 bytes [20:33:55][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 61.00 %, remaining 107352 bytes [20:33:56][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 62.49 %, remaining 103256 bytes [20:33:56][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 63.98 %, remaining 99160 bytes [20:33:57][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 65.47 %, remaining 95064 bytes [20:33:57][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 66.96 %, remaining 90968 bytes [20:33:57][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 68.44 %, remaining 86872 bytes [20:33:58][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 69.93 %, remaining 82776 bytes [20:33:58][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 71.42 %, remaining 78680 bytes [20:33:58][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 72.91 %, remaining 74584 bytes [20:33:59][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 74.39 %, remaining 70488 bytes [20:33:59][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 75.88 %, remaining 66392 bytes [20:34:00][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 77.37 %, remaining 62296 bytes [20:34:00][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 78.86 %, remaining 58200 bytes [20:34:00][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 80.35 %, remaining 54104 bytes [20:34:01][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 81.83 %, remaining 50008 bytes [20:34:01][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 83.32 %, remaining 45912 bytes [20:34:02][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 84.81 %, remaining 41816 bytes [20:34:02][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 86.30 %, remaining 37720 bytes [20:34:02][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 87.79 %, remaining 33624 bytes [20:34:03][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 89.27 %, remaining 29528 bytes [20:34:03][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 90.76 %, remaining 25432 bytes [20:34:03][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 92.25 %, remaining 21336 bytes [20:34:04][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 93.74 %, remaining 17240 bytes [20:34:04][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 95.23 %, remaining 13144 bytes [20:34:05][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 96.71 %, remaining 9048 bytes [20:34:05][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 98.20 %, remaining 4952 bytes [20:34:05][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 99.69 %, remaining 856 bytes [20:34:05][D][script.upload_tft.upload_range_esp_idf_:588]: Uploaded 100.00 %, remaining 0 bytes [20:34:05][D][script.upload_tft.upload_tft_esp_idf:753]: Successfully updated Nextion! [20:34:05][D][script.upload_tft.upload_tft_esp_idf:755]: Close HTTP connection [20:34:05][D][script.upload_tft.upload_end_:238]: Completed: 1 [20:34:05][D][button:010]: 'nskitchen Restart' Pressed. [20:34:05][I][restart.button:012]: Restarting device... [20:34:06][I][app:134]: Rebooting safely... [20:34:06][D][esp32.preferences:114]: Saving 1 preferences to flash... [20:34:06][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed INFO Processing expected disconnect from ESPHome API for nskitchen WARNING Disconnected from API INFO Successfully connected to nskitchen in 3.069s INFO Successful handshake with nskitchen in 0.047s [20:34:14][C][mdns:115]: mDNS: [20:34:14][C][mdns:116]: Hostname: nskitchen [20:34:14][C][ota:097]: Over-The-Air Updates: [20:34:14][C][ota:098]: Address: nskitchen.local:3232 [20:34:14][C][ota:101]: Using Password. [20:34:14][C][api:139]: API Server: [20:34:14][C][api:140]: Address: nskitchen.local:6053 [20:34:14][C][api:144]: Using noise encryption: NO [20:34:14][C][http_request:013]: HTTP Request: [20:34:14][C][http_request:014]: Timeout: 5000ms [20:34:14][C][http_request:015]: User-Agent: ESPHome [20:34:14][C][http_request:016]: Follow Redirects: 1 [20:34:14][C][http_request:017]: Redirect limit: 3 ```