Open thargy opened 9 months ago
I have noticed that a successful upload takes about 2-3s, not 0.92s.
After extensive testing, I discovered that the issue seems to be with GPIO12 being in use. According to ESP32 docs on bootloader mode, GPIO12 is used to specify the flash voltage during serial bootloader mode. I am unsure if that is related, but it seems suspicious that perhaps flash updates are failing silently.
I have only seen this on the WT32-ETH01 board, but it may affect other boards, too, so it may need further investigation or a warning added. I have also seen multiple posts of others struggling with OTA on this board.
I still feel this is a bug in ESPHome as it does not detect that the flash does not occur successfully and, instead, reports a successful OTA update.
Can confirm that switching off GPIO12 did allow me to remote update from the ESPHome Dashboard again. This was with a WT32-ETH01 board that I have controlling my Garage Door Opener.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Bumping as still an issue.
The problem
When performing an OTA to a WT32-ETH01 it only occasionally succeeds, most of the time it looks like it has succeeded but the firmware has not been updated.
Tried with local pip install and HA AddOn.
Which version of ESPHome has the issue?
2023.11.2, 2023.12.0, 2023.12.1
What type of installation are you using?
pip
Which version of Home Assistant has the issue?
2023.12.3
What platform are you using?
ESP32
Board
WT32-ETH01
Component causing the issue
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
For example, the log during update:
As you can see, it says it updated, however the compiled timestamp is from 28 minutes earlier (despite the code being changed, etc.). Indeed a log running on another window shows:
Again, giving no indication of failure.
Additional information
It appears that disconnecting all the GPIO pins, and only having power supplied to the board allows successful OTA updates. I have also tried booting with GPIO2 tied to ground (as per the spec.) but that didn't resolve the problem.
Worryingly, ESPHome can't seem to detect that the update actually failed.