Age | Commit message (Collapse) | Author |
|
* 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>
|
|
|
|
* Make sure all LVGL access is from main work thread.
|
|
* Make sure we don't raise events from BLE
host thread.
|
|
Sticky keys should be cleared when they were tapped in rapid succession before the timer runs out.
|
|
|
|
|
|
|
|
|
|
* Battery and output status widgets
* Built in status screen combining them.
* Ability to define a custom status screen factory
function.
|
|
|
|
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) {
|
|
see https://github.com/zmkfirmware/zmk/issues/445
|
|
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
|
|
|
|
These timestamps are necessary to correctly deal with delayed events due to hold-tap shenanigans.
|
|
|
|
|
|
fix(ug): Don't return if finding ext power fails
fix(ug): Move ext_power to a static variable
Add #if defs
|
|
Aligns with other existing conventions.
|
|
The application usage used by report 1 is `HID_USAGE_GD_KEYBOARD`. Moreover, the `keys` usage page (0x07) that primarily feeds into this report is predominantly keyboard codes. The rest of the system should align with this naming convention.
|
|
Key release events released keys on the wrong layer if the 'top layer'
was not &trans above the &mo key.
base <&mo 1>
layer 1 <&kp B>
This was caused by overwriting
`zmk_keymap_active_behavior_layer[position]` after the &mo key was
handled.
|
|
|
|
* Favor the settings reset images for this.
|
|
This should've been done in eff1b8223b5010d526914530c5d1d469eff356df.
|
|
* Remove need for separate `&cp` behavior, but
keep it for now for backward compat.
* Refactor sensor inc/dec as well.
|
|
Replace deprecated key names (LCTL, NUM_0, NUM_1).
Replace abbreviated names with fully qualified names (LCTL, RGUI, NUM_0, NUM_1).
Follow-up to #21.
|
|
Deprecate `USAGE_KEYPAD` and replace with `HID_USAGE_KEY`.
Deprecate `USAGE_CONSUMER` and replace with `HID_USAGE_CONSUMER`.
Closes #217.
|
|
|
|
|
|
https://github.com/zmkfirmware/zmk/issues/86
|
|
Co-authored-by: Pete Johanson <peter@peterjohanson.com>
|
|
|
|
feat: only send HID reports to one endpoint
|
|
|
|
|
|
"Outputs" is probably easier for most people to understand than "endpoints".
|
|
Added a new setting to remember the user's preferred endpoint. When both USB and
BLE are connected, the preferred endpoint will be used.
Added a new behavior to control this setting. It supports commands:
&end END_USB - Prefer USB output
&end END_BLE - Prefer BLE output
&end END_TOG - Toggle between USB and BLE
|
|
Added zmk_ble_active_profile_is_connected() to allow code outside ble.c to check
the status of the active profile, and changed the ble_active_profile_changed
event to also notify when the active profile connects or disconnects.
Changed endpoint selection to to also update when the active profile changes,
connects, or disconnects.
|
|
This prevents stuck keys when switching endpoints by clearing
everything in the HID report and sending one last report before
switching to the new endpoint.
|
|
Added some utility functions and an event for tracking the state of the
USB connection.
Updated endpoints.c to select a single endpoint to send HID reports to
based on the status of the USB and BLE connections. Partially fixes #206.
Future commits will add a user setting to control which endpoint is used if
both USB and BLE are ready.
|
|
Add missing byte to make keypad report boot friendly.
|
|
|
|
Replace NKRO bit array with configurable integer (DV) array.
|
|
This is necessary for testing a large number of events (e.g. every key code) within a single build/pass.
The u8_t limitation became apparent during end-to-end testing of #21.
|
|
Add RGB underglow state Kconfig and settings
|
|
|
|
|
|
* Properly put device name and GAP appearance
in advertising packets, for proper display in
macOS, Android, etc.
* Closes #124
|
|
the active profile, don't continue advertising.
|