ESP32 'Download YAML' has stopped working

Today, after a mod to one of the ESP32 programs, I tried to download the YAML and it failed.
The ESP32 device is online and modified program is working fine.

Tried to download the other ESP’s, which haven’t been touched and they all fail in the same manner.

Has anyone experienced this, or has any clue as to why and how to fix it?
I’ve never had an issue before.

Please see attached…





What do the logs say?

I only just thought to look at the logs, so those showing currently are likely not relevant.
If I try to download them, I get the same error…

?

In esphome, click update on a device. It produces downloadable logs.

“Can’t be downloaded securely” tells me it’s your browser being extra cautious. I get a similar error using Brave when downloading .bins and have to go through a couple extra steps to get it to download.

Clicking on LOGS on an ESP device has downloaded a log txt file into the Download folder.
There are no errors in it. It looks normal.

What I have noticed, in the Download folder, there are some strange files which are created when trying to download the YAML or log file from System menu.

‘Unconfirmed xxxxxx . crdownload’

This is the log.

INFO ESPHome 2024.3.2
INFO Reading configuration /config/esphome/boiler-hw-tank.yaml...
INFO Starting log output from 192.168.0.45 using esphome API
INFO Successfully connected to boiler-hw-tank @ 192.168.0.45 in 0.047s
INFO Successful handshake with boiler-hw-tank @ 192.168.0.45 in 0.107s
[20:39:57][I][app:102]: ESPHome version 2024.3.2 compiled on Apr 23 2024, 15:42:11
[20:39:57][C][wifi:580]: WiFi:
[20:39:57][C][wifi:408]:   Local MAC: EC:94:CB:6E:92:C0
[20:39:57][C][wifi:413]:   SSID: 'SKYMWXUE_Ext'[redacted]
[20:39:57][C][wifi:416]:   IP Address: 192.168.0.45
[20:39:57][C][wifi:420]:   BSSID: CC:32:E5:79:70:6F[redacted]
[20:39:57][C][wifi:421]:   Hostname: 'boiler-hw-tank'
[20:39:57][C][wifi:423]:   Signal strength: -55 dB ▂▄▆█
[20:39:57][C][wifi:427]:   Channel: 13
[20:39:57][C][wifi:428]:   Subnet: 255.255.255.0
[20:39:57][C][wifi:429]:   Gateway: 192.168.0.1
[20:39:57][C][wifi:430]:   DNS1: 192.168.0.1
[20:39:57][C][wifi:431]:   DNS2: 0.0.0.0
[20:39:57][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:39:57][D][switch:016]: 'Heat 1' Turning OFF.
[20:39:57][C][logger:166]: Logger:
[20:39:57][C][logger:167]:   Level: DEBUG
[20:39:57][C][logger:169]:   Log Baud Rate: 115200
[20:39:57][C][logger:170]:   Hardware UART: UART0
[20:39:57][C][i2c.arduino:059]: I2C Bus:
[20:39:57][C][i2c.arduino:060]:   SDA Pin: GPIO21
[20:39:57][C][i2c.arduino:061]:   SCL Pin: GPIO22
[20:39:57][C][i2c.arduino:062]:   Frequency: 10000 Hz
[20:39:57][C][i2c.arduino:065]:   Recovery: bus successfully recovered
[20:39:57][I][i2c.arduino:075]: Results from i2c bus scan:
[20:39:57][I][i2c.arduino:081]: Found i2c device at address 0x64
[20:39:57][I][i2c.arduino:081]: Found i2c device at address 0x65
[20:39:57][I][i2c.arduino:081]: Found i2c device at address 0x66
[20:39:57][I][i2c.arduino:081]: Found i2c device at address 0x67
[20:39:57][C][switch.gpio:068]: GPIO Switch 'Heat 1'
[20:39:57][C][switch.gpio:076]:   Inverted: YES
[20:39:57][C][switch.gpio:091]:   Restore Mode: always OFF
[20:39:57][C][switch.gpio:031]:   Pin: GPIO25
[20:39:57][C][switch.gpio:068]: GPIO Switch 'Circ Pump 1'
[20:39:57][C][switch.gpio:076]:   Inverted: YES
[20:39:57][C][switch.gpio:091]:   Restore Mode: always OFF
[20:39:57][C][switch.gpio:031]:   Pin: GPIO26
[20:39:57][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Power Source'
[20:39:57][C][gpio.binary_sensor:016]:   Pin: GPIO14
[20:39:57][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Heat Demand'
[20:39:57][C][gpio.binary_sensor:016]:   Pin: GPIO27
[20:39:57][C][mcp9600:068]: MCP9600:
[20:39:57][C][mcp9600:069]:   Address: 0x64
[20:39:57][C][mcp9600:070]:   Update Interval: 10.0s
[20:39:57][C][mcp9600:072]:   Device ID: 0x40
[20:39:57][C][mcp9600:074]:   Hot Junction Temperature 'Stat'
[20:39:57][C][mcp9600:074]:     Device Class: 'temperature'
[20:39:57][C][mcp9600:074]:     State Class: 'measurement'
[20:39:57][C][mcp9600:074]:     Unit of Measurement: '°C'
[20:39:57][C][mcp9600:074]:     Accuracy Decimals: 1
[20:39:57][C][mcp9600:068]: MCP9600:
[20:39:57][C][mcp9600:069]:   Address: 0x65
[20:39:57][C][mcp9600:070]:   Update Interval: 10.0s
[20:39:57][C][mcp9600:072]:   Device ID: 0x40
[20:39:57][C][mcp9600:074]:   Hot Junction Temperature 'Tank In'
[20:39:57][C][mcp9600:074]:     Device Class: 'temperature'
[20:39:57][C][mcp9600:074]:     State Class: 'measurement'
[20:39:57][C][mcp9600:074]:     Unit of Measurement: '°C'
[20:39:57][C][mcp9600:074]:     Accuracy Decimals: 1
[20:39:57][C][mcp9600:068]: MCP9600:
[20:39:57][C][mcp9600:069]:   Address: 0x66
[20:39:57][C][mcp9600:070]:   Update Interval: 10.0s
[20:39:57][C][mcp9600:072]:   Device ID: 0x40
[20:39:57][C][mcp9600:074]:   Hot Junction Temperature 'Tank Out'
[20:39:57][C][mcp9600:074]:     Device Class: 'temperature'
[20:39:57][C][mcp9600:074]:     State Class: 'measurement'
[20:39:57][C][mcp9600:074]:     Unit of Measurement: '°C'
[20:39:57][C][mcp9600:074]:     Accuracy Decimals: 1
[20:39:57][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:39:57][D][switch:016]: 'Heat 1' Turning OFF.
[20:39:57][C][mcp9600:068]: MCP9600:
[20:39:57][C][mcp9600:069]:   Address: 0x67
[20:39:57][C][mcp9600:070]:   Update Interval: 10.0s
[20:39:57][C][mcp9600:072]:   Device ID: 0x40
[20:39:57][C][mcp9600:074]:   Hot Junction Temperature 'Tank Top'
[20:39:57][C][mcp9600:074]:     Device Class: 'temperature'
[20:39:57][C][mcp9600:074]:     State Class: 'measurement'
[20:39:57][C][mcp9600:074]:     Unit of Measurement: '°C'
[20:39:57][C][mcp9600:074]:     Accuracy Decimals: 1
[20:39:57][C][captive_portal:088]: Captive Portal:
[20:39:57][C][mdns:115]: mDNS:
[20:39:57][C][mdns:116]:   Hostname: boiler-hw-tank
[20:39:58][C][ota:096]: Over-The-Air Updates:
[20:39:58][C][ota:097]:   Address: boiler-hw-tank.local:3232
[20:39:58][C][ota:103]:   OTA version: 2.
[20:39:58][C][api:139]: API Server:
[20:39:58][C][api:140]:   Address: boiler-hw-tank.local:6053
[20:39:58][C][api:142]:   Using noise encryption: YES
[20:39:58][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:39:58][D][switch:016]: 'Heat 1' Turning OFF.
[20:39:58][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:39:58][D][switch:016]: 'Heat 1' Turning OFF.
[20:39:59][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:39:59][D][switch:016]: 'Heat 1' Turning OFF.
[20:39:59][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:39:59][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:00][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:00][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:00][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:00][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:01][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:01][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:01][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:01][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:02][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:02][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:02][D][sensor:094]: 'Tank Out': Sending state 45.68750 °C with 1 decimals of accuracy
[20:40:02][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:02][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:03][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:03][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:03][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:03][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:03][D][sensor:094]: 'Tank Top': Sending state 51.87500 °C with 1 decimals of accuracy
[20:40:04][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:04][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:04][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:04][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:05][D][sensor:094]: 'Tank In': Sending state 50.75000 °C with 1 decimals of accuracy
[20:40:05][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:05][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:05][D][sensor:094]: 'Stat': Sending state 55.18750 °C with 1 decimals of accuracy
[20:40:05][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:05][D][switch:016]: 'Heat 1' Turning OFF.
[20:40:06][D][switch:016]: 'Circ Pump 1' Turning OFF.
[20:40:06][D][switch:016]: 'Heat 1' Turning OFF.

I haven’t updated Firefox browser since this started happening. It’s been nagging for a while…
++ Sorry, my mistake, I use Microsoft Edge for HA ++ .

That doesn’t show any compiling or upload.

Ahh.
Ok.
Did you mean ‘Install’ rather than ‘update’?
I don’t have an update option.

This is the log from doing an install:-
logs_boiler-hw-tank_run.txt

INFO ESPHome 2024.3.2
INFO Reading configuration /config/esphome/boiler-hw-tank.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing boiler-hw-tank (board: esp32dev; framework: arduino; platform: platformio/[email protected])
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 2.1.3
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- noise-c @ 0.1.4
|-- Wire @ 2.0.0
RAM:   [=         ]  12.6% (used 41152 bytes from 327680 bytes)
Flash: [=====     ]  51.6% (used 946253 bytes from 1835008 bytes)
========================= [SUCCESS] Took 16.43 seconds =========================
INFO Successfully compiled program.
INFO Connecting to 192.168.0.45
INFO Uploading /data/build/boiler-hw-tank/.pioenvs/boiler-hw-tank/firmware.bin (952032 bytes)
Uploading: [============================================================] 100% Done...

INFO Upload took 11.20 seconds, waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from 192.168.0.45 using esphome API
INFO Successfully connected to boiler-hw-tank @ 192.168.0.45 in 15.504s
INFO Successful handshake with boiler-hw-tank @ 192.168.0.45 in 0.091s
[21:10:50][I][app:102]: ESPHome version 2024.3.2 compiled on Apr 23 2024, 15:42:11
[21:10:50][C][wifi:580]: WiFi:
[21:10:50][C][wifi:408]:   Local MAC: EC:94:CB:6E:92:C0
[21:10:50][C][wifi:413]:   SSID: 'SKYMWXUE_Ext'[redacted]
[21:10:50][C][wifi:416]:   IP Address: 192.168.0.45
[21:10:50][C][wifi:420]:   BSSID: CC:32:E5:79:70:6F[redacted]
[21:10:50][C][wifi:421]:   Hostname: 'boiler-hw-tank'
[21:10:50][C][wifi:423]:   Signal strength: -53 dB ▂▄▆█
[21:10:50][C][wifi:427]:   Channel: 13
[21:10:50][C][wifi:428]:   Subnet: 255.255.255.0
[21:10:50][C][wifi:429]:   Gateway: 192.168.0.1
[21:10:50][C][wifi:430]:   DNS1: 192.168.0.1
[21:10:50][C][wifi:431]:   DNS2: 0.0.0.0
[21:10:50][C][logger:166]: Logger:
[21:10:50][C][logger:167]:   Level: DEBUG
[21:10:50][C][logger:169]:   Log Baud Rate: 115200
[21:10:50][C][logger:170]:   Hardware UART: UART0
[21:10:50][C][i2c.arduino:059]: I2C Bus:
[21:10:50][C][i2c.arduino:060]:   SDA Pin: GPIO21
[21:10:50][C][i2c.arduino:061]:   SCL Pin: GPIO22
[21:10:50][C][i2c.arduino:062]:   Frequency: 10000 Hz
[21:10:50][C][i2c.arduino:065]:   Recovery: bus successfully recovered
[21:10:50][I][i2c.arduino:075]: Results from i2c bus scan:
[21:10:50][I][i2c.arduino:081]: Found i2c device at address 0x64
[21:10:50][I][i2c.arduino:081]: Found i2c device at address 0x65
[21:10:50][I][i2c.arduino:081]: Found i2c device at address 0x66
[21:10:50][I][i2c.arduino:081]: Found i2c device at address 0x67
[21:10:50][C][switch.gpio:068]: GPIO Switch 'Heat 1'
[21:10:50][C][switch.gpio:076]:   Inverted: YES
[21:10:50][C][switch.gpio:091]:   Restore Mode: always OFF
[21:10:50][C][switch.gpio:031]:   Pin: GPIO25
[21:10:50][C][switch.gpio:068]: GPIO Switch 'Circ Pump 1'
[21:10:50][C][switch.gpio:076]:   Inverted: YES
[21:10:50][C][switch.gpio:091]:   Restore Mode: always OFF
[21:10:50][C][switch.gpio:031]:   Pin: GPIO26
[21:10:50][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Power Source'
[21:10:50][C][gpio.binary_sensor:016]:   Pin: GPIO14
[21:10:50][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Heat Demand'
[21:10:50][C][gpio.binary_sensor:016]:   Pin: GPIO27
[21:10:50][C][mcp9600:068]: MCP9600:
[21:10:50][C][mcp9600:069]:   Address: 0x64
[21:10:50][C][mcp9600:070]:   Update Interval: 10.0s
[21:10:50][C][mcp9600:072]:   Device ID: 0x40
[21:10:50][C][mcp9600:074]:   Hot Junction Temperature 'Stat'
[21:10:50][C][mcp9600:074]:     Device Class: 'temperature'
[21:10:50][C][mcp9600:074]:     State Class: 'measurement'
[21:10:50][C][mcp9600:074]:     Unit of Measurement: '°C'
[21:10:50][C][mcp9600:074]:     Accuracy Decimals: 1
[21:10:50][C][mcp9600:068]: MCP9600:
[21:10:50][C][mcp9600:069]:   Address: 0x65
[21:10:50][C][mcp9600:070]:   Update Interval: 10.0s
[21:10:50][C][mcp9600:072]:   Device ID: 0x40
[21:10:50][C][mcp9600:074]:   Hot Junction Temperature 'Tank In'
[21:10:50][C][mcp9600:074]:     Device Class: 'temperature'
[21:10:50][C][mcp9600:074]:     State Class: 'measurement'
[21:10:50][C][mcp9600:074]:     Unit of Measurement: '°C'
[21:10:50][C][mcp9600:074]:     Accuracy Decimals: 1
[21:10:50][C][mcp9600:068]: MCP9600:
[21:10:50][C][mcp9600:069]:   Address: 0x66
[21:10:50][C][mcp9600:070]:   Update Interval: 10.0s
[21:10:50][C][mcp9600:072]:   Device ID: 0x40
[21:10:50][C][mcp9600:074]:   Hot Junction Temperature 'Tank Out'
[21:10:50][C][mcp9600:074]:     Device Class: 'temperature'
[21:10:50][C][mcp9600:074]:     State Class: 'measurement'
[21:10:50][C][mcp9600:074]:     Unit of Measurement: '°C'
[21:10:50][C][mcp9600:074]:     Accuracy Decimals: 1
[21:10:50][C][mcp9600:068]: MCP9600:
[21:10:50][C][mcp9600:069]:   Address: 0x67
[21:10:50][C][mcp9600:070]:   Update Interval: 10.0s
[21:10:50][C][mcp9600:072]:   Device ID: 0x40
[21:10:50][C][mcp9600:074]:   Hot Junction Temperature 'Tank Top'
[21:10:50][C][mcp9600:074]:     Device Class: 'temperature'
[21:10:50][C][mcp9600:074]:     State Class: 'measurement'
[21:10:50][C][mcp9600:074]:     Unit of Measurement: '°C'
[21:10:50][C][mcp9600:074]:     Accuracy Decimals: 1
[21:10:50][C][captive_portal:088]: Captive Portal:
[21:10:50][C][mdns:115]: mDNS:
[21:10:50][C][mdns:116]:   Hostname: boiler-hw-tank
[21:10:50][C][ota:096]: Over-The-Air Updates:
[21:10:50][C][ota:097]:   Address: boiler-hw-tank.local:3232
[21:10:50][C][ota:103]:   OTA version: 2.
[21:10:50][C][api:139]: API Server:
[21:10:50][C][api:140]:   Address: boiler-hw-tank.local:6053
[21:10:50][C][api:142]:   Using noise encryption: YES
[21:10:53][D][sensor:094]: 'Tank Out': Sending state 44.87500 °C with 1 decimals of accuracy
[21:10:53][D][sensor:094]: 'Tank In': Sending state 49.81250 °C with 1 decimals of accuracy
[21:10:59][D][sensor:094]: 'Tank Top': Sending state 51.68750 °C with 1 decimals of accuracy
[21:10:59][D][sensor:094]: 'Stat': Sending state 54.68750 °C with 1 decimals of accuracy
[21:11:03][D][sensor:094]: 'Tank Out': Sending state 44.87500 °C with 1 decimals of accuracy
[21:11:03][D][sensor:094]: 'Tank In': Sending state 49.75000 °C with 1 decimals of accuracy

Is this the right info?

Hi

It is an Edge browser issue, if you go into Edge settings then ‘Cookies and site permissions’, scroll down to ‘Insecure content’ then click the arrow to the right as below

Then add your home assistant URL in you only need it once unlike mine

Hopefully that should fix.

Hi.

Thanks for that. :+1:

It’s fixed it, but why would that suddenly be necessary?
It’s worked ok for at least 12 months.

Cheers.

Think it is a change after a Microsoft update, similar issues have appeared at work on other things.

Glad it fixed it for you.