Skip to content

feat: add framed uart support#26198

Open
damex wants to merge 1 commit intoqmk:developfrom
damex:feat/uart-frame
Open

feat: add framed uart support#26198
damex wants to merge 1 commit intoqmk:developfrom
damex:feat/uart-frame

Conversation

@damex
Copy link
Copy Markdown

@damex damex commented May 9, 2026

Description

adds packet link layer over byte level uart.
owns tx queue, ack await with retry on timeout, rx framer.

caller provides protocol callbacks:

  • frame-start detect
  • complete check
  • integrity verify
  • ACK match
  • send-ACK
  • dispatch

opt in via UART_FRAME_DRIVER_REQUIRED.
When set to yes, UART driver is gonna be auto-pulled and uart_frame.c built.
it is off by default and has no impact on existing keyboards.

Types of Changes

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout (addition or update)
  • Documentation

Issues Fixed or Closed by This PR

Checklist

  • My code follows the code style of this project
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

packet link layer over byte level uart.
  owns tx queue, ack await with retry on timeout, rx framer.

  caller provides protocol callbacks: frame-start detect,
  complete check, integrity verify, ACK match, send-ACK, dispatch.

  opt in via UART_FRAME_DRIVER_REQUIRED. When set to yes,
  UART driver is gonna be auto-pulled and uart_frame.c built.
  it is off by default and has no impact on existing keyboards.

Signed-off-by: Roman Kuzmitskii <roman@damex.org>
@github-actions github-actions Bot added the core label May 9, 2026
@drashna drashna requested review from a team May 9, 2026 19:51
@zvecr zvecr changed the base branch from master to develop May 9, 2026 20:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant