├── .github └── workflows │ ├── build.yml │ └── draw-keymaps.yml ├── README.md ├── build.yaml ├── config ├── ergonaut_one.conf ├── ergonaut_one.json ├── ergonaut_one.keymap └── west.yml └── keymap-drawer ├── config.yaml ├── ergonaut_one.svg └── ergonaut_one.yaml /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | on: [push, pull_request, workflow_dispatch] 2 | 3 | jobs: 4 | build: 5 | uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@main 6 | -------------------------------------------------------------------------------- /.github/workflows/draw-keymaps.yml: -------------------------------------------------------------------------------- 1 | # Draw keymap diagrams using keymap-drawer ZMK user config workflow 2 | name: Draw ZMK keymaps 3 | on: 4 | workflow_dispatch: 5 | push: 6 | paths: 7 | - 'config/*.keymap' 8 | - 'config/includes/*.dtsi' 9 | - keymap-drawer/config.yaml 10 | - .github/workflows/draw-keymaps.yml 11 | 12 | jobs: 13 | draw: 14 | uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@main 15 | with: 16 | keymap_patterns: 'config/*.keymap' 17 | config_path: keymap-drawer/config.yaml 18 | output_folder: keymap-drawer 19 | install_branch: main 20 | amend_commit: true 21 | draw_args: "ergonaut_one:'-k corne_rotated -l LAYOUT_split_3x6_3'" 22 | json_path: keymap-drawer/layouts -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ZMK Firmware for Ergonaut One keyboard 2 | 3 | This is a repository for a ZMK Firmware for Ergonaut One keyboard. 4 | 5 | ## Default keymap 6 | 7 | Visual representation of the default keymap in keyboard-layout-editor: [KLE](http://www.keyboard-layout-editor.com/#/gists/13d0f7ae7a8b5835efcd23d61f50336a) 8 | 9 | Below representation was generated with [`keymap-drawer`](https://github.com/caksoylar/keymap-drawer) – check out the automatically generated layouts using the [automated Github workflow](https://github.com/caksoylar/keymap-drawer/tree/main#setting-up-an-automated-drawing-workflow) for each keyboard in the [`keymap-drawer` folder](keymap-drawer/), which is always up to date with the config. 10 | 11 | ![Keymap Representation](./keymap-drawer/ergonaut_one.svg?raw=true "Keymap Representation") 12 | 13 | This layout is heavily inspired from [Watchman 42-key layout](https://github.com/aroum/Watchman-layouts) 14 | 15 | ## FAQ 16 | 17 | - [FAQ](#faq) 18 | - [How to change the keymap?](#how-to-change-the-keymap) 19 | - [How to flash the keyboard?](#how-to-flash-the-keyboard) 20 | - [How to pair halves?](#how-to-pair-halves) 21 | - [Problems](#problems) 22 | - [I'm getting File Transfer Error after copying firmware to the keyboard](#im-getting-file-transfer-error-after-copying-firmware-to-the-keyboard) 23 | 24 | ### How to change the keymap? 25 | 26 | 1. Fork or use this repository as a template https://github.com/ergonautkb/one-zmk-config. 27 | 2. Enable Github Actions for your repository. 28 | 29 | You have two options on how to configure your desired keymap: 30 | 31 | #### Option 1. Keymap Editor 32 | 33 | 1. Open [Keymap Editor](https://nickcoutsos.github.io/keymap-editor/). 34 | 2. Connect it to your Github account and give an access to your repository to Keymap Editor's app. 35 | 3. Make changes to your keymap and press `Save` - it will trigger software build. Wait for it to complete. 36 | 4. Grab the `firmware.zip` archive. 37 | 38 | #### Option 2. Manual 39 | 40 | 1. Make changes to the [ergonaut_one.keymap](config/ergonaut_one.keymap) file using your favorite text editor. 41 | 2. Commit changes to your repository. 42 | 3. Go to `Actions` tab in your Github repository, locate the latest build and wait for it to complete. 43 | 4. Grab the `firmware.zip` archive 44 | 45 | ### How to flash the keyboard? 46 | 47 | 1. Obtain `firmware.zip` 48 | 2. Unzip `firmware.zip` - you should have `ergonaut_one_left-seeeduino_xiao_ble-zmk.uf2` and `ergonaut_one_right-seeeduino_xiao_ble-zmk.uf2` files 49 | 3. Turn off the power for selected halve (move slider to position `OFF`) 50 | 4. Connect selected halve to the PC via USB-C cable 51 | 5. Press `RESET` button **twice** to enter DFU mode - you should see new USB device in your file manager 52 | 6. Copy the corresponding firmware to the root directory of the new USB device 53 | 7. Disconnect selected halve from the PC 54 | 8. Repeat steps 3-7 for the other halve 55 | 56 | ### How to pair halves? 57 | 58 | 1. Turn off the power for both halves (move slider to position `OFF`) 59 | 2. Turn on the power for both halves (move slider to position `ON`) 60 | 3. Press `RESET` button **once** on both halves **simultaneously** 61 | 62 | ### Problems 63 | 64 | #### I'm getting File Transfer Error after copying firmware to the keyboard 65 | 66 | It's OK. Proof: https://zmk.dev/docs/troubleshooting#file-transfer-error 67 | -------------------------------------------------------------------------------- /build.yaml: -------------------------------------------------------------------------------- 1 | include: 2 | - board: seeeduino_xiao_ble 3 | shield: ergonaut_one_left 4 | - board: seeeduino_xiao_ble 5 | shield: ergonaut_one_right 6 | - board: seeeduino_xiao_ble 7 | shield: ergonaut_one_left 8 | snippet: studio-rpc-usb-uart 9 | cmake-args: -DCONFIG_ZMK_STUDIO=y 10 | artifact-name: ergonaut_one_left_studio 11 | - board: seeeduino_xiao_ble 12 | shield: ergonaut_one_right 13 | snippet: studio-rpc-usb-uart 14 | cmake-args: -DCONFIG_ZMK_STUDIO=y 15 | artifact-name: ergonaut_one_right_studio 16 | - board: seeeduino_xiao_ble 17 | shield: settings_reset 18 | -------------------------------------------------------------------------------- /config/ergonaut_one.conf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2020 The ZMK Contributors 2 | # SPDX-License-Identifier: MIT 3 | 4 | CONFIG_BT_MAX_CONN=6 5 | CONFIG_BT_MAX_PAIRED=6 6 | 7 | CONFIG_ZMK_IDLE_TIMEOUT=30000 8 | CONFIG_ZMK_SLEEP=y 9 | CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=900000 10 | CONFIG_ZMK_BATTERY_REPORT_INTERVAL=1800 11 | 12 | CONFIG_ZMK_USB=y 13 | CONFIG_ZMK_BLE=y 14 | 15 | CONFIG_BT_CTLR_TX_PWR_PLUS_8=y 16 | -------------------------------------------------------------------------------- /config/ergonaut_one.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "ergonaut_one", 3 | "name": "Ergonaut One", 4 | "layouts": { 5 | "LAYOUT": { 6 | "layout": [ 7 | { "row": 0, "col": 0, "x": 0, "y": 0.375 }, 8 | { "row": 0, "col": 1, "x": 1, "y": 0.375 }, 9 | { "row": 0, "col": 2, "x": 2, "y": 0.125 }, 10 | { "row": 0, "col": 3, "x": 3, "y": 0.000 }, 11 | { "row": 0, "col": 4, "x": 4, "y": 0.125 }, 12 | { "row": 0, "col": 5, "x": 5, "y": 0.250 }, 13 | { "row": 0, "col": 6, "x": 9, "y": 0.250 }, 14 | { "row": 0, "col": 7, "x": 10, "y": 0.125 }, 15 | { "row": 0, "col": 8, "x": 11, "y": 0.000 }, 16 | { "row": 0, "col": 9, "x": 12, "y": 0.125 }, 17 | { "row": 0, "col": 10, "x": 13, "y": 0.375 }, 18 | { "row": 0, "col": 11, "x": 14, "y": 0.375 }, 19 | 20 | { "row": 1, "col": 0, "x": 0, "y": 1.375 }, 21 | { "row": 1, "col": 1, "x": 1, "y": 1.375 }, 22 | { "row": 1, "col": 2, "x": 2, "y": 1.125 }, 23 | { "row": 1, "col": 3, "x": 3, "y": 1.000 }, 24 | { "row": 1, "col": 4, "x": 4, "y": 1.125 }, 25 | { "row": 1, "col": 5, "x": 5, "y": 1.250 }, 26 | { "row": 1, "col": 6, "x": 9, "y": 1.250 }, 27 | { "row": 1, "col": 7, "x": 10, "y": 1.125 }, 28 | { "row": 1, "col": 8, "x": 11, "y": 1.000 }, 29 | { "row": 1, "col": 9, "x": 12, "y": 1.125 }, 30 | { "row": 1, "col": 10, "x": 13, "y": 1.375 }, 31 | { "row": 1, "col": 11, "x": 14, "y": 1.375 }, 32 | 33 | { "row": 2, "col": 0, "x": 0, "y": 2.375 }, 34 | { "row": 2, "col": 1, "x": 1, "y": 2.375 }, 35 | { "row": 2, "col": 2, "x": 2, "y": 2.125 }, 36 | { "row": 2, "col": 3, "x": 3, "y": 2.000 }, 37 | { "row": 2, "col": 4, "x": 4, "y": 2.125 }, 38 | { "row": 2, "col": 5, "x": 5, "y": 2.250 }, 39 | { "row": 2, "col": 6, "x": 9, "y": 2.250 }, 40 | { "row": 2, "col": 7, "x": 10, "y": 2.125 }, 41 | { "row": 2, "col": 8, "x": 11, "y": 2.000 }, 42 | { "row": 2, "col": 9, "x": 12, "y": 2.125 }, 43 | { "row": 2, "col": 10, "x": 13, "y": 2.375 }, 44 | { "row": 2, "col": 11, "x": 14, "y": 2.375 }, 45 | 46 | { "row": 3, "col": 3, "x": 3.5, "y": 3.250 }, 47 | { "row": 3, "col": 4, "x": 3.5, "y": 3.250, "r": 15, "rx": 4, "ry": 8.05 }, 48 | { "row": 3, "col": 5, "x": 3.5, "y": 3.250, "r": 30, "rx": 4, "ry": 8.05 }, 49 | { "row": 3, "col": 6, "x": 10.5, "y": 3.250, "r": -30, "rx": 11, "ry": 8.05 }, 50 | { "row": 3, "col": 7, "x": 10.5, "y": 3.250, "r": -15, "rx": 11, "ry": 8.05 }, 51 | { "row": 3, "col": 8, "x": 10.5, "y": 3.250 } 52 | ] 53 | } 54 | }, 55 | "sensors": [] 56 | } 57 | -------------------------------------------------------------------------------- /config/ergonaut_one.keymap: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #define DEF 0 6 | #define LWR 1 7 | #define RSE 2 8 | #define ADJ 3 9 | 10 | < { 11 | quick-tap-ms = <200>; 12 | }; 13 | 14 | &mt { 15 | quick-tap-ms = <200>; 16 | }; 17 | 18 | / { 19 | conditional_layers { 20 | compatible = "zmk,conditional-layers"; 21 | 22 | tri-layer { 23 | if-layers = ; 24 | then-layer = ; 25 | }; 26 | }; 27 | 28 | keymap { 29 | compatible = "zmk,keymap"; 30 | 31 | default_layer { 32 | display-name = "MAIN"; 33 | bindings = < 34 | &mt LGUI RBKT &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT 35 | &mt LCTRL GRAVE &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &mt RCTRL SQT 36 | &mt LALT MINUS &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &mt RALT BSLH 37 | < RSE TAB &mt LSHFT SPACE < LWR RET < LWR ESC &mt RSHFT BSPC < RSE DEL 38 | >; 39 | }; 40 | lower_layer { 41 | display-name = "SYM"; 42 | bindings = < 43 | &mt LGUI F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 44 | &mt LCTRL PLUS &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp STAR &kp LPAR &kp RPAR &mt RCTRL MINUS 45 | &mt LALT EQUAL &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp RALT 46 | &trans &trans &trans &trans &trans &trans 47 | >; 48 | }; 49 | 50 | raise_layer { 51 | display-name = "NUM"; 52 | bindings = < 53 | &mt LGUI KP_NUM &kp KP_SLASH &kp KP_N7 &kp KP_N8 &kp KP_N9 &kp KP_MINUS &kp C_VOL_UP &kp HOME &kp PSCRN &kp PG_UP &kp SLCK &kp CLCK 54 | &mt LCTRL EQUAL &kp KP_MULTIPLY &kp KP_N4 &kp KP_N5 &kp KP_N6 &kp KP_PLUS &kp C_MUTE &kp LEFT &kp UP &kp RIGHT &kp INS &mt RCTRL K_APP 55 | &kp LALT &kp KP_N0 &kp KP_N1 &kp KP_N2 &kp KP_N3 &kp KP_DOT &kp C_VOL_DN &kp END &kp DOWN &kp PG_DN &kp PAUSE_BREAK &kp RALT 56 | &trans &trans &trans &trans &trans &trans 57 | >; 58 | }; 59 | adjust_layer { 60 | display-name = "ADJ"; 61 | bindings = < 62 | &bootloader &studio_unlock &none &none &none &none &none &none &none &none &studio_unlock &bootloader 63 | &bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_SEL 4 &bt BT_SEL 3 &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &bt BT_CLR 64 | &sys_reset &none &none &none &none &none &none &none &none &none &none &sys_reset 65 | &trans &none &trans &none &trans &trans 66 | >; 67 | }; 68 | }; 69 | }; 70 | -------------------------------------------------------------------------------- /config/west.yml: -------------------------------------------------------------------------------- 1 | manifest: 2 | remotes: 3 | - name: zmkfirmware 4 | url-base: https://github.com/zmkfirmware 5 | - name: ergonautkb 6 | url-base: https://github.com/ergonautkb 7 | projects: 8 | - name: zmk 9 | remote: zmkfirmware 10 | revision: main 11 | import: app/west.yml 12 | - name: ergonautkb-zmk-module 13 | remote: ergonautkb 14 | revision: main 15 | self: 16 | path: config 17 | -------------------------------------------------------------------------------- /keymap-drawer/config.yaml: -------------------------------------------------------------------------------- 1 | # configuration for https://github.com/caksoylar/keymap-drawer 2 | parse_config: 3 | raw_binding_map: 4 | '&sys_reset': Reset 5 | '&bootloader': Boot 6 | '&swapper': Win Next 7 | '&caps_word': Caps Word 8 | '&inv_qm': ¿ 9 | 10 | '&kp LC(LG(LEFT))': Desk Left 11 | '&kp LC(LG(RIGHT))': Desk Right 12 | '&kp LC(TAB)': Tab Right 13 | '&kp LC(LS(TAB))': Tab Left 14 | '&kp LA(F4)': Win Close 15 | '&kp LC(F4)': Tab Close 16 | '&kp LS(TAB)': Win Prev 17 | '&kp LS(INS)': Paste 18 | '&kp LG(L)': Lock 19 | 20 | '&out OUT_USB': Out USB 21 | '&out OUT_BLE': Out BLE 22 | 23 | '&bt BT_SEL 0': BT 1 24 | '&bt BT_SEL 1': BT 2 25 | '&bt BT_SEL 2': BT 3 26 | '&bt BT_SEL 3': BT 4 27 | '&bt BT_SEL 4': BT 5 28 | 29 | '&mmv MOVE_UP': Mouse ↑ 30 | '&mmv MOVE_DOWN': Mouse ↓ 31 | '&mmv MOVE_LEFT': Mouse ← 32 | '&mmv MOVE_RIGHT': Mouse → 33 | 34 | '&msc SCRL_UP': Scroll ↑ 35 | '&msc SCRL_DOWN': Scroll ↓ 36 | '&msc SCRL_LEFT': Scroll ← 37 | '&msc SCRL_RIGHT': Scroll → 38 | 39 | '&mkp LCLK': Left Click 40 | '&mkp RCLK': Right Click 41 | '&mkp MCLK': Middle Click 42 | '&mkp MB4': Back Click 43 | '&mkp MB5': Forward Click 44 | 45 | zmk_combos: 46 | combo_tab: {align: top, o: 0.15} 47 | combo_del: {align: top, o: 0.15} 48 | combo_f12: {align: bottom} 49 | combo_btclr: {align: bottom} 50 | combo_play: {align: right} 51 | combo_capswd: {draw_separate: true} 52 | combo_semi: {draw_separate: true} 53 | combo_grave: {draw_separate: true} 54 | combo_lpar: {draw_separate: true} 55 | combo_rpar: {draw_separate: true} 56 | combo_lbkt: {draw_separate: true} 57 | combo_rbkt: {draw_separate: true} 58 | combo_tab: {draw_separate: true} 59 | combo_del: {draw_separate: true} 60 | combo_esc: {draw_separate: true} 61 | combo_ret: {draw_separate: true} 62 | combo_lock: {draw_separate: true} 63 | combo_bslh: {draw_separate: true} 64 | combo_slsh: {draw_separate: true} 65 | 66 | zmk_keycode_map: 67 | # custom mappings 68 | C_VOL_UP: Vol Up 69 | C_VOL_DN: Vol Down 70 | C_AL_CALC: Calc 71 | C_PP: Play Pause 72 | 73 | LCTRL: Ctrl 74 | RCTRL: Ctrl 75 | LALT: Alt 76 | RALT: Alt 77 | LGUI: Gui 78 | RGUI: Gui 79 | LSHFT: Shift 80 | RSHFT: Shift 81 | ESC: Esc 82 | SPACE: ␣ 83 | BSPC: ⌫ 84 | RET: ⏎ 85 | TAB: ↹ 86 | DEL: ⌦ 87 | 88 | PG_UP: Page Up 89 | PG_DN: Page Down 90 | INS: Insert 91 | HOME: Home 92 | END: End 93 | CAPS: Caps Lock 94 | PSCRN: Print Scrn 95 | PAUSE_BREAK: Pause Break 96 | 97 | UP: ↑ 98 | DOWN: ↓ 99 | LEFT: ← 100 | RIGHT: → 101 | 102 | C_PP: ⏯ 103 | C_NEXT: ⏭️ 104 | C_PREV: ⏮️ 105 | 106 | # defaults 107 | AMPERSAND: '&' 108 | AMPS: '&' 109 | APOS: "'" 110 | APOSTROPHE: "'" 111 | ASTERISK: '*' 112 | ASTRK: '*' 113 | AT: '@' 114 | AT_SIGN: '@' 115 | BACKSLASH: \ 116 | BSLH: \ 117 | CARET: ^ 118 | COLON: ':' 119 | COMMA: ',' 120 | DLLR: $ 121 | DOLLAR: $ 122 | DOT: . 123 | DOUBLE_QUOTES: '"' 124 | DQT: '"' 125 | EQUAL: '=' 126 | EXCL: '!' 127 | EXCLAMATION: '!' 128 | FSLH: / 129 | GRAVE: '`' 130 | GREATER_THAN: '>' 131 | GT: '>' 132 | HASH: '#' 133 | LBKT: '[' 134 | LBRC: '{' 135 | LEFT_BRACE: '{' 136 | LEFT_BRACKET: '[' 137 | LEFT_PARENTHESIS: ( 138 | LESS_THAN: < 139 | LPAR: ( 140 | LT: < 141 | MINUS: '-' 142 | NON_US_BACKSLASH: \ 143 | NON_US_BSLH: '|' 144 | NON_US_HASH: '#' 145 | NUHS: '#' 146 | PERCENT: '%' 147 | PERIOD: . 148 | PIPE: '|' 149 | PIPE2: '|' 150 | PLUS: + 151 | POUND: '#' 152 | PRCNT: '%' 153 | QMARK: '?' 154 | QUESTION: '?' 155 | RBKT: ']' 156 | RBRC: '}' 157 | RIGHT_BRACE: '}' 158 | RIGHT_BRACKET: ']' 159 | RIGHT_PARENTHESIS: ) 160 | RPAR: ) 161 | SEMI: ; 162 | SEMICOLON: ; 163 | SINGLE_QUOTE: '''' 164 | SLASH: / 165 | SQT: '''' 166 | STAR: '*' 167 | TILDE: '~' 168 | TILDE2: '~' 169 | UNDER: _ 170 | UNDERSCORE: _ 171 | draw_config: 172 | footer_text: 'Created with keymap-drawer' 173 | dark_mode: auto -------------------------------------------------------------------------------- /keymap-drawer/ergonaut_one.svg: -------------------------------------------------------------------------------- 1 | 2 | 126 | 127 | default: 128 | 129 | 130 | 131 | ] 132 | Gui 133 | 134 | 135 | 136 | Q 137 | 138 | 139 | 140 | W 141 | 142 | 143 | 144 | E 145 | 146 | 147 | 148 | R 149 | 150 | 151 | 152 | T 153 | 154 | 155 | 156 | Y 157 | 158 | 159 | 160 | U 161 | 162 | 163 | 164 | I 165 | 166 | 167 | 168 | O 169 | 170 | 171 | 172 | P 173 | 174 | 175 | 176 | [ 177 | 178 | 179 | 180 | ` 181 | Ctrl 182 | 183 | 184 | 185 | A 186 | 187 | 188 | 189 | S 190 | 191 | 192 | 193 | D 194 | 195 | 196 | 197 | F 198 | 199 | 200 | 201 | G 202 | 203 | 204 | 205 | H 206 | 207 | 208 | 209 | J 210 | 211 | 212 | 213 | K 214 | 215 | 216 | 217 | L 218 | 219 | 220 | 221 | ; 222 | 223 | 224 | 225 | ' 226 | Ctrl 227 | 228 | 229 | 230 | - 231 | Alt 232 | 233 | 234 | 235 | Z 236 | 237 | 238 | 239 | X 240 | 241 | 242 | 243 | C 244 | 245 | 246 | 247 | V 248 | 249 | 250 | 251 | B 252 | 253 | 254 | 255 | N 256 | 257 | 258 | 259 | M 260 | 261 | 262 | 263 | , 264 | 265 | 266 | 267 | . 268 | 269 | 270 | 271 | / 272 | 273 | 274 | 275 | \ 276 | Alt 277 | 278 | 279 | 280 | 281 | raise 282 | 283 | 284 | 285 | 286 | Shift 287 | 288 | 289 | 290 | 291 | lower 292 | 293 | 294 | 295 | Esc 296 | lower 297 | 298 | 299 | 300 | 301 | Shift 302 | 303 | 304 | 305 | 306 | raise 307 | 308 | 309 | 310 | 311 | lower: 312 | 313 | 314 | 315 | F1 316 | Gui 317 | 318 | 319 | 320 | F2 321 | 322 | 323 | 324 | F3 325 | 326 | 327 | 328 | F4 329 | 330 | 331 | 332 | F5 333 | 334 | 335 | 336 | F6 337 | 338 | 339 | 340 | F7 341 | 342 | 343 | 344 | F8 345 | 346 | 347 | 348 | F9 349 | 350 | 351 | 352 | F10 353 | 354 | 355 | 356 | F11 357 | 358 | 359 | 360 | F12 361 | 362 | 363 | 364 | + 365 | Ctrl 366 | 367 | 368 | 369 | ! 370 | 371 | 372 | 373 | @ 374 | 375 | 376 | 377 | # 378 | 379 | 380 | 381 | $ 382 | 383 | 384 | 385 | % 386 | 387 | 388 | 389 | ^ 390 | 391 | 392 | 393 | & 394 | 395 | 396 | 397 | * 398 | 399 | 400 | 401 | ( 402 | 403 | 404 | 405 | ) 406 | 407 | 408 | 409 | - 410 | Ctrl 411 | 412 | 413 | 414 | = 415 | Alt 416 | 417 | 418 | 419 | 1 420 | 421 | 422 | 423 | 2 424 | 425 | 426 | 427 | 3 428 | 429 | 430 | 431 | 4 432 | 433 | 434 | 435 | 5 436 | 437 | 438 | 439 | 6 440 | 441 | 442 | 443 | 7 444 | 445 | 446 | 447 | 8 448 | 449 | 450 | 451 | 9 452 | 453 | 454 | 455 | 0 456 | 457 | 458 | 459 | Alt 460 | 461 | 462 | 463 | 464 | 465 | 466 | 467 | 468 | 469 | 470 | 471 | 472 | 473 | 474 | 475 | 476 | 477 | 478 | 479 | 480 | 481 | 482 | 483 | 484 | 485 | 486 | 487 | raise: 488 | 489 | 490 | 491 | 492 | KPNUM 493 | 494 | Gui 495 | 496 | 497 | 498 | 499 | KPSLASH 500 | 501 | 502 | 503 | 504 | 505 | KP7 506 | 507 | 508 | 509 | 510 | 511 | KP8 512 | 513 | 514 | 515 | 516 | 517 | KP9 518 | 519 | 520 | 521 | 522 | 523 | KPMINUS 524 | 525 | 526 | 527 | 528 | 529 | VolUp 530 | 531 | 532 | 533 | 534 | Home 535 | 536 | 537 | 538 | 539 | PrintScrn 540 | 541 | 542 | 543 | 544 | 545 | PageUp 546 | 547 | 548 | 549 | 550 | SLCK 551 | 552 | 553 | 554 | CLCK 555 | 556 | 557 | 558 | = 559 | Ctrl 560 | 561 | 562 | 563 | 564 | KPMULTIPLY 565 | 566 | 567 | 568 | 569 | 570 | KP4 571 | 572 | 573 | 574 | 575 | 576 | KP5 577 | 578 | 579 | 580 | 581 | 582 | KP6 583 | 584 | 585 | 586 | 587 | 588 | KPPLUS 589 | 590 | 591 | 592 | 593 | MUTE 594 | 595 | 596 | 597 | 598 | 599 | 600 | 601 | 602 | 603 | 604 | 605 | 606 | 607 | 608 | 609 | Insert 610 | 611 | 612 | 613 | APP 614 | Ctrl 615 | 616 | 617 | 618 | Alt 619 | 620 | 621 | 622 | 623 | KP0 624 | 625 | 626 | 627 | 628 | 629 | KP1 630 | 631 | 632 | 633 | 634 | 635 | KP2 636 | 637 | 638 | 639 | 640 | 641 | KP3 642 | 643 | 644 | 645 | 646 | 647 | KPDOT 648 | 649 | 650 | 651 | 652 | 653 | VolDown 654 | 655 | 656 | 657 | 658 | End 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | 667 | PageDown 668 | 669 | 670 | 671 | 672 | 673 | PauseBreak 674 | 675 | 676 | 677 | 678 | Alt 679 | 680 | 681 | 682 | 683 | 684 | 685 | 686 | 687 | 688 | 689 | 690 | 691 | 692 | 693 | 694 | 695 | 696 | 697 | 698 | 699 | 700 | 701 | 702 | 703 | 704 | 705 | 706 | adjust: 707 | 708 | 709 | 710 | Boot 711 | 712 | 713 | 714 | 715 | 716 | 717 | 718 | 719 | 720 | 721 | 722 | 723 | 724 | 725 | 726 | 727 | 728 | 729 | 730 | 731 | 732 | 733 | 734 | 735 | 736 | 737 | 738 | 739 | 740 | 741 | 742 | 743 | 744 | Boot 745 | 746 | 747 | 748 | 749 | BTCLR 750 | 751 | 752 | 753 | 754 | 755 | BT1 756 | 757 | 758 | 759 | 760 | 761 | BT2 762 | 763 | 764 | 765 | 766 | 767 | BT3 768 | 769 | 770 | 771 | 772 | 773 | BT4 774 | 775 | 776 | 777 | 778 | 779 | BT5 780 | 781 | 782 | 783 | 784 | 785 | BT5 786 | 787 | 788 | 789 | 790 | 791 | BT4 792 | 793 | 794 | 795 | 796 | 797 | BT3 798 | 799 | 800 | 801 | 802 | 803 | BT2 804 | 805 | 806 | 807 | 808 | 809 | BT1 810 | 811 | 812 | 813 | 814 | 815 | BTCLR 816 | 817 | 818 | 819 | 820 | Reset 821 | 822 | 823 | 824 | 825 | 826 | 827 | 828 | 829 | 830 | 831 | 832 | 833 | 834 | 835 | 836 | 837 | 838 | 839 | 840 | 841 | 842 | 843 | 844 | 845 | 846 | 847 | 848 | 849 | 850 | 851 | 852 | 853 | 854 | Reset 855 | 856 | 857 | 858 | 859 | 860 | 861 | 862 | 863 | 864 | 865 | 866 | 867 | 868 | 869 | 870 | 871 | 872 | 873 | 874 | 875 | 876 | 877 | 878 | Created with keymap-drawer 879 | -------------------------------------------------------------------------------- /keymap-drawer/ergonaut_one.yaml: -------------------------------------------------------------------------------- 1 | layers: 2 | default: 3 | - {t: ']', h: Gui} 4 | - Q 5 | - W 6 | - E 7 | - R 8 | - T 9 | - Y 10 | - U 11 | - I 12 | - O 13 | - P 14 | - '[' 15 | - {t: '`', h: Ctrl} 16 | - A 17 | - S 18 | - D 19 | - F 20 | - G 21 | - H 22 | - J 23 | - K 24 | - L 25 | - ; 26 | - {t: '''', h: Ctrl} 27 | - {t: '-', h: Alt} 28 | - Z 29 | - X 30 | - C 31 | - V 32 | - B 33 | - N 34 | - M 35 | - ',' 36 | - . 37 | - / 38 | - {t: \, h: Alt} 39 | - {t: ↹, h: raise} 40 | - {t: ␣, h: Shift} 41 | - {t: ⏎, h: lower} 42 | - {t: Esc, h: lower} 43 | - {t: ⌫, h: Shift} 44 | - {t: ⌦, h: raise} 45 | lower: 46 | - {t: F1, h: Gui} 47 | - F2 48 | - F3 49 | - F4 50 | - F5 51 | - F6 52 | - F7 53 | - F8 54 | - F9 55 | - F10 56 | - F11 57 | - F12 58 | - {t: +, h: Ctrl} 59 | - '!' 60 | - '@' 61 | - '#' 62 | - $ 63 | - '%' 64 | - ^ 65 | - '&' 66 | - '*' 67 | - ( 68 | - ) 69 | - {t: '-', h: Ctrl} 70 | - {t: '=', h: Alt} 71 | - '1' 72 | - '2' 73 | - '3' 74 | - '4' 75 | - '5' 76 | - '6' 77 | - '7' 78 | - '8' 79 | - '9' 80 | - '0' 81 | - Alt 82 | - {t: ▽, type: trans} 83 | - {t: ▽, type: trans} 84 | - {type: held} 85 | - {t: ▽, type: trans} 86 | - {t: ▽, type: trans} 87 | - {t: ▽, type: trans} 88 | raise: 89 | - {t: KP NUM, h: Gui} 90 | - KP SLASH 91 | - KP 7 92 | - KP 8 93 | - KP 9 94 | - KP MINUS 95 | - Vol Up 96 | - Home 97 | - Print Scrn 98 | - Page Up 99 | - SLCK 100 | - CLCK 101 | - {t: '=', h: Ctrl} 102 | - KP MULTIPLY 103 | - KP 4 104 | - KP 5 105 | - KP 6 106 | - KP PLUS 107 | - MUTE 108 | - ← 109 | - ↑ 110 | - → 111 | - Insert 112 | - {t: APP, h: Ctrl} 113 | - Alt 114 | - KP 0 115 | - KP 1 116 | - KP 2 117 | - KP 3 118 | - KP DOT 119 | - Vol Down 120 | - End 121 | - ↓ 122 | - Page Down 123 | - Pause Break 124 | - Alt 125 | - {type: held} 126 | - {t: ▽, type: trans} 127 | - {t: ▽, type: trans} 128 | - {t: ▽, type: trans} 129 | - {t: ▽, type: trans} 130 | - {t: ▽, type: trans} 131 | adjust: 132 | - Boot 133 | - '' 134 | - '' 135 | - '' 136 | - '' 137 | - '' 138 | - '' 139 | - '' 140 | - '' 141 | - '' 142 | - '' 143 | - Boot 144 | - BT CLR 145 | - BT 1 146 | - BT 2 147 | - BT 3 148 | - BT 4 149 | - BT 5 150 | - BT 5 151 | - BT 4 152 | - BT 3 153 | - BT 2 154 | - BT 1 155 | - BT CLR 156 | - Reset 157 | - '' 158 | - '' 159 | - '' 160 | - '' 161 | - '' 162 | - '' 163 | - '' 164 | - '' 165 | - '' 166 | - '' 167 | - Reset 168 | - {type: held} 169 | - '' 170 | - {type: held} 171 | - '' 172 | - {t: ▽, type: trans} 173 | - {t: ▽, type: trans} 174 | --------------------------------------------------------------------------------