Commit graph

1698 commits

Author SHA1 Message Date
innovaker
f9e74110ab ci: migrate workflows to zmk-docker
Leverages the new zmk-build-arm Docker image published by the zmk-docker project.  Reduces build times, enhances DevOps capabilities, and tightly couples CI build container with the dev container.

PR: #481
2020-12-10 14:01:59 -05:00
Okke Formsma
b4c0967645 fix(west) test command should not swallow errors. 2020-12-10 11:41:42 -05:00
Joel Spadin
5aa8a07aa9 feat(docs): add keymap upgrader
Added a documentation page with a script that upgrades deprecated key
codes and behaviors to their replacements.

Fixes #299
2020-12-10 12:23:05 +00:00
Joel Spadin
77c16b020e improvement: upgrade default keymaps
Ran all the default keymaps through the keymap upgrader and manually adjusted
alignment.
2020-12-10 12:05:21 +00:00
KemoNine
2427a4ab33
feature(keymaps): Keymap layer state event, highest layer API
* Fire an event w/ layer number, state, and timestamp
  when a layer is activated/deactivated.
* Add `zmk_keymap_highest_layer_active()` query.

Co-authored-by: KemoNine <mcrosson@kemonine.info>
2020-12-09 09:35:57 -05:00
onebigdoor
4c92a4e50f
docs(codes): improve macOS support data
Tested with Karabiner-EventViewer as well as some manual checks.

PR: #377
See: #375
2020-12-09 13:58:24 +00:00
Pete Johanson
e6a27b15c1 fix(kscan): Fix building kscan for tests. 2020-12-08 22:20:12 -05:00
Chiyuan Zhang
02673e2f1d update doc about bluetooth 2020-12-08 01:11:48 -05:00
innovaker
97d045e7ef ci(build): add zmk.hex to archive
This facilitates users who can't utilize the uf2 artifact.

PR: #485
2020-12-08 00:51:23 -05:00
innovaker
7ca90540ae ci(build): refactor archiving to support multiple paths
Allows multiple files to be stored in a single archive.

PR: #485
2020-12-08 00:51:23 -05:00
innovaker
b26ceebd4c ci(build): add missing boards
PR: #478
2020-12-08 00:49:17 -05:00
innovaker
a9f257cdec feat(devcontainer): add forwardPorts 3000
Required for testing the documentation with the host's browser.

PR: #477
2020-12-08 00:44:07 -05:00
KemoNine
784ddfc620 Add note about cmake 3.19 not working with zephr ; addresses issue #487 2020-12-08 00:41:33 -05:00
ReFil
b0c525df72
feat(shields): add CRBN shield
Co-authored-by: innovaker <66737976+innovaker@users.noreply.github.com>
PR: #483
2020-12-07 16:49:37 +00:00
KemoNine
328a797e0d Add KemoNine to authors per PeteJohnson 2020-12-07 07:07:45 -05:00
KemoNine
9c1a544381 Add note about default number of available profiles and how to increase if desired 2020-12-06 22:55:31 -05:00
KemoNine
52df05a545 Tweak/cleanup bluetooth documentation so it's more clear which codes should be used in keymaps as well as to call attention to BT_SEL requiring a second parameter 2020-12-06 22:55:31 -05:00
innovaker
a6a64873af refactor(devcontainer): reorder properties
Reorder the file so that related properties are roughly grouped together and the order is more logical.

PR: #476
2020-12-06 22:54:07 -05:00
innovaker
5122af6111 ci(build): add missing pro-micro compatible shields
These should've been added in previous PRs.

PR: #473
2020-12-06 22:50:29 -05:00
innovaker
8ad4f4133d ci(build): add support for board-only builds
Lays the groundwork for CI building boards that don't require shields.

PR: #464
2020-12-06 22:49:35 -05:00
Pete Johanson
7ea1892bbb fix(display): All display updates in work thread.
* Make sure all LVGL access is from main work thread.
2020-12-06 22:47:21 -05:00
Pete Johanson
0d80220e14 fix(ble): Raise profile events from work thread.
* Make sure we don't raise events from BLE
  host thread.
2020-12-06 22:47:21 -05:00
Okke Formsma
e00eceb508 fix(sticky keys): fix tapping-sticky-keys bug.
Sticky keys should be cleared when they were tapped in rapid succession before the timer runs out.
2020-12-06 00:33:20 -05:00
Okke Formsma
f86e0fff14 fix(sticky keys): always clear sticky key when releasing the behavior 2020-12-06 00:33:20 -05:00
Okke Formsma
2ba16c2f3d fix(sticky keys): use correct timestamp when clearing sticky key in timer 2020-12-06 00:33:20 -05:00
Okke Formsma
37946ff57b fix(sticky keys): simplify timer management 2020-12-06 00:33:20 -05:00
innovaker
2f9e8ea3c1 refactor(devcontainer): format with prettier
PR: #474
2020-12-05 14:29:33 +00:00
innovaker
a5bddcedbe build(west): migrate to zmkfirmware/zephyr fork
Replaces `petejohanson` with `zmkfirmware` for ZMK's fork of Zephyr (branch `zmk-v2.3.0-with-fixes`)

