Fix CDC FIFO used getting out of sync #711
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
... by deleting it.
I found a .blit that would reliably fail to flash (99% bug). Adding any
extra logging to the USB code caused it to work, as did writing extra
data at the end. Then I noticed that the read index was sometimes behind
the write index by several entries, but "used" was 0.
I think this is what was happening:
So, I deleted the used variable and checked the read/write index instead
... and that .blit now works reliably.
This hopefully fixes the "99% bug"... I've tested this with my usual "flash everything" script (86 .blits this time).