Skip to content
This repository has been archived by the owner on Jul 3, 2023. It is now read-only.

esp32 partition table doesn't match the esphome one #60

Closed
ssieb opened this issue Jul 31, 2021 · 7 comments
Closed

esp32 partition table doesn't match the esphome one #60

ssieb opened this issue Jul 31, 2021 · 7 comments

Comments

@ssieb
Copy link
Member

ssieb commented Jul 31, 2021

The partition table for esp32 that is included in the flasher doesn't match the one that esphome uses. esphome allows the firmware size to be up to 1835008 bytes, but the flasher only allows 1638400 bytes. This means that a successfully compiled firmware might not boot when flashed.

@alexyao2015
Copy link

esphome/esphome@5887fe8

@kbx81
Copy link
Member

kbx81 commented Oct 2, 2021

Haha...this had me banging my head because I write crazy complicated configs. 😁

@OttoWinter
Copy link
Member

Fixed in #67

@alexyao2015
Copy link

@OttoWinter It's not fully fixed with #67 because esp-idf has a different partition table.

@OttoWinter
Copy link
Member

True, but I don't think that is fixable.

And it will only cause issues in rare cases where you're just between the arduino size limit and the esp idf limit. As described on discord, the fw will work just fine even with a different partition table.

AFAIK the only way to fix that would be to change the firmware distribution format (to something like zip or in elf). But that would break all other tools with which ESP chips can be flashed, which IMO would not be worth the little edge case.

@alexyao2015
Copy link

I was thinking there could be a simple drop-down that allows a user to manually specify if the firmware is Arduino or esp-idf and select the partitions.bin based on that.

@OttoWinter
Copy link
Member

I'd be against that - the ESPHome-Flasher interface intentionally is very minimal (compared to other options where you can set flash mode, baud rate etc). It's meant as a convenience tool for when flashing via esphome directly is difficult, and meant for basic users (who would most likely not know what to press in that drop down anyway).

We can explore other ways to figure out if arduino/idf is being flashed by looking at the image. Adding a drop-down for this edge case can't be the solution

@github-actions github-actions bot locked and limited conversation to collaborators Nov 6, 2021
# for free to subscribe to this conversation on GitHub. Already have an account? #.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants