-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
12 changed files
with
26,100 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,35 @@ | ||
# armadillo1 | ||
A 36 key wireless split keyboard | ||
# Armadillo1 | ||
|
||
 | ||
|
||
It all started with a [Talk by ink](https://media.ccc.de/v/gpn22-498-tastaturen-ein-drama-mit-10-fingern) at GPN22, which inspired me to build my own customized split keyboard. This one is fitted to the exact size of my hands and features a 36 key layout. | ||
|
||
## Layout | ||
|
||
I used [ergopad](https://pashutk.com/ergopad/) to determine the exact poitions of my fingertips that feel most comfortable. Then, I replicated the resulting layout manually using [ergogen](https://ergogen.ceoloide.com/). | ||
|
||
## Keymap | ||
|
||
 | ||
|
||
For more details, see the [keymap README](keymap/README.md). | ||
|
||
## Switches | ||
|
||
Kailh MX Jade. They're clicky switches with an above-average activation force. | ||
|
||
## Keycaps | ||
|
||
Smolo Keycaps from [BeeKeeb](https://shop.beekeeb.com/product/smolo-low-profile-keycap/). | ||
|
||
## Risers | ||
|
||
Self-printed. The design is available on [MakerWorld](https://makerworld.com/en/models/809248#profileId-750244). | ||
|
||
## Case | ||
|
||
Self-printed. I'm not yet fully satisfied by the design, so it's not yet published. If you're actually interested to print one yourself, please poke me. | ||
|
||
## Stands | ||
|
||
Two [MagSafe Stands](https://de.ugreen.com/products/45378?_pos=28&_sid=3c43091c2&_ss=r) by Ugreen. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
# Armadillo Keymap | ||
|
||
## How to use | ||
|
||
### armadillo.keymap | ||
|
||
The keymap configuration to include in your zmk config. | ||
|
||
### armadillo-keymap-layout.json | ||
|
||
You can import this file along with `armadillo.keymap` to [nickcoutsos.github.io](https://nickcoutsos.github.io/keymap-editor/) for a nice visualization of the layout. However, this tool doesn't pick up key combos. I visualized them by hand in the `symbols` layer by adding an icon between two keys. The combos are available in any layer. | ||
|
||
 | ||
 | ||
 | ||
|
||
The full `zmk` config can be found over at [rngcntr/zmk-config](https://github.com/rngcntr/zmk-config). | ||
**WARNING**: The pin config differs from the one defined by the PCB by *one pin*, because the pin in question was damaged on my controller. I only noticed this once the PCB was already produced. Flashing this version without modification will cause one column to be ignored. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
{ | ||
"layouts": { | ||
"LAYOUT": { | ||
"layout": [ | ||
{ "row": 0, "col": 0, "x": 0.057, "y": 0.893, "r": -7, "rx": 0.557, "ry": 1.393 }, | ||
{ "row": 0, "col": 1, "x": 1.238, "y": 0.212, "r": -2, "rx": 1.738, "ry": 0.712 }, | ||
{ "row": 0, "col": 2, "x": 2.358, "y": 0 }, | ||
{ "row": 0, "col": 3, "x": 3.484, "y": 0.583, "r": 3, "rx": 3.984, "ry": 1.083 }, | ||
{ "row": 0, "col": 4, "x": 4.633, "y": 0.701, "r": 6, "rx": 5.133, "ry": 1.201 }, | ||
{ "row": 0, "col": 5, "x": 8.585, "y": 0.701, "r": -6, "rx": 9.085, "ry": 1.201 }, | ||
{ "row": 0, "col": 6, "x": 9.734, "y": 0.583, "r": -3, "rx": 10.234, "ry": 1.083 }, | ||
{ "row": 0, "col": 7, "x": 10.86, "y": 0 }, | ||
{ "row": 0, "col": 8, "x": 11.98, "y": 0.212, "r": 2, "rx": 12.48, "ry": 0.712 }, | ||
{ "row": 0, "col": 9, "x": 13.161, "y": 0.893, "r": 7, "rx": 13.661, "ry": 1.393 }, | ||
|
||
{ "row": 1, "col": 0, "x": 0.179, "y": 1.885, "r": -7, "rx": 0.679, "ry": 2.385 }, | ||
{ "row": 1, "col": 1, "x": 1.273, "y": 1.211, "r": -2, "rx": 1.773, "ry": 1.711 }, | ||
{ "row": 1, "col": 2, "x": 2.358, "y": 1 }, | ||
{ "row": 1, "col": 3, "x": 3.432, "y": 1.582, "r": 3, "rx": 3.932, "ry": 2.082 }, | ||
{ "row": 1, "col": 4, "x": 4.528, "y": 1.696, "r": 6, "rx": 5.028, "ry": 2.196 }, | ||
{ "row": 1, "col": 5, "x": 8.69, "y": 1.696, "r": -6, "rx": 9.19, "ry": 2.196 }, | ||
{ "row": 1, "col": 6, "x": 9.786, "y": 1.582, "r": -3, "rx": 10.286, "ry": 2.082 }, | ||
{ "row": 1, "col": 7, "x": 10.86, "y": 1 }, | ||
{ "row": 1, "col": 8, "x": 11.945, "y": 1.211, "r": 2, "rx": 12.445, "ry": 1.711 }, | ||
{ "row": 1, "col": 9, "x": 13.039, "y": 1.885, "r": 7, "rx": 13.539, "ry": 2.385 }, | ||
|
||
{ "row": 2, "col": 0, "x": 0.301, "y": 2.878, "r": -7, "rx": 0.801, "ry": 3.378 }, | ||
{ "row": 2, "col": 1, "x": 1.308, "y": 2.211, "r": -2, "rx": 1.808, "ry": 2.711 }, | ||
{ "row": 2, "col": 2, "x": 2.358, "y": 2 }, | ||
{ "row": 2, "col": 3, "x": 3.379, "y": 2.581, "r": 3, "rx": 3.879, "ry": 3.081 }, | ||
{ "row": 2, "col": 4, "x": 4.424, "y": 2.69, "r": 6, "rx": 4.924, "ry": 3.19 }, | ||
{ "row": 2, "col": 5, "x": 8.795, "y": 2.69, "r": -6, "rx": 9.295, "ry": 3.19 }, | ||
{ "row": 2, "col": 6, "x": 9.839, "y": 2.581, "r": -3, "rx": 10.339, "ry": 3.081 }, | ||
{ "row": 2, "col": 7, "x": 10.86, "y": 2 }, | ||
{ "row": 2, "col": 8, "x": 11.91, "y": 2.211, "r": 2, "rx": 12.41, "ry": 2.711 }, | ||
{ "row": 2, "col": 9, "x": 12.917, "y": 2.878, "r": 7, "rx": 13.417, "ry": 3.378 }, | ||
|
||
{ "row": 3, "col": 2, "x": 2.808, "y": 3.592, "r": 4, "rx": 3.308, "ry": 4.092 }, | ||
{ "row": 3, "col": 3, "x": 3.971, "y": 3.835, "r": 20, "rx": 4.471, "ry": 4.335 }, | ||
{ "row": 3, "col": 4, "x": 5.161, "y": 4.194, "r": 36, "rx": 5.661, "ry": 4.694 }, | ||
{ "row": 3, "col": 5, "x": 8.057, "y": 4.194, "r": -36, "rx": 8.557, "ry": 4.694 }, | ||
{ "row": 3, "col": 6, "x": 9.247, "y": 3.835, "r": -20, "rx": 9.747, "ry": 4.335 }, | ||
{ "row": 3, "col": 7, "x": 10.41, "y": 3.592, "r": -4, "rx": 10.91, "ry": 4.092 } | ||
] | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
#include <behaviors.dtsi> | ||
#include <dt-bindings/zmk/bt.h> | ||
#include <dt-bindings/zmk/keys.h> | ||
|
||
/ { | ||
behaviors { | ||
bhml: balanced_homerow_mod_left { | ||
compatible = "zmk,behavior-hold-tap"; | ||
label = "Balanced Homerow Mod Left"; | ||
bindings = <&kp>, <&kp>; | ||
|
||
#binding-cells = <2>; | ||
tapping-term-ms = <200>; | ||
quick-tap-ms = <0>; | ||
hold-trigger-key-positions = <5 6 7 8 9 15 16 17 18 19 25 26 27 28 29 33 34 35>; | ||
flavor = "balanced"; | ||
}; | ||
|
||
bhmr: balanced_homerow_mod_right { | ||
compatible = "zmk,behavior-hold-tap"; | ||
label = "Balanced Homerow Mod Right"; | ||
bindings = <&kp>, <&kp>; | ||
|
||
#binding-cells = <2>; | ||
tapping-term-ms = <200>; | ||
quick-tap-ms = <0>; | ||
flavor = "balanced"; | ||
hold-trigger-key-positions = <0 1 2 3 4 10 11 12 13 14 20 21 22 23 24 30 31 32>; | ||
}; | ||
|
||
moto: momentary_or_to_layer { | ||
compatible = "zmk,behavior-hold-tap"; | ||
label = "Momentary when held, to when tapped"; | ||
bindings = <&mo>, <&to>; | ||
|
||
#binding-cells = <2>; | ||
tapping-term-ms = <200>; | ||
quick-tap-ms = <0>; | ||
}; | ||
}; | ||
|
||
keymap { | ||
compatible = "zmk,keymap"; | ||
|
||
ALPHA { | ||
bindings = < | ||
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P | ||
&bhml LGUI A &bhml LEFT_ALT S &bhml LSHFT D &bhml LCTRL F &kp G &kp H &bhmr RCTRL J &bhmr RSHFT K &bhmr RALT L &bhmr RGUI SEMICOLON | ||
&kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH | ||
&moto 2 2 &moto 1 1 &kp TAB &kp SPACE &kp ENTER &kp BACKSPACE | ||
>; | ||
}; | ||
|
||
NUMERIC { | ||
bindings = < | ||
&kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 | ||
&trans &trans &trans &trans &trans &trans &kp N4 &kp N5 &kp N6 &kp BACKSPACE | ||
&trans &trans &trans &trans &trans &trans &kp N1 &kp N2 &kp N3 &kp DELETE | ||
&moto 3 3 &moto 0 0 &kp TAB &kp SPACE &kp KP_N0 &kp KP_DOT | ||
>; | ||
}; | ||
|
||
SYMBOLS { | ||
bindings = < | ||
&kp EXCL &kp AT_SIGN &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp STAR &kp LPAR &kp RPAR | ||
&kp GRAVE &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp BACKSLASH &kp LEFT_BRACKET &kp RIGHT_BRACKET | ||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &kp SINGLE_QUOTE | ||
&moto 0 0 &moto 3 3 &kp TAB &kp SPACE &kp CAPSLOCK &trans | ||
>; | ||
}; | ||
|
||
CONTROLS { | ||
bindings = < | ||
&kp C_BACKLIGHT_TOGGLE &kp K_MUTE &kp C_PLAY_PAUSE &trans &trans &kp INSERT &kp PRINTSCREEN &kp SCROLLLOCK &kp PAUSE_BREAK &bt BT_CLR | ||
&kp C_BRIGHTNESS_INC &kp C_VOL_UP &kp C_NEXT &trans &trans &kp LEFT &kp DOWN &kp UP_ARROW &kp RIGHT &bt BT_NXT | ||
&kp C_BRIGHTNESS_DEC &kp C_VOL_DN &kp C_PREV &trans &trans &kp HOME &kp PAGE_DOWN &kp PG_UP &kp END &bt BT_PRV | ||
&moto 0 0 &moto 0 0 &kp ESC &kp ESC &trans &bootloader | ||
>; | ||
}; | ||
}; | ||
}; |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.