Skip to content

Resync SPI transport after incomplete or glitched frames - #158

Merged
mkalkbrenner merged 1 commit into
mainfrom
SPI_resync
Oct 6, 2026
Merged

mkalkbrenner merged 1 commit into
mainfrom
SPI_resync

Conversation

@mkalkbrenner

Copy link
Copy Markdown
Member

RGB565 frames arrive without header, so a lost or extra clock edge shifted all following frames permanently.

  • Discard a partially received frame if no data arrives for SPI_TRANSPORT_FRAME_TIMEOUT_US and wait for the next one.
  • Restart the PIO state machine after each complete frame to drop stray bits of an incomplete byte.

RGB565 frames arrive without header, so a lost or extra clock edge
shifted all following frames permanently.

- Discard a partially received frame if no data arrives for
  SPI_TRANSPORT_FRAME_TIMEOUT_US and wait for the next one.
- Restart the PIO state machine after each complete frame to drop
  stray bits of an incomplete byte.
@mkalkbrenner
mkalkbrenner merged commit b5e4690 into main Oct 6, 2026
50 checks passed
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.

1 participant