Skip to content

Conversation

mertzt89
Copy link
Contributor

When using the stub, the data sent in FlashDeflateData is not actually
written to flash until after the ack is sent by the stub. Waiting for
FlashDeflateEnd ensures that all data sent during with FlashDeflateData
has been fully written.

When using the stub, the data sent in FlashDeflateData is not actually
written to flash until after the ack is sent by the stub. Waiting for
FlashDeflateEnd ensures that all data sent during with FlashDeflateData
has been fully written.
Copy link
Member

@jessebraham jessebraham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this!

Just out of curiosity, what did this failure look like? Was there a specific error printed or was it just spurious flashing failures?

@jessebraham jessebraham merged commit 7b3418e into esp-rs:master Aug 31, 2022
@mertzt89
Copy link
Contributor Author

mertzt89 commented Aug 31, 2022

Thanks for this!

Just out of curiosity, what did this failure look like? Was there a specific error printed or was it just spurious flashing failures?

In my case the device would reset before the bootloader has fully written everything resulting in a section of 0xff's in the last segment programmed.

In my case it was the tail end of my application binary that would end up missing which seems to contain important section information that the bootloader reads. So ultimately my device would fail to boot.

This also did not always affect my application, it only seems to have started as I've added more features and my application size has grown.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants