Peter Johanson
d1950c4a64
fix(usb): Adjust Kconfig settings for USB.
...
* Ensure USB isn't initialized automatically before we do, which can
happen if USB CDC logging is used/enabled for a given board.
* Adjust USB HID to initialize the USB class/interface before we enable
the USB device itself.
2025-11-19 11:42:59 -07:00
Peter Johanson
8ed6360f5a
chore(deps): Pull in Zephyr optional group for nanopb.
...
Ensure we enable nanopb by adding +optional group filter.
2025-11-19 11:42:59 -07:00
Peter Johanson
704b542913
refactor(boards): Move OLKB Preonic to HWMv2
...
Move Preonic board definition to HWMv2 and remove `_rev3` variant
suffix in favor of board versioning with `3.0.0` as the default.
2025-11-19 11:42:59 -07:00
Peter Johanson
741ef21b21
refactor(boards): Move planck rev6 to HWMv2.
...
Move Planck board definition to HWMv2, including versioning tweaks.
2025-11-19 11:42:59 -07:00
Peter Johanson
07e4f0544b
refactor: Adjust how we're searching/loading keymap files
...
Use new post_boards_shields extension point for loading keymap files
from board/shield directories.
2025-11-19 11:42:59 -07:00
Peter Johanson
1783414f70
refactor(boards): Move nice!60 to HWMv2
...
Migrate nice!60 to HWMv2.
2025-11-19 11:42:59 -07:00
Peter Johanson
98828dba4d
refactor(boards): Move BDN9 to HWMv2
...
Move BDN9 to HWMv2, using the base `bdn9` ID, no longer including the
`_rev2` suffix in the ID.
2025-11-19 11:42:59 -07:00
Peter Johanson
7364fe69b0
chore(ci): Adjust core coverage for new board IDs.
...
Use correct board IDs, with qualifiers, for our core coverage testing.
2025-11-19 11:42:59 -07:00
Peter Johanson
1166f21094
refactor(boards): Move QMK Proton-C to HWMv2
...
Move Proton-C to HWMv2 for use with Zephyr 4.1.
2025-11-19 11:42:59 -07:00
Peter Johanson
1137bd0bf1
refactor(boards): Move nRFMicro to HWMv2
...
Refactor nRFMicro to HWMv2, using proper SoC, revisions, and variants
(for flipped). Also move to devicetree setup of DCDC/HV DCDC.
2025-11-19 11:42:59 -07:00
Peter Johanson
15fcf92a63
feat: Add double tap to enter bootloader functionality
...
Add ability to enter the bootloader if double tapping reset within the
specified window.
2025-11-19 11:42:59 -07:00
Peter Johanson
bf323bf577
feat(behaviors): Add retention boot mode to reset.
...
Support new generic Zephyr retention boot mode API in the reset
behavior.
2025-11-18 00:18:57 -07:00
Peter Johanson
c94f52147d
feat(core): mapper for magic bootloader values.
...
To trigger bootloaders that use a magic value in RAM to trigger
bootloader mode, add a mapping retained memory driver that maps
write/read of boot mode values to a special magic value stored
in the actually backing RAM.
2025-11-18 00:18:57 -07:00
Peter Johanson
4699235830
chore: Remove nanopb module override.
...
Leverage nanopb version that's used by Zephyr.
2025-11-18 00:18:57 -07:00
Peter Johanson
2770d1cf3d
fix(studio): Correct usage of thread analyzer API
...
Fix up the RPC code that invoke the thread analyzer API to account for
API changes.
2025-11-18 00:18:57 -07:00
Peter Johanson
5729006ac4
refactor(boards): Move MakerDiary M2 board to HWMv2.
...
Run the HWMv2 script to convert the MakerDiary M2 board.
2025-11-18 00:18:57 -07:00
Peter Johanson
8f61f3349e
refactor(ble): Use correct BT opt for connectable.
...
Adjust for upstream Zephyr BT API changes for advertising options.
2025-11-18 00:18:57 -07:00
Peter Johanson
be37d3a7fb
fix: Refactor for new Zephyr PM API
...
Adjustments to our PM code to match Zephyr PM APIs.
2025-11-18 00:18:57 -07:00
Peter Johanson
d4deeec04e
fix(studio): Correct `memset` usage.
...
Use the correct memset call to clear our RPC memory.
2025-11-18 00:18:57 -07:00
Peter Johanson
2ba78abe07
fix: Disable Nordic dt-bindings header checks.
...
Disable the recently added Nordic dt-bindings header checks, which cause
issues for our HID related headers.
2025-11-18 00:18:57 -07:00
Peter Johanson
9146ec4a7f
refactor!(boards): Move nice!nano to HWMv2, and proper revisioning
...
Upgrade the nice!nano board to HWMv2, under the proper nicekeyboards
vendor directory, and with proper revisions. Includes a breaking change
to default the `2.0.0` version instead of the much older v1 (`1.0.0`).
2025-11-18 00:18:57 -07:00
Peter Johanson
57d723e8b9
chore: Move to Zephyr 4.1.0 branch.
2025-11-18 00:18:57 -07:00
Peter Johanson
216ed24995
refactor(boards): Move to upstream xiao_ble board ID.
...
Move to official upstream board definition for the Seeed XIAO BLE.
2025-11-18 00:18:56 -07:00
Peter Johanson
e11b172d2a
refactor: Fix up BLE tests after Zephyr upgrade.
...
Minor changes to snapshots based on newer Zephyr version.
2025-11-18 00:18:56 -07:00
Peter Johanson
8cf09b510d
chore(bluetooth): Minor cleanup of split BT code after refactor
...
Small fixes and remove commented dead code left after the split
refactor.
2025-11-18 00:18:56 -07:00
Peter Johanson
136fa7679b
refactor(input): Adjust split input to input API changes.
...
Input callbacks now have a user_data parameter, adjust accordingly.
2025-11-18 00:18:56 -07:00
Peter Johanson
e2754a7e7f
fix(sensors): Initialize sensor data to 0 before fetching.
...
Be sure we don't get back any uninitialized data by initializing
the channel data to 0 before calling into the sensor API.
2025-11-18 00:18:56 -07:00
Peter Johanson
1ed4d789c9
fix(tests): Fix BLE test to account for Zephyr changes
...
Handle additional read callback invocation once all matching
characteristic have been read.
2025-11-18 00:18:56 -07:00
Peter Johanson
209fbad209
fix(pointing): Refactor for changes to input API
...
Pass NULL user_data to input callbacks.
2025-11-18 00:18:56 -07:00
Peter Johanson
b466913009
feat(core): (Optionally) use Zephyr keyboard input devices
...
Add ability to assign a keyboard `input` device to a physical layout,
or use a chosen `zmk,matrix-input`.
2025-11-18 00:18:56 -07:00
Peter Johanson
45aef02581
refactor(tests): Move to native_sim for tests.
2025-11-18 00:18:56 -07:00
Peter Johanson
1e1d537831
refactor: Move to Zephyr v4.1.0
...
Move to Zephyr v4.1.0, with various build/compilation fixes needed for
basic use.
2025-11-18 00:18:56 -07:00
Nicolas Munnich
5138c6fb14
feat: Allow layer behaviors to "lock" layers on ( #2717 )
...
* refactor(core)!: Allow layer behaviors to "lock" layers on
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* docs: Added documentation note on locking layers
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
---------
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2025-11-14 23:13:35 +01:00
Willow Herring
7738924349
feat(split): Add HID indicators and physical layout set to Wired split ( #3103 )
2025-11-02 17:01:08 -07:00
Andrés Mejía
61de01abb0
feat(layouts): Add physical layout for Redox shield
2025-09-16 23:23:46 +02:00
Aurélien Vallée
197d104fc9
chore(shields): Add missing display-name for existing keymaps ( #3048 )
2025-09-10 15:48:33 -07:00
Nicolas Munnich
522971f41d
fix(ci): disable nrf5340dk from being built in our CI ( #3066 )
...
This build is currently broken, and will be fixed once we bump to 4.1.
2025-09-10 10:30:09 -07:00
Pete Johanson
0b5a103c18
fix(core): Generate correct keymap layer names for all builds ( #3047 )
...
Properly account for studio and non-studio builds for the generation of
the layer names stored within the keymap system.
Fixes #3045
2025-08-26 03:26:20 -06:00
Nicolas Munnich
ccf20a1f5c
feat(boards/shields): Add settings for Rpi Pico and add tester_rpi_pico shield ( #2900 )
...
* 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>
2025-08-10 22:00:35 +01:00
Marius Petcu
c7fae18ae1
feat(boards): add support for nrf52840dongle_nrf52840 ( #3011 )
...
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.
2025-08-08 23:47:03 +01:00
Pete Johanson
edf5c0814f
chore(main): release 0.3.0 ( #2858 )
2025-08-01 18:44:20 -04:00
Nicolas Munnich
c86f0d6ff4
chore: Add some basic encoder tests ( #2845 )
...
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.
2025-07-31 18:29:59 -04:00
Genteure
af967667b0
fix(core): Correctly sync BAS battery level ( #2977 )
...
Fix BAS battery level showing 100% if controller boots up with 0% battery charge.
Closes zmkfirmware/zmk#2972
2025-07-31 17:51:21 -04:00
Pete Johanson
2ae5185419
fix(split): Compile and run properly in wired polling mode. ( #3012 )
...
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>
2025-07-31 17:09:25 -04:00
Pete Johanson
1530ae36c2
fix(split): Enable wired split by default if DTS is set ( #3010 )
...
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.
2025-07-30 13:43:46 -04:00
Cem Aksoylar
1bac680c4f
fix(behaviors): Correct macro release state for parametrized macros ( #2942 )
...
test(behaviors): Add parametrized macro test that fails
fix(behaviors): Correct macro release state for parametrized
2025-07-29 18:39:26 -04:00
snoyer
d09087f4dc
feat(display): nice!view individual profile status ( #2265 )
...
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
2025-07-26 18:46:51 +02:00
Joel Spadin
8059e671b2
fix(boards): Disable high voltage DC-DC by default ( #2995 )
...
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
2025-07-21 17:14:29 +02:00
Tobias Adolph
342d838913
fix(ble,hid): Fix smooth scrolling over BLE ( #2998 )
...
- Use correct MIN16 value in hid report. -32768 in 2's compliment is 8000(hex)
- Initialize resolution multiplier array
- Properly implement `read_hids_mouse_feature_report`
Fixes : #2957
Co-authored-by: Tobias Adolph <43353209+adolto@users.noreply.github.comgit>
2025-07-20 09:13:18 -06:00
Dimitri Krassovski
7292df02d4
feat(shields): Add a physical layout for a_dux ( #3000 )
2025-07-19 21:44:05 -07:00