No description
Find a file
Pete Johanson f928b59fc8
Some checks failed
BLE Tests / collect-tests (push) Has been cancelled
Docs Checks / lint (push) Has been cancelled
Docs Checks / typecheck (push) Has been cancelled
Hardware Metadata Validation / validate-metadata (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
release-please / release-please (push) Has been cancelled
Tests / collect-tests (push) Has been cancelled
BLE Tests / run-tests (push) Has been cancelled
Tests / run-tests (push) Has been cancelled
feat(split): Runtime selection of split transport (#2886)
feat(split): Runtime selection of split transport

Allow building multiple split transports, and select an active
one based on the transport availability. Wired split availability
depends on additional `detect-gpios` which must be a GPIO pin
that goes active when a wired connection is present.

feat(split): Suspend/resume wired UART devices.

To better support runtime split support, suspend/resume the UART
as necessary to save power when not using the UART.

docs(split): Document adjusting nRF52 UART interrupt priorities

For wired split on nRF52, you may need to adjust the priority for UART
interrupts lower, to ensure the interrupts used for timing sensitive
BT operations can run when needed, so document this in our pinctrl docs.

refactor(split): Restore use of aync UART on nRF52.

With fixes for Zephyr UART driver, re-enable using async API on nRF52.

fix(split): Minor wired split fixes.

Various minor fixes for wired split to avoid spurious TX in half duplex,
etc.

fix: Unconditionally define HID payloads to avoid error.

Don't conditionally define HID indicator payload, to avoid compilation
errors.

docs(split): Expand on details of split transports.

Expand the split keyboard documentation with a more fleshed out section
on the available split trasnports, and what is and isn't supported by
each, including the runtime selection functionality.

---------

Co-authored-by: Nicolas Munnich <98408764+nmunnich@users.noreply.github.com>
2025-06-21 15:26:45 -04:00
.devcontainer docs: Devcontainers-cli enhancement (#2548) 2024-10-27 20:17:41 +01:00
.github fix(ci): pin tj-actions/changed-files due to compromise (#2874) 2025-06-21 15:26:45 -04:00
.vscode Improve VS Code Python settings (#2860) 2025-06-21 15:26:45 -04:00
app feat(split): Runtime selection of split transport (#2886) 2025-06-21 15:26:45 -04:00
docs feat(split): Runtime selection of split transport (#2886) 2025-06-21 15:26:45 -04:00
schema feat: Add studio as a feature option in metadata 2024-10-17 10:20:30 -06:00
.clang-format feat(ci): Run clang-format to check files. 2020-09-14 00:08:13 -04:00
.gitattributes fix: check out Bash scripts with LF 2020-10-10 17:43:52 -05:00
.gitignore feat(gitignore): add clangd cache folder 2024-03-27 14:41:26 -07:00
.gitlint ci: Add gitlint and document commit conventions 2024-11-12 18:39:27 -07:00
.pre-commit-config.yaml chore(docs): Fix prettier warnings (#2952) 2025-06-21 15:26:45 -04:00
.release-please-manifest.json chore(main): release 0.2.1 (#2851) 2025-06-21 15:26:45 -04:00
AUTHORS Add KemoNine to authors per PeteJohnson 2020-12-07 07:07:45 -05:00
CHANGELOG.md chore(main): release 0.2.1 (#2851) 2025-06-21 15:26:45 -04:00
CODE_OF_CONDUCT.md refactor: Move to new zmk.dev domain name. 2021-06-10 09:27:57 -04:00
CODEOWNERS chore: Initial simple CODEOWNERS. 2021-01-13 20:59:11 -05:00
CONTRIBUTING.md feat(CONTRIBUTING.md): Add info regarding ESLint 2024-03-04 20:08:52 -08:00
LICENSE Updated copyright line. 2020-06-22 05:47:20 -04:00
README.md fix(docs): Fix README punctuation and add license link 2023-07-17 15:23:22 -07:00
release-please-config.json feat(ci): Add release-please automation with VERSION (#2622) 2024-11-18 16:46:26 -05:00

Zephyr™ Mechanical Keyboard (ZMK) Firmware

Discord Build Contributor Covenant

ZMK Firmware is an open source (MIT) keyboard firmware built on the Zephyr™ Project Real Time Operating System (RTOS). ZMK's goal is to provide a modern, wireless, and powerful firmware free of licensing issues.

Check out the website to learn more: https://zmk.dev/.

You can also come join our ZMK Discord Server.

To review features, check out the feature overview. ZMK is under active development, and new features are listed with the enhancement label in GitHub. Please feel free to add 👍 to the issue description of any requests to upvote the feature.