* Testing PASTE/COPY/CUT on macOS
Testing using ZMK Studio v0.3.1 to send these keys.
Using Karabiner-EventViewer, nothing from C_AC_CUT, C_AC_COPY, C_AC_PASTE, nor from paste special which I assume would be called C_AC_PASTE_SPECIAL (while for example C_AC_SEARCH was detected).
Did see K_CUT, K_COPY, K_PASTE, but they appear to do nothing by default.
* Add macOS footnote for editing keys K_CUT, K_COPY, K_PASTE
* Add macOS testing for K_UNDO, K_REDO etc.
C_AC_UNDO - not even registering as a keypress
K_UNDO - detected as a keypress, but no effect. Does not act like command+z
C_AC_REDO - not even registering as a keypress
K_AGAIN aka K_REDO - detected as a keypress, but no effect. Does not act like shift+command+z
* None of the six 'Input Assist' consumer keys work on macOS
Testing using ZMK Studio v0.3.1 to send these keys with macOS 15.6.1 (ARM),
and watching for keypresses with Karabiner-EventViewer v15.5.0.
* docs: Added a dedicated page on ZMK events
* docs: Apply suggestions from code review
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* docs: Apply suggestions from code review
Bring the code snipper in new-behavior back, touchups on the page
* docs: clarify "calling" hold tap
Adjustment after feedback from code review
---------
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* docs: Add devicetree primer
* docs: Apply suggestions from code review
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* docs: Move devicetree property types into primer and link to primer
* docs: Changes from code review
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
---------
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* feat(boards): Properly support settings for RPi Pico board.
* feat(shields): Add a tester_rpi_pico shield
---------
Co-authored-by: Peter Johanson <peter@peterjohanson.com>
This adds additional required configs for the Nordic NRF52840 Dongle (PCA10059),
which was already supported by Zephyr, but didn't have flash settings
and Bluetooth enabled.
* Suggest using cu for USB log viewing on macOS
It may not be as friendly, but cu should be available while tio could be hard to install.
* Polish wording
Co-authored-by: Nicolas Munnich <98408764+nmunnich@users.noreply.github.com>
* Suggest "man cu" for how to use this tool
---------
Co-authored-by: Nicolas Munnich <98408764+nmunnich@users.noreply.github.com>
Solves issue #3019 (incorrect putty link)
- putty.org is not affiliated with the putty software
- the site now hosts links to interviews about a recent pandemic
- this pull request updates the link to the actual project page
Co-authored-by: Léon Hagenaars-Keus <lhagenaars@sogyo.nl>
* Use treeless clones in workflows
* Replace yaml2json with yq
Github's ubuntu runners come with `yq` installed, which can replace
piping `yaml2json` to `jq`. It also saves installing `yaml2json`.
It's worth noting that the `yq` version installed is the `go` version
(which has a slightly different syntax than the competing `python`
version).
Adds some encoder tests for rotating, and basic layers.
Mock Kscans don't seem to interact nicely, slightly on the hacky side.
However, better to have hacky tests than no tests.
Fixes for regressions from split refactors that broke polling mode
specifically.
Co-authored-by: honorless <86894501+lesshonor@users.noreply.github.com>
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
Remove the previous condition on ZMK_SPLIT_WIRED that only enabled it if
!ZMK_BLE. We'll defer to the `depends on` to ensure the DTS exists to
use wired split to make that decision on enabling the feature.
Allow the nice!view widget to display the status of each profile by:
- not adding a circle around the number if the profile is not bound
- drawing a dashed circle around the number if a profile is bound but not connected
Given a typical setup of a battery at ~4 V and a nice!nano v2 running at
3.3 V, I measured a small increase in power usage (using a Nordic PPK2)
when SOC_DCDC_NRF52X_HV was enabled. This changes the nice_nano_v2 and
mikoto boards so this option is disabled by default.
Fixes#2990
* docs: Document requirements-extra.txt for Studio builds
* docs: Note endpoint selection requirement for Studio
* docs: Fix indents in list items in native setup page
Add this file to .prettierignore because it messes all the additional indents.
There is also no way to make prettier ignore a range of lines in MDX files AFAICT.
* Revert "docs: Fix indents in list items in native setup page"
This reverts commit 6d8aeba801.
Changed CONFIG_ZMK_STUDIO_TRANSPORT_UART to automatically enable itself
whenever a zmk,studio-rpc-uart chosen node is specified. The previous
behavior of enabling if CONFIG_ZMK_USB was enabled broke builds when
CONFIG_ZMK_STUDIO was enabled but the chosen node wasn't specified.
* blog: Add blog post on pinning ZMK version
* docs: apply suggestions from code review
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* docs: bump date for correctly pinned template
---------
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
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>