Peter Johanson
b3c9c18fee
feat(behaviors): Continue on mods in caps word.
...
* Continue caps word when mods are changed, and
match the continue list on combination of
explicit and implicit modifiers.
2022-06-04 01:38:42 -04:00
Peter Johanson
d01bc6afc6
fix(build): Another check w/ upstrream shields.
...
* Properly handle not finding a shield in the board roots.
2022-06-04 05:26:14 +00:00
Peter Johanson
9a9aef78c7
refactor: Remove unneeded left/right conf files.
2022-06-04 00:44:13 -04:00
Peter Johanson
02a85e5d54
chore: Add Hummingbiard/XIAO BLE to core coverage.
2022-06-04 00:44:13 -04:00
Peter Johanson
532c4b9267
refactor(build): Fixes for config/overlay loading.
...
* Move to ZephyrBuildConfig package based on Zephyr best practices.
* Support multiple shields properly, e.g. -DSHIELD="foo bar", which
allows using existing upstream shields like `ssd1306_128x64` along
with another ZMK shield.
* Properly *add* the "ZMK config" .conf file to the conf file list,
so that existing board .conf files in `app/boards/<board>.conf` are
properly honored still. Needed for overrides to usptream boards when
combined with a local `<shield>.conf` file.
2022-06-04 00:44:13 -04:00
Peter Johanson
6a86cd0547
feat(gpio): Add 595 shift register driver.
...
* Use SPI for sending serial data.
* Supports 1-4 shift registers chained together by
setting `ngios` property appropriately.
2022-06-03 22:45:04 -04:00
Caleb Goates
6dc436cb23
test(behavior): Add alt-tab test and modded alpha test for toggle key
...
Uses multiple toggles of modifier keys overlapping each other.
2022-06-03 00:04:41 -04:00
Caleb Goates
0d5bb100ba
feat(behavior): Add key toggle
2022-06-03 00:04:41 -04:00
Okke Formsma
c5922fae56
refactor(hid): add mask to HID_USAGE_PAGE macro
2022-06-03 00:04:41 -04:00
Okke Formsma
57fca34dc0
refactor(hid): Move hid logic into hid.c
...
Move the logic for picking the correct hid function into hid.c.
2022-06-03 00:04:41 -04:00
ClicketySplit
9f79cc2c7b
fix(shields): Add 'chosen' display node for leeloo, README path fix.
...
* Update to include 'chosen' node for OLEDs.
* Updated to correct direction of folder separators.
2022-05-29 23:55:06 -04:00
Peter Johanson
4f503246a3
refactor(split): cmake split clean up.
...
* Cleaner cmake setup for split build.
2022-05-29 19:18:09 -04:00
Peter Johanson
2b9a0ce2a5
refactor(shields): Move to generic central role config.
...
* Use new `ZMK_SPLIT_ROLE_CENTRAL` config instead of BLE
specific Kconfig setting.
2022-05-29 19:18:09 -04:00
Peter Johanson
6539b3ae25
refactor(split): Clean up Kconfig organization.
...
* Seperated configs for split role (central/peripheral)
and transport (BLE only for now).
* Split the configs to align on structure.
2022-05-29 19:18:09 -04:00
Kurtis Lew
0bde987ae2
Update kscan_gpio_get_extra_flags
2022-05-19 11:24:01 -04:00
Kurtis Lew
6f1adfbe14
Address further review by @petejohanson
2022-05-19 11:24:01 -04:00
Kurtis Lew
4dfcadb1ed
Remove unnecessary LOG_DBG
2022-05-19 11:24:01 -04:00
Kurtis Lew
fec99c7d5e
Update kscan_direct_gpio.c
...
- Fix logic in getting pulls from ACTIVE_LOW vs. ACTIVE_HIGH DT flags
- Add pulls on init
2022-05-19 11:24:01 -04:00
Kurtis Lew
f39c821d19
Simplify kscan_gpio_get_flags
...
Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2022-05-19 11:24:01 -04:00
Kurtis Lew
f369f2cc46
feat(kscan): Add toggle-mode to updated direct-wire kscan
2022-05-19 11:24:01 -04:00
Peter Johanson
5b5b3ff2eb
fix(tests): Fix hex formatting.
2022-05-19 10:55:23 -04:00
Peter Johanson
64dadfb336
refactor(tests): Move remaining tests to posix 64.
...
* Update docs and fix up a few lingering tests
to consistently use native_posix_64 target.
2022-05-19 10:55:23 -04:00
Peter Johanson
16ab6df18d
feat(display): Add new peripheral status/display
...
* Add new API/status to track state of the
peripheral connection to the central.
* Add new peripheral status widget for displaying
the current status of the connection to
the central.
2022-05-17 13:09:21 -04:00
Peter Johanson
0a40f922b5
refactor(split): Seperate peripheral BLE handling.
...
* Move foundational BLE code for split
peripherals to a dedicated file to avoid
tons of conditionals and awkward code.
2022-05-17 13:09:21 -04:00
Cem Aksoylar
25f89ee6ab
feat(battery): Add Kconfig setting for battery level report interval
2022-05-17 12:03:57 -04:00
Joel Spadin
0738b4b2b0
refactor(kscan): Match direct GPIO driver to matrix driver
...
Rewrote the direct GPIO kscan driver to match the improvements made to
the matrix driver in 82cb762698
and
f946dc6893
. It now uses the same
debouncing system as the matrix driver.
2022-05-17 01:20:20 -04:00
Nick Winans
54747a52f9
fix(sleep): use pm_power_state_force for proper device power management
2022-05-17 00:30:47 -04:00
Stefán Páll Sturluson
d7ba7a1bee
fix(codes): typo in C_SUBTITLES.
2022-05-17 00:29:53 -04:00
zhiayang
19cc96b86d
fix(boards): Fix battery ADC channel for Mikoto
2022-05-09 11:31:58 -04:00
Peter Johanson
eca37b6219
fix(boards): Add flash/settings for XIAO BLE
...
* Ensure flash/NVS/settings configs are enabled.
2022-05-08 17:19:18 -04:00
Peter Johanson
41dc774848
fix(boards): Fix key position 4 flakiness w/ RGB
...
* Remove MISO pin from pinctrl for BDN9 rev2 board, to avoid
the 4th switch being set up for an alternate function, which
was causing spurious key press events to be triggered.
2022-05-05 22:58:56 -04:00
Nick Winans
d33b35513b
feat(usb): Set default HID interval to 1ms (1000Hz)
2022-04-29 21:51:38 -04:00
Andrew Rae
b5efc7a7eb
feat(behaviors): Add global-quick-tap
2022-04-27 13:33:22 +01:00
Joel Spadin
11ab52582c
refactor(battery): Auto enable battery drivers
...
CONFIG_ZMK_BATTERY_NRF_VDDH and CONFIG_ZMK_BATTERY_VOLTAGE_DIVIDER are
now automatically enabled if a DT node with the matching "compatible"
property is present and enabled, so they no longer need to be manually
set for each board.
2022-04-25 22:34:04 -04:00
Joel Spadin
6d6efa32f5
refactor(kscan): Auto enable kscan drivers
...
The key scanning drivers are now automatically enabled when a DT node
with the matching "compatible" property is present and enabled, so they
no longer need to be manually set for each board.
2022-04-25 22:28:53 -04:00
Joel Spadin
a3a9510e47
refactor(kscan): Use GPIO DT spec macros in matrix driver
2022-04-25 22:28:53 -04:00
Nick Winans
2c7e5b9232
refactor(ble): Use auto phy/conn for split
2022-04-24 18:29:18 -04:00
Luigi311
13014d3f28
Remove descriptions and defaults for already set variables
...
Signed-off-by: Luigi311 <luigi311.lg@gmail.com>
2022-04-24 18:29:18 -04:00
Luigi311
7443a917cb
Add ble connection interval support
...
Signed-off-by: Luigi311 <luigi311.lg@gmail.com>
2022-04-24 18:29:18 -04:00
Peter Johanson
486174fc41
fix(split): Raise split notification stack size.
...
* Larger stack for split peripheral notifications
to avois stack overflow with logging on.
2022-04-24 15:08:04 -04:00
Peter Johanson
9f222fe700
fix: Exclude sof
module to avoid build breakage.
2022-04-19 13:42:24 -04:00
Peter Johanson
d0176f3685
fix(boards): Enable battery driver for XIAO BLE.
2022-04-19 01:28:22 +00:00
Joel Spadin
f91472fbe5
fix(battery): Warn if using deprecated battery label
2022-04-17 11:30:57 -04:00
Joel Spadin
388e345c28
feat(battery)!: Add chosen node for battery
...
battery.c now uses the zmk,battery chosen node to select a battery
sensor. Using the node labeled "BATTERY" is maintained for backwards
compatibility but is now deprecated. Custom boards should switch to
using the chosen node.
# Conflicts:
# app/boards/arm/bluemicro840/bluemicro840_v1.dts
# app/boards/arm/nice60/nice60.dts
# app/boards/arm/nrfmicro/nrfmicro_13.dts
# Conflicts:
# app/boards/arm/bluemicro840/bluemicro840_v1.dts
2022-04-17 11:30:57 -04:00
Nick Winans
d08463e483
fix(ble): Restore manual connection params
2022-04-15 12:25:15 -04:00
Peter Johanson
40cd8da743
fix(usb): Split HID from core USB, logging fix.
...
* Split core USB init from USB HID init.
* Tweak logging to avoid "log loop" causing
spurious buffer messages on startup.
2022-04-13 13:07:59 -04:00
Peter Johanson
789fd03f8b
fix: Properly use zmkfirmware Zephyr version.
2022-04-12 10:55:05 -04:00
Peter Johanson
1dccb7fe50
fix(hid): Use a full valid range for consumer page
...
* Switch to a logical max for the consumer page
that avoid signed issue, and still allows
full range of documented consumer page
values.
2022-04-10 22:32:09 -04:00
Peter Johanson
22c487f276
feat(boards): Add BDN9 rev2 RGB support
2022-04-09 21:57:22 -04:00
Peter Johanson
b44410ac44
feat(shields): Add Hummingbird shield
...
* Reference shield for the Seeed(uino) XIAO interconnect.
2022-04-06 16:26:55 -04:00
DoctorNefario
20a72263b2
fix(behaviors): Prevent accidental transparent behavior return values.
...
Needed because k_work_reschedule can return positive success codes.
2022-04-06 11:00:01 -04:00
Kurtis Lew
7e844bc269
fix(behaviors): Remove behavior_hold_tap_data
...
Related to discussion during development of tap-dance behavior:
https://github.com/zmkfirmware/zmk/pull/1139#discussion_r810564682
This PR suggests to remove the `struct behavior_hold_tap_data` because is not used to store data for each hold tap.
2022-04-06 09:27:39 -04:00
Peter Johanson
3eb3548a00
refactor(tests): Use GH Actions matrix for tests.
...
* To parallelize our tests, generate a dynamic matrix
of tests to run.
2022-04-04 23:36:51 -04:00
Peter Johanson
af4753cae1
fix(behaviors): Missed refactor for PM callback.
2022-04-03 04:37:42 +00:00
Peter Johanson
f4fb5c6fba
fix(build): Add local vendor prefix file.
...
Properly document `zmk` local vendor prefix.
2022-04-03 00:10:29 -04:00
Peter Johanson
953f5212a8
refactor(tests): Move to native_posix_64 target.
...
* Allows removing multilib from docker images
* Run properly in aarch64 host docker
containers for testing on Rasberry Pi.
* Small sticky-keys fix to initialize w/ correct
constant for max uin32_t value.
2022-04-03 00:10:29 -04:00
Peter Johanson
97e62f2da5
feat(boards): Add Seeed(uino) XIAO interconnect
...
* Document the Seeed(uino) XIAO interconnect
* Add metadata files for two upstream boards, XIAO and XIAO BLE.
* Add conf and overlay files to properly configure the boards
for ZMK use.
2022-04-03 00:10:29 -04:00
Peter Johanson
9368f6200c
fix(display): Add zephyr,display chosen nodes.
2022-04-03 00:10:29 -04:00
Peter Johanson
5015a88545
fix(split): Proper role checking in BT callbacks.
...
* Properly react to events only for connections
with the correct role.
2022-04-03 00:10:29 -04:00
Peter Johanson
917c6a0660
fix(power): Fix ext power generic driver.
...
* Adjust for device API changes to fetch
ext power driver instance from settings
callback.
* New PM action callback API.
2022-04-03 00:10:29 -04:00
Peter Johanson
4eb8f8cd23
refactor(boards): Use Zephyr UF2 generation.
2022-04-03 00:10:29 -04:00
Peter Johanson
cc51562f78
fix(boards): Move ARM clock config to DTS.
2022-04-03 00:10:29 -04:00
Peter Johanson
9203ae217b
fix(activity): Use proper PM state for sleep.
2022-04-03 00:10:29 -04:00
Peter Johanson
94ac100b6b
refactor: Move to Zephyr v3.0.0 + ZMK fixes.
2022-04-03 00:10:29 -04:00
Peter Johanson
df2e993300
feat(ble): Disable BT_GATT_AUTO_SEC_REQ
.
...
* Better compatibility w/ some operating systems, we already
set security level on connects.
2022-04-03 00:10:29 -04:00
Peter Johanson
ded79ba422
fix: Remove deprecated pinmux code.
2022-04-03 00:10:29 -04:00
Peter Johanson
4df83a9c0d
refactor: Move away from deprecated PM callback.
2022-04-03 00:10:29 -04:00
Peter Johanson
bf2fc68070
fix(underglow): Add newly required color-mapping prop.
2022-04-03 00:10:29 -04:00
Peter Johanson
8afe124153
fix(tests): Fix snapshots to account for formatting changes.
2022-04-03 00:10:29 -04:00
Peter Johanson
c5ab8a9444
refactor: Move the DT based CDC ACM setup.
2022-04-03 00:10:29 -04:00
Peter Johanson
2c5d5fde51
refactor: k_work_queue
API updates.
2022-04-03 00:10:29 -04:00
Peter Johanson
79ab60dfe5
refactor: Move to new PM API/Kconfig settings.
2022-04-03 00:10:29 -04:00
Peter Johanson
6287819fcc
refactor: Move to USB_DEVICE_STACK symbol.
...
See: https://docs.zephyrproject.org/latest/releases/release-notes-2.7.html#changes-in-this-release
2022-04-03 00:10:29 -04:00
Peter Johanson
3528e1b497
refactor: Move to newer API for IO channels.
...
See: https://docs.zephyrproject.org/latest/releases/release-notes-2.6.html#api-changes
2022-04-03 00:10:29 -04:00
Peter Johanson
40d8470664
refactor: Handle HID macro/API changes in Zephyr.
2022-04-03 00:10:29 -04:00
Peter Johanson
53dae35710
refactor: Move to k_work_delayable
API.
...
* Move to new `k_work_delayable` APIs introduced in Zephyr 2.6.
See: https://docs.zephyrproject.org/latest/releases/release-notes-2.6.html#api-changes
2022-04-03 00:10:29 -04:00
Peter Johanson
20fcd35026
fix(docs): AVR, not AMR.
2022-03-29 22:01:15 -04:00
Peter Johanson
7453ce20a8
fix(docs): Whitespace clean-up.
2022-03-29 21:46:23 -04:00
rhhub
b6238fa464
fix(docs): Emphasize AMR processor incompatibility with ZMK
2022-03-29 21:45:21 -04:00
ClicketySplit
97e50c39d5
Added BT Configuration Management to Raise Layer
...
Added Function Keys, and some Navigation Keys to Lower Layer.
2022-03-27 15:52:06 -05:00
ClicketySplit
bbfe4b98dc
Updated copyright year.
2022-03-27 15:52:06 -05:00
ClicketySplit
8c66072f93
Updated copyright year.
2022-03-27 15:52:06 -05:00
ClicketySplit
e6a19ab7bc
Updated copyright year.
2022-03-27 15:52:06 -05:00
ClicketySplit
7385ef57bb
Updated copyright year.
2022-03-27 15:52:06 -05:00
ClicketySplit
fddea99cf4
Updated copyright year.
2022-03-27 15:52:06 -05:00
ClicketySplit
53ac073737
Updated copyright year.
2022-03-27 15:52:06 -05:00
ClicketySplit
89d5c496cb
Deleted as recommended.
2022-03-27 15:52:06 -05:00
ClicketySplit
4e4ed73e17
Deleted as recommended.
2022-03-27 15:52:06 -05:00
ClicketySplit
bc0c49b087
Deleted as recommended.
2022-03-27 15:52:06 -05:00
ClicketySplit
c97f7a1044
Update app/boards/shields/leeloo/Kconfig.defconfig
...
Co-authored-by: Nick Winans <nick@winans.codes>
2022-03-27 15:52:06 -05:00
ClicketySplit
ab5517b858
The inaugural commit for Leeloo's firmware.
2022-03-27 15:52:06 -05:00
Peter Johanson
35e73d40f5
fix(boards): Enable direct polling for BDN9.
...
* BDN9 Rev2 requires direct polling,
interrupts don't work as expected.
2022-03-24 03:51:08 +00:00
Peter Johanson
3a6a249ad0
feat(behaviors): Add macro support.
...
* Fine grainted press/release/tap actions.
* TIming between actions can be controlled.
* Processed async, to avoid blocking.
2022-03-23 23:42:54 -04:00
Kurtis Lew
32ebe2cfb5
feat(behaviors): Add Tap-Dance behavior
2022-03-16 01:08:42 -04:00
okke
ad5a12a7bc
fix(behaviors): Fix bug in nested sticky keys
...
If multiple sticky keys with quick release were nested, only the first one
was properly released. This fix makes sure all of them are released properly.
Fixes https://github.com/zmkfirmware/zmk/issues/1149
2022-03-15 23:04:45 -04:00
Krzysztof Gutkowski
459972fddd
fix(boards): Adjust matrix for BT60v1 to fix the broken right Shift key
...
according to the diagram from the board creators, it should be RC(3,12)
instead of RC(3,13)
2022-03-14 13:01:54 -05:00
Aaron Nunley
d6a2290d5e
Added support for 2% Milk (Updated with metadata)
...
Update app/boards/shields/two_percent_milk/two_percent_milk.overlay
Co-Authored-By: Nick Winans <nick@winans.codes>
2022-03-14 01:26:24 -05:00
Carlos Filoteo
2b4d5dd7d9
feat(shields): Add elephant42 Shield Support ( #1009 )
...
* Initial Elephant42 implementation
* Add underglow feature
* Fix keymap
* Copy corne defconfig for OLED and LED
* Fix matrix positions
* Add nice_nano_v2.overlay
* Usability improvements to keymap
* Update LED length
* Delete nice_nano v1 overlay
* Remove unused conf files
* Add copyright/license headers
* PR feedback
* Try fixing formatting again
* Minor format
* More missed tabs
* Format
2022-03-14 00:51:55 -05:00
Nick Winans
a1a8c30f7f
Remove deprecated key codes from bat43 keymap
2022-03-14 00:43:03 -05:00
dnaq
745338dc10
feat(shield): Add Bat43 shield
...
See https://kbd.dailycraft.jp/bat43/ for details.
2022-03-14 00:43:03 -05:00