Peter Johanson
f992352936
chore: Formatting fix.
2024-09-23 10:31:43 -06:00
Cem Aksoylar
fb18a4d871
refactor: Condition source props on CONFIG_ZMK_SPLIT
2024-09-23 10:17:29 -06:00
Cem Aksoylar
b249135742
feat(sensors): Make sensors always trigger on central (for now)
2024-09-23 10:17:29 -06:00
Cem Aksoylar
4fdfb01b6a
feat(split): Make combos invoke behaviors with locality
...
TODO: Currently the source is hardcoded to central for source local behaviors
2024-09-23 10:17:29 -06:00
Cem Aksoylar
9e36ebd525
feat(split): Make locality work nested behavior invocations
...
Co-authored-by: Tokazio <tokazio@hotmail.com>
2024-09-23 10:17:29 -06:00
Peter Johanson
11f600d9e5
fix(display): Check layer name length too.
2024-09-20 22:59:44 -06:00
Peter Johanson
cca637d66e
fix: Properly calculate highest active layer for display.
2024-09-20 22:59:44 -06:00
Peter Johanson
de38676afd
fix(core): Warn only with layouts + chosen transform
...
* Instead of erroring out, simply ignore physical layouts if we
detect a chosen matrix transform, and warn instead.
2024-09-19 13:12:17 -06:00
Peter Johanson
1baf18d671
chore: Better errno formatting in logs.
2024-09-19 01:15:13 -06:00
Peter Johanson
6ae07d222a
feat: Bit of extra studio keymap logging.
2024-09-18 13:08:35 -06:00
XiNGRZ
62900c62be
fix(studio): Ensure null-termination of layer name read from settings
...
This fixes the string leak when a layer name is changed to a longer one,
but is discarded and reverted to the original shorter one from ZMK Studio.
2024-09-18 10:53:23 -06:00
Andrew Kannan
c8c8835a19
fix(studio): Update position map querying
2024-09-17 23:29:08 -06:00
Peter Johanson
a9167b2275
fix: Reduce RAM usage in the keymap
...
* When not building with runtime keymap support, make the keymap
const.
2024-09-16 23:20:14 -06:00
Peter Johanson
32d0a4bf41
fix: Fix wakeup from kscan wrapped in sideband.
...
* If using a sideband kscan device to wrap a native kscan device,
ensure the inner kscan device is also wakeup enabled to it can
be waken from a deep sleep state by key press.
2024-09-16 15:17:26 -06:00
Abe Nonym
92745903c9
fix(ble): Properly compile with clear bonds on start
2024-09-16 12:06:34 -04:00
Maxime Vincent
67d595f29f
pre-commit: re-format using clang-format hook (v18.1.8)
2024-09-13 16:04:26 -06:00
Peter Johanson
6b4d591c37
fix(bt): Fix compilation failure for clearing bonds.
...
* Refactor broke the build when clearing bonds on start.
2024-09-09 11:26:53 -06:00
Pete Johanson
d52bb04090
Revert "feat: Split physical layout selection sync."
...
This reverts commit 03b5b38bc4 .
2024-09-07 00:22:01 -06:00
Alexander Krikun
cddc92108c
fix(boards): add sleep pinctrl node for nice!60
...
Add spi3_sleep pinctrl node to fix nice!60 builds with
both RGB underglow and sleep enabled.
2024-09-06 13:04:22 -06:00
honorless
a2f32cc12c
refactor(shield): tidbit
...
* Implement alternative matrix-transform.
* Add missing wakeup-source attribute.
* Revise README to provide more appropriate information.
* Remove unnecessary files (partially-functional shield).
2024-09-06 13:02:15 -06:00
Robert U
2a137bb675
fix: Support west test when invoked as module
2024-09-06 14:56:40 -04:00
ReFil
91447ac55c
fix: Correct max brightness in backlight metadata
...
The set brightness function in the backlighting code has a max of 100, as does the zephyr led-pwm driver https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/led/led_pwm.c
The range for the set brightness function should reflect this max
2024-09-06 14:36:08 -04:00
honorless
eaa8989f37
style: update commented-out obsolete keycodes
2024-09-06 12:22:54 -06:00
honorless
e0ec2ff84d
refactor: update obsolete keycodes
2024-09-06 12:22:54 -06:00
Peter Johanson
03b5b38bc4
feat: Split physical layout selection sync.
...
* Ensure the split peripherals have the same selected physical
layout on connection and change.
2024-09-06 12:20:45 -06:00
Peter Johanson
5176fbea6a
fix: Locking fix for RPC subsystem.
2024-09-05 12:22:08 -06:00
Peter Johanson
782695f4a9
fix: Fixes for CRC16 local IDs.
2024-09-05 12:22:08 -06:00
Peter Johanson
e0339a2a57
feat: Add shared layout .dtsi files to promote reuse.
...
* Add Corne and Ferris shared layouts, and update the respective
shields to use them.
* Add a sample Hummingbird physical layout for testing posix xiao.
* Add Sofle physical layout as an additional reference.
2024-09-05 12:22:08 -06:00
Peter Johanson
b84436e611
feat: Add posix_pro_micro and posix_seeed_xiao shields
...
* Make it easier to test native builds of our shields by adding
`posix_pro_micro` and `posix_seeed_xiao` so you can build posix
target of, e.g. `corne_left` for testing ZMK Studio.
2024-09-05 12:22:08 -06:00
Peter Johanson
fd28eab179
feat: Add the ability to keep/omit behaviors for a given build.
...
* Use defines to keep either all behaviors with omits, or selective behaviors with
explicit kept behavior, before including `behavior.dtsi` in keymaps.
* Default ZMK_BEHAVIORS_KEEP_ALL when building with the studio RPC
endpoint snippet.
2024-09-05 12:22:08 -06:00
Peter Johanson
d77e400eb9
feat(boards): Add posix MiniVan studio tester
...
* New shield to easily test studio using the `native_posix_64` board.
2024-09-05 12:22:08 -06:00
Peter Johanson
c8c19598a7
feat(keymap): Add binding get/set, layer movement
...
* Add keymap API for getting/setting a bindings
in keymap layers.
* Add layer move support via intemediary ordering array.
* Add settings storage for keymap changes.
2024-09-05 12:22:08 -06:00
Mike Szczys
f019524600
fix(display): widgets: increase buffer size for symbols
...
Increase buffer size used for placing LVGL symbols on displays. This
prevents array overflow warnings as discussed in #2444 .
Also convert one sprintf to snprintf to ensure the buffers are always
null terminated and never overflow.
Signed-off-by: Mike Szczys <szczys@hotmail.com>
2024-08-28 00:35:28 -06:00
Peter Johanson
d5061c5d3b
fix: Make CRC behavior local ID select CRC.
2024-08-15 11:45:18 -06:00
Peter Johanson
6ae6bf78b4
fix(boards): BDN9 rev2 tweaks.
...
* Reduce RAM usage, no need for heap any more in ZMK.
* Don't attempt to enable FPU that's not present.
2024-08-15 11:45:18 -06:00
Peter Johanson
fb67e4603a
feat: Add studio core coverage targets.
...
* Cover stm32, RP2040, and nRF52 builds.
2024-08-15 11:45:18 -06:00
Peter Johanson
bafe648425
feat: Add `&studio_unlock` behavior.
...
* New behavior allows unlocking the keyboard to allow ZMK Studio to
make changes.
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-08-15 11:45:18 -06:00
Peter Johanson
b1bcc3e418
feat(studio): Add `studio-rpc-usb-uart` snippet.
...
* Add an easy snippet for enabling USB UART added
to the `zephyr_udc0` standard node.
2024-08-15 11:45:18 -06:00
Peter Johanson
feda96eb40
feat(studio): Initial RPC infrastructure and subsystems.
...
* UART and BLE/GATT transports for a protobuf encoded RPC
request/response protocol.
* Custom framing protocol is used to frame a give message.
* Requests/responses are divided into major "subsystems" which
handle requests and create response messages.
* Notification support, including mapping local events to RPC
notifications by a given subsystem.
* Meta responses for "no response" and "unlock needed".
* Initial basic lock state support in a new core section, and allow specifying
if a given RPC callback requires unlocked state or not.
* Add behavior subsystem with full metadata support and examples of
using callback to serialize a repeated field without extra stack space needed.
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-08-15 11:45:18 -06:00
LostQuasar
b42d06ecf7
chore: Update pancake shield url
2024-08-14 14:38:38 -04:00
down
895f557ae5
fix: no error return in sticky key get_parameter_metadata
2024-08-14 12:34:18 -06:00
Pete Johanson
6d50ba5553
chore: Docs review tweaks.
...
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-08-12 16:57:54 -07:00
Peter Johanson
3fec690def
feat: Add config settings for sticky keys/hold-tap
...
* Add new Kconfig symbols to config max held sticky-keys/hold-taps
and for max captured events during hold-tap resolution.
2024-08-12 16:57:54 -07:00
Peter Johanson
cd25c12ce9
fix: Proper device PM support for composite kscan.
...
* Clean up composite kscan to allow multiple instances properly.
* Implement PM hook and properly suspend/resume the child devices.
Fixes : #2388
2024-08-03 13:45:51 -07:00
Peter Johanson
78ed721c36
fix(pm): Properly configure a wakeup as input.
...
* Other drivers properly disconnect/de-config pins now, so we need
to be sure the wakeup trigger connects the wake pin as input.
2024-08-02 16:37:11 -07:00
Peter Johanson
8c6bda260a
fix: Proper behavior metadata for key repeat/toggle
2024-07-05 15:38:04 -06:00
Peter Johanson
3694ff85a0
fix: Fix up layer metadata, move to layer IDs.
...
* Studio will use stable layer IDs to refer to layers, so that
layer reordering doesn't affect behavior bindings, so update to match.
* Fix a few layer metadata entries that missed being refactored.
2024-07-05 13:13:42 -06:00
Peter Johanson
e01f13f9f0
fix: Fix external power settings load issue.
...
* Because settings load is delayed now, enable external
power on init, and let it be disabled on settings load
later, to ensure power is on early for
other peripheral initialization.
Fixes : #2361
2024-07-04 17:20:40 -06:00
Peter Johanson
82eed0f5dd
feat(boards): Add flash/settings to XIAO RP2040.
...
* Add storage partition.
* Default necessacy Kconfig symbols for flash/settings.
2024-07-03 16:57:22 -06:00
Peter Johanson
5fcf092901
refactor(shields): Set ZMK Uno physical layouts.
...
* Add physical layout definitions for uno and split uno shields.
2024-07-03 16:52:05 -06:00