PR: #468
2020-12-04 17:00:38 -05:00
innovaker
82625c6bb5 build(cmake): remove unnecessary SYSCALL_INCLUDE_DIRS for drivers
PR: #406
2020-12-04 16:53:52 -05:00
Pete Johanson
ca38894e07 fix(drivers): Remove conditional from directories. 2020-12-04 16:25:32 -05:00
innovaker
54cbc07e6e ci(build): remove proton_c guard from uf2 archive step
Guards conditions aren't strictly required because the build only logs a warning if the file doesn't exist.  It still completes successfully.

PR: #463
2020-12-03 21:10:05 -05:00
innovaker
42cdb83823 ci(build): sort boards and shields alphabetically
Lays the groundwork for further improvements.

PR: #458
2020-12-03 21:07:06 -05:00
innovaker
8d9ae1fdf3 refactor: Align drivers with Zephyr file system conventions
PR: #400
2020-12-03 21:06:01 -05:00
Nick
177b28f01d refactor(settings): Add Kconfig option for settings debounce 2020-12-02 19:54:48 -05:00
Pete Johanson
8b91918352 refactor(shields): Cradio to use interrupts now. 2020-12-02 16:46:05 -05:00
Pete Johanson
e0fede4aa5 refactor(kscan): Use PORT events for direct driver
* Switch interrupt configuration so nRF52 uses
  PORT events for lower power use, and wake
  from deep sleep.
* Closes #272
2020-12-02 16:46:05 -05:00
Pete Johanson
b3f3362b50 feat(display): Initial widget/status screen work.
* Battery and output status widgets
* Built in status screen combining them.
* Ability to define a custom status screen factory
  function.
2020-12-02 16:04:56 -05:00
Pete Johanson
d5ea426975 refactor(battery): Fire event on battery event. 2020-12-02 16:04:56 -05:00
KemoNine
f8af592a9c Update cmake note to be 3.15 which is the current minimum version. This is a re-implementation of GitHub PR 403 2020-12-02 16:01:20 -05:00
innovaker
94f058bc90 ci(build): replace board matrix array with list
A multi-line list can be more merge friendly than a single-line array.

PR: #457
2020-12-02 16:00:18 -05:00
innovaker
7b3a55cf50 refactor(ble): silence warning auth_passkey_display not used
Silences the following build warning ...

../src/ble.c:407:13: warning: 'auth_passkey_display' defined but not used [-Wunused-function]
  407 | static void auth_passkey_display(struct bt_conn *conn, unsigned int passkey) {
2020-12-01 07:21:45 -05:00
innovaker
fe010c7b6d refactor(workflows): add 3- prefix to cache keys
A hack to invalidate GitHub actions/cache in CI builds/tests.

Activates benefits of 90123caa4c.

Should be reverted after 2 weeks.

PR: #442
2020-12-01 00:32:02 -05:00
4pplet
924a598920 Updated function calls with missing reference. GPIO missing.
Updated function calls with missing reference. GPIO missing.

To my understanding:
DT_INST_GPIO_PIN() should be called instead if DT_INST_PIN()
DT_INST_GPIO_FLAGS() should be called instead if DT_INST_GPIO_FLAGS()

Current implementation does not compile when using control pin.
2020-11-29 21:12:26 -05:00
Okke Formsma
3bf770a364 bugfix(sticky keys): release active sticky keys properly
see https://github.com/zmkfirmware/zmk/issues/445
2020-11-29 20:16:51 -05:00
innovaker
7babe7f185 refactor(workflows): align GitHub workflow conventions
Cosmetic pass at aligning the conventions used in ZMK's workflows with GitHub's examples.  Based on examples found at:
https://github.com/actions/starter-workflows

PR #433
2020-11-28 17:00:37 -05:00
innovaker
e6d863c610 build(workflows): add each workflow to its own trigger conditions
For each workflow, add its path to its own trigger conditions so that it automatically re-triggers for testing purposes whenever it is changed.

PR: #443
2020-11-28 16:59:38 -05:00
innovaker
307fd5d250 chore(build): format west.yml
Realigns with Prettier formatting.

Discrepancy introduced by c067629c83

PR: #440
2020-11-28 12:21:19 -05:00
innovaker
90123caa4c build(west): add clone-depth = 1 to zephyr and uf2
This reduces zephyr's footprint to 33% and dramatically reduces the cloning times (west update).

PR: #441
2020-11-28 12:16:17 -05:00
Nick
093719a3b8 feat: Add settings support for external power
fix: clang-format and setting state variable

fix: Fix startup settings configuration

fix(ext_power): Add static to state


fix(ext_power): Set default settings value


Use driver data status instead of global file state
2020-11-28 01:44:35 -05:00
Okke Formsma
76a6d7b4c5 feat(sticky keys): initial implementation 2020-11-28 00:58:24 -05:00