29 Commits
Author SHA1 Message Date
keymap-editor[bot] 4f60caf483 Add dedicated escape to game layer
/ build (push) Failing after 2m50s
2025-12-22 21:24:07 +00:00
Greg Hellings e718dc9e47 Update hashes 2025-12-05 14:13:37 -06:00
keymap-editor[bot] 9f1c9b748d Enable shift in games 2025-11-06 17:57:32 +00:00
keymap-editor[bot] c9d8c3b12e Replace toggling with to for layer 0 2025-03-07 04:47:43 +00:00
Greg Hellings bf9689889d Merge branch 'lily58-update' into lily58 2025-03-06 22:39:26 -06:00
keymap-editor[bot] c94b963e51 Add gaming layer 2025-03-07 04:37:46 +00:00
Greg Hellings ccd55a102f Finally a good, pinned build
This has been struggling to build for quite some time. For many rounds
the git checkouts were not succeeding. Then, the git repositories were
not matching what used to be.
It would be a really good idea to figure out all the dependencies that
are needing to be packaged, but I'm not sure I have the gumption to do
that at this point
2025-02-22 03:46:59 -06:00
Greg Hellings 08f9538d3c Update flake locks and add USB/BLE toggle 2025-02-21 15:08:34 -06:00
Greg Hellings 322fe07e5b Add default app 2024-10-29 08:02:31 -05:00
Greg Hellings 6370fecbf9 Try the balanced key tap behavior 2024-10-29 07:53:05 -05:00
Greg Hellings b165e8ca75 Remove unused binding 2024-10-29 07:40:44 -05:00
Greg Hellings 878c891225 Make nix work, and update firmware 2024-10-28 12:35:21 -05:00
Greg Hellings 2574861987 Use latest deps and gitignore 2024-10-28 12:33:29 -05:00
Greg Hellings c3eec66c0e First pass as Nix build 2024-10-28 12:33:29 -05:00
Greg HellingsandGitHub b9bce2ada9 Update lily58.keymap
Get the correct name, now that the action is corrected
2024-07-25 12:31:47 -05:00
keymap-editor[bot]andGitHub 106eb1ccaa Correct values for mouse scroll 2024-07-25 17:07:59 +00:00
Greg HellingsandGitHub b2e2a01ba5 Add comment about where to find scroll support 2024-07-25 11:28:38 -05:00
Greg HellingsandGitHub 71b05fc252 Add scroll mouse scroll 2024-07-25 11:27:54 -05:00
keymap-editor[bot]andGitHub 63a8a22e56 Clear some old, unused tap dances 2024-07-25 16:00:57 +00:00
keymap-editor[bot]andGitHub e06d061ed0 Let home row mods combine themselves 2024-06-21 02:28:19 +00:00
keymap-editor[bot]andGitHub 8041a5fe42 Use the different homerow mods 2024-06-21 01:47:11 +00:00
keymap-editor[bot]andGitHub ed2332a0a9 Swap the space and enter keys back to where I actually like them to be. 2024-06-21 01:42:23 +00:00
keymap-editor[bot]andGitHub f0b29f8aea Mouse key presses added in 2024-06-21 01:14:16 +00:00
Greg Hellings 995995b64e I think this fixes the build process 2024-06-20 20:02:19 -05:00
Greg Hellings df40cfa698 Correct mouse move name 2024-06-20 19:41:53 -05:00
Greg Hellings 77581cd8de Include mouse info 2024-06-20 19:36:33 -05:00
Greg Hellings a11b9f47a5 Try enabling mouse movements 2024-06-20 19:31:07 -05:00
Greg Hellings ca1e47f4f0 Try building with mouse support 2024-06-20 19:15:43 -05:00
keymap-editor[bot]andGitHub eeb0504086 Make the Lily match the Dactyl for advanced key uses 2024-06-21 00:00:38 +00:00
7 changed files with 153 additions and 40 deletions
+1
View File
@@ -0,0 +1 @@
result
+2
View File
@@ -1 +1,3 @@
[This guy](https://nickcoutsos.github.io/keymap-editor/) has a pretty decent GUI editor on the web that integrates with your Git repository.
And [this pr](https://github.com/zmkfirmware/zmk/pull/2027) is where the experimental mouse support comes from.
+1
View File
@@ -4,3 +4,4 @@
# Uncomment the following line to enable the Lily58 OLED Display
# CONFIG_ZMK_DISPLAY=y
CONFIG_ZMK_MOUSE=y
+45 -35
View File
@@ -4,9 +4,13 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/mouse.h>
#include <dt-bindings/zmk/mouse.h>
#include <behaviors.dtsi>
#include <dt-bindings/zmk/bt.h>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/outputs.h>
#include <dt-bindings/zmk/pointing.h>
&mt {
flavor = "tap-preferred";
@@ -30,36 +34,30 @@
bindings = <&sl 1>, <&tog 1>;
};
tap_dance_tab: tap_dance_tab {
compatible = "zmk,behavior-tap-dance";
label = "TAP_DANCE_TAB";
#binding-cells = <0>;
bindings = <&kp TAB>, <&kp RA(TAB)>;
};
td_escape: td_escape {
compatible = "zmk,behavior-tap-dance";
label = "TD_ESCAPE";
#binding-cells = <0>;
bindings = <&kp GRAVE>, <&kp ESCAPE>;
};
td_z: td_z {
compatible = "zmk,behavior-tap-dance";
label = "TD_Z";
#binding-cells = <0>;
bindings = <&kp X>, <&kp Z>;
};
hm: hm {
compatible = "zmk,behavior-hold-tap";
label = "HM";
label = "Home row mods for left";
bindings = <&kp>, <&kp>;
#binding-cells = <2>;
tapping-term-ms = <200>;
flavor = "balanced";
quick-tap-ms = <0>;
hold-trigger-key-positions = <48 49 6 7 8 9 10 11 18 19 20 21 22 23 30 31 32 33 34 35 43 44 45 46 47 48 49 54 55 56 57 40 39 38>;
hold-trigger-on-release;
};
hm_right: hm_right {
compatible = "zmk,behavior-hold-tap";
label = "Home row mods for right";
bindings = <&kp>, <&kp>;
#binding-cells = <2>;
tapping-term-ms = <200>;
flavor = "balanced";
quick-tap-ms = <0>;
hold-trigger-key-positions = <0 1 2 4 5 12 13 14 15 16 17 24 25 26 27 28 29 36 37 38 39 40 41 42 50 51 52 53 3>;
hold-trigger-on-release;
};
};
@@ -75,11 +73,11 @@
// | ALT | GUI | LOWER| SPACE | | ENTER | RAISE| BSPC | GUI |
bindings = <
&td_escape &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DELETE
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DELETE
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BACKSLASH
&kp CAPSLOCK &hm LCTRL A &hm LEFT_GUI S &hm LEFT_ALT D &hm LEFT_SHIFT F &kp G &kp H &hm RIGHT_SHIFT J &hm RIGHT_ALT K &hm RIGHT_GUI L &hm RIGHT_CONTROL SEMICOLON &kp SQT
&mo 3 &kp Z &td_z &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp EQUAL
&trans &trans &tap_layer_1 &kp ENTER &kp SPACE &kp BACKSPACE &tap_layer_2 &tog 0
&kp CAPSLOCK &hm LCTRL A &hm LEFT_GUI S &hm LEFT_ALT D &hm LEFT_SHIFT F &kp G &kp H &hm_right RIGHT_SHIFT J &hm_right RIGHT_ALT K &hm_right RIGHT_GUI L &hm_right RIGHT_CONTROL SEMICOLON &kp SQT
&mo 3 &kp Z &kp X &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp EQUAL
&tog 0 &tog 4 &lt 1 ESCAPE &kp ENTER &kp SPACE &lt 2 BACKSPACE &kp MINUS &tog 0
>;
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
@@ -98,7 +96,7 @@
&trans &trans &trans &trans &trans &trans &kp STAR &kp N7 &kp N8 &kp N9 &kp MINUS &trans
&trans &trans &trans &trans &trans &trans &kp KP_DIVIDE &kp NUMBER_4 &kp N5 &kp N6 &kp PLUS &trans
&trans &trans &trans &trans &trans &trans &kp LEFT_PARENTHESIS &kp RIGHT_PARENTHESIS &kp CARET &kp NUMBER_1 &kp NUMBER_2 &kp NUMBER_3 &kp ENTER &trans
&trans &trans &tap_layer_1 &trans &kp N0 &kp PERIOD &trans &tog 0
&trans &trans &tap_layer_1 &trans &kp N0 &kp PERIOD &trans &to 0
>;
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
@@ -114,10 +112,10 @@
bindings = <
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &kp HOME &kp PAGE_UP &trans &trans &trans
&trans &trans &trans &trans &trans &trans &kp LEFT &kp DOWN &kp UP_ARROW &kp RIGHT &trans &trans
&trans &trans &trans &trans &trans &trans &trans &trans &trans &kp END &kp PAGE_DOWN &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &tog 0
&trans &trans &msc SCRL_UP &mmv MOVE_UP &msc SCRL_DOWN &trans &trans &kp HOME &kp PAGE_UP &trans &trans &trans
&trans &trans &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_RIGHT &trans &kp LEFT &kp DOWN &kp UP_ARROW &kp RIGHT &trans &trans
&trans &trans &trans &trans &trans &trans &mkp LCLK &mkp RCLK &trans &kp END &kp PAGE_DOWN &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &to 0
>;
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
@@ -126,11 +124,23 @@
bt_layer {
bindings = <
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &bt BT_CLR
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &tog 0
&trans &trans &trans &trans &trans &trans &out OUT_USB &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &out OUT_TOG &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4
&trans &trans &trans &trans &trans &trans &trans &trans &out OUT_BLE &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &to 0
>;
};
game {
bindings = <
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DELETE
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BACKSLASH
&kp LEFT_SHIFT &kp A &kp S &kp D &kp F &kp G &kp H &hm_right RIGHT_SHIFT J &hm_right RIGHT_ALT K &hm_right RIGHT_GUI L &hm_right RIGHT_CONTROL SEMICOLON &kp SQT
&kp F1 &kp Z &kp X &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESCAPE
&kp J &kp H &kp Y &kp ENTER &kp SPACE &lt 2 BACKSPACE &kp MINUS &to 0
>;
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
};
};
};
+4 -2
View File
@@ -2,12 +2,14 @@ manifest:
remotes:
- name: zmkfirmware
url-base: https://github.com/zmkfirmware
- name: pete
url-base: https://github.com/petejohanson
# Additional modules containing boards/shields/custom code can be listed here as well
# See https://docs.zephyrproject.org/3.2.0/develop/west/manifest.html#projects
projects:
- name: zmk
remote: zmkfirmware
revision: main
remote: pete
revision: feat/pointers-with-input-processors
import: app/west.yml
self:
path: config
Generated
+48
View File
@@ -0,0 +1,48 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1764915887,
"narHash": "sha256-CeBCJ9BMsuzVgn8GVfuSRZ6xeau7szzG0Xn6O/OxP9M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "42e29df35be6ef54091d3a3b4e97056ce0a98ce8",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs",
"zmk-nix": "zmk-nix"
}
},
"zmk-nix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1764463362,
"narHash": "sha256-5tp/ldKhQjQA4x3PkxcKs2X7nZH6yel983jE6612bWs=",
"owner": "lilyinstarlight",
"repo": "zmk-nix",
"rev": "a067029e5447d211b933179cb25bba12bbc1a8fa",
"type": "github"
},
"original": {
"owner": "lilyinstarlight",
"repo": "zmk-nix",
"type": "github"
}
}
},
"root": "root",
"version": 7
}
+49
View File
@@ -0,0 +1,49 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
zmk-nix = {
url = "github:lilyinstarlight/zmk-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, zmk-nix }: let
forAllSystems = nixpkgs.lib.genAttrs (nixpkgs.lib.attrNames zmk-nix.packages);
in {
packages = forAllSystems (system: rec {
default = firmware;
firmware = zmk-nix.legacyPackages.${system}.buildSplitKeyboard {
name = "firmware";
src = nixpkgs.lib.sourceFilesBySuffices self [ ".board" ".cmake" ".conf" ".defconfig" ".dts" ".dtsi" ".json" ".keymap" ".overlay" ".shield" ".yml" "_defconfig" ];
board = "nice_nano_v2";
shield = "lily58_%PART%";
zephyrDepsHash = "sha256-GO8lfSqZwc8yLc+cyFc+EA3163tBrYLVP9dFacytZTg=";
meta = {
description = "ZMK firmware";
license = nixpkgs.lib.licenses.mit;
platforms = nixpkgs.lib.platforms.all;
};
};
flash = zmk-nix.packages.${system}.flash.override { inherit firmware; };
update = zmk-nix.packages.${system}.update;
});
apps = forAllSystems (system: {
default = {
type = "app";
program = "${nixpkgs.lib.getExe self.packages.${system}.flash}";
};
});
devShells = forAllSystems (system: {
default = zmk-nix.devShells.${system}.default;
});
};
}