diff --git a/README.md b/README.md new file mode 100644 index 0000000..59107ea --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +## Keymaps + +![keymaps](https://github.com/Padrecc/typeractive/blob/dongle/images/corne.svg) diff --git a/boards/shields/.gitkeep b/boards/shields/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/boards/shields/.gitkeep @@ -0,0 +1 @@ + diff --git a/boards/shields/corne/Kconfig.defconfig b/boards/shields/corne/Kconfig.defconfig new file mode 100644 index 0000000..46afb8f --- /dev/null +++ b/boards/shields/corne/Kconfig.defconfig @@ -0,0 +1,57 @@ +if SHIELD_CORNE_DONGLE + +config ZMK_KEYBOARD_NAME + default "Corne" + +config ZMK_SPLIT_ROLE_CENTRAL + default y + +config ZMK_USB + default y + +config ZMK_SPLIT_BLE_CENTRAL_PERIPHERALS + default 2 + +# Set this to ZMK_SPLIT_BLE_CENTRAL_PERIPHERALS + your desired number of BT profiles (default is 5) +config BT_MAX_CONN + default 5 + +# Set this to the same number as BT_MAX_CONN +config BT_MAX_PAIRED + default 5 + +endif + +if SHIELD_CORNE_LEFT || SHIELD_CORNE_RIGHT || SHIELD_CORNE_DONGLE + +config ZMK_SPLIT + default y + +if ZMK_DISPLAY + +config I2C + default y + +config SSD1306 + default y + +endif # ZMK_DISPLAY + +if LVGL + +config LV_Z_VDB_SIZE + default 64 + +config LV_DPI_DEF + default 148 + +config LV_Z_BITS_PER_PIXEL + default 1 + +choice LV_COLOR_DEPTH + default LV_COLOR_DEPTH_1 +endchoice + +endif # LVGL + +endif \ No newline at end of file diff --git a/boards/shields/corne/Kconfig.shield b/boards/shields/corne/Kconfig.shield new file mode 100644 index 0000000..b7d218d --- /dev/null +++ b/boards/shields/corne/Kconfig.shield @@ -0,0 +1,11 @@ +# Copyright (c) 2020 Pete Johanson +# SPDX-License-Identifier: MIT + +config SHIELD_CORNE_LEFT + def_bool $(shields_list_contains,corne_left) + +config SHIELD_CORNE_RIGHT + def_bool $(shields_list_contains,corne_right) + +config SHIELD_CORNE_DONGLE + def_bool $(shields_list_contains,corne_dongle) diff --git a/boards/shields/corne/corne_dongle.conf b/boards/shields/corne/corne_dongle.conf new file mode 100644 index 0000000..84af90f --- /dev/null +++ b/boards/shields/corne/corne_dongle.conf @@ -0,0 +1,5 @@ +CONFIG_BT_CTLR_TX_PWR_PLUS_8=y +CONFIG_ZMK_SLEEP=n + +### DONGLE MODE +CONFIG_ZMK_SPLIT_BLE_CENTRAL_PERIPHERALS=2 diff --git a/boards/shields/corne/corne_dongle.overlay b/boards/shields/corne/corne_dongle.overlay new file mode 100644 index 0000000..cfb94be --- /dev/null +++ b/boards/shields/corne/corne_dongle.overlay @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2020 Pete Johanson + * + * SPDX-License-Identifier: MIT + */ + +#include +#include +#include + +&foostan_corne_6col_layout { + transform = <&default_transform>; +}; + +&foostan_corne_5col_layout { + transform = <&five_column_transform>; +}; + +/ { + chosen { + zmk,kscan = &mock_kscan; + zmk,physical-layout = &foostan_corne_6col_layout; + }; + + mock_kscan:mock_kscan_0 { + compatible = "zmk,kscan-mock"; + columns = <0>; + rows = <0>; + events = <0>; + + }; + + default_transform: keymap_transform_0 { + compatible = "zmk,matrix-transform"; + columns = <12>; + rows = <4>; +// | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 | SW1 | +// | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 | SW7 | +// | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 | SW13 | +// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 | + map = < +RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) +RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) +RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) + RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) + >; + }; + + five_column_transform: keymap_transform_1 { + compatible = "zmk,matrix-transform"; + columns = <10>; + rows = <4>; +// | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 | +// | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 | +// | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 | +// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 | + map = < +RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) +RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) +RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) + RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) + >; + }; + +}; \ No newline at end of file diff --git a/build.yaml b/build.yaml index 6f09954..645f7cb 100644 --- a/build.yaml +++ b/build.yaml @@ -13,10 +13,29 @@ # --- include: + - board: nice_nano_v2 + shield: corne_dongle + snippet: studio-rpc-usb-uart + cmake-args: -DCONFIG_ZMK_SPLIT_ROLE_CENTRAL=y -DCONFIG_ZMK_STUDIO=y -DCONFIG_ZMK_STUDIO_LOCKING=n + artifact-name: typeractive_nn_dongle + + - board: nice_nano_v2 + shield: corne_left nice_view_adapter nice_view + cmake-args: -DCONFIG_ZMK_SPLIT_ROLE_CENTRAL=n + snippet: studio-rpc-usb-uart + artifact-name: typeractive_slave_left + - board: nice_nano_v2 shield: corne_left nice_view_adapter nice_view + cmake-args: -DCONFIG_ZMK_SPLIT_ROLE_CENTRAL=y snippet: studio-rpc-usb-uart + artifact-name: typeractive_master_left + - board: nice_nano_v2 shield: corne_right nice_view_adapter nice_view + cmake-args: -DCONFIG_ZMK_SPLIT_ROLE_CENTRAL=n + artifact-name: typeractive_slave_right + - board: nice_nano_v2 shield: settings_reset + artifact-name: typeractive_nn_settings_reset diff --git a/images/config.keymap-drawer.yaml b/images/config.keymap-drawer.yaml new file mode 100644 index 0000000..763d196 --- /dev/null +++ b/images/config.keymap-drawer.yaml @@ -0,0 +1,202 @@ +draw_config: + key_w: 60 + key_h: 56 + split_gap: 30.0 + combo_w: 28 + combo_h: 26 + key_rx: 6.0 + key_ry: 6.0 + dark_mode: auto + n_columns: 1 + separate_combo_diagrams: false + combo_diagrams_scale: 2 + inner_pad_w: 2.0 + inner_pad_h: 2.0 + outer_pad_w: 30.0 + outer_pad_h: 56.0 + line_spacing: 1.2 + arc_radius: 6.0 + append_colon_to_layer_header: true + small_pad: 2.0 + legend_rel_x: 0.0 + legend_rel_y: 0.0 + draw_key_sides: false + key_side_pars: + rel_x: 0.0 + rel_y: 4.0 + rel_w: 12.0 + rel_h: 12.0 + rx: 4.0 + ry: 4.0 + svg_extra_style: '' + footer_text: Created with keymap-drawer + shrink_wide_legends: 7 + style_layer_activators: true + glyph_tap_size: 14 + glyph_hold_size: 12 + glyph_shifted_size: 10 + glyphs: {} +parse_config: + preprocess: true + skip_binding_parsing: false + raw_binding_map: {} + sticky_label: sticky + toggle_label: toggle + tap_toggle_label: tap-toggle + trans_legend: + t: ▽ + type: trans + layer_legend_map: {} + mark_alternate_layer_activators: false + modifier_fn_map: + left_ctrl: Ctl + right_ctrl: Ctl + left_shift: Sft + right_shift: Sft + left_alt: Alt + right_alt: AltGr + left_gui: Gui + right_gui: Gui + keycode_combiner: '{mods}+{key}' + mod_combiner: '{mod_1}+{mod_2}' + special_combinations: + left_ctrl+left_alt+left_gui+left_shift: Hyper + left_ctrl+left_alt+left_shift: Meh + qmk_remove_keycode_prefix: + - KC_ + qmk_keycode_map: + XXXXXXX: '' + 'NO': '' + MINUS: '-' + MINS: '-' + EQUAL: '=' + EQL: '=' + LEFT_BRACKET: '[' + LBRC: '[' + RIGHT_BRACKET: ']' + RBRC: ']' + BACKSLASH: \ + BSLS: \ + NONUS_HASH: '#' + NUHS: '#' + SEMICOLON: ; + SCLN: ; + QUOTE: '''' + QUOT: '''' + GRAVE: '`' + GRV: '`' + COMMA: ',' + COMM: ',' + DOT: . + SLASH: / + SLSH: / + TILDE: '~' + TILD: '~' + EXCLAIM: '!' + EXLM: '!' + AT: '@' + HASH: '#' + DOLLAR: $ + DLR: $ + PERCENT: '%' + PERC: '%' + CIRCUMFLEX: ^ + CIRC: ^ + AMPERSAND: '&' + AMPR: '&' + ASTERISK: '*' + ASTR: '*' + LEFT_PAREN: ( + LPRN: ( + RIGHT_PAREN: ) + RPRN: ) + UNDERSCORE: _ + UNDS: _ + PLUS: + + LEFT_CURLY_BRACE: '{' + LCBR: '{' + RIGHT_CURLY_BRACE: '}' + RCBR: '}' + PIPE: '|' + COLON: ':' + COLN: ':' + DOUBLE_QUOTE: '"' + DQUO: '"' + DQT: '"' + LEFT_ANGLE_BRACKET: < + LABK: < + LT: < + RIGHT_ANGLE_BRACKET: '>' + RABK: '>' + GT: '>' + QUESTION: '?' + QUES: '?' + zmk_remove_keycode_prefix: [] + zmk_keycode_map: + EXCLAMATION: '!' + EXCL: '!' + AT_SIGN: '@' + AT: '@' + HASH: '#' + POUND: '#' + DOLLAR: $ + DLLR: $ + PERCENT: '%' + PRCNT: '%' + CARET: ^ + AMPERSAND: '&' + AMPS: '&' + ASTERISK: '*' + ASTRK: '*' + STAR: '*' + LEFT_PARENTHESIS: ( + LPAR: ( + RIGHT_PARENTHESIS: ) + RPAR: ) + EQUAL: '=' + PLUS: + + MINUS: '-' + UNDERSCORE: _ + UNDER: _ + SLASH: / + FSLH: / + QUESTION: '?' + QMARK: '?' + BACKSLASH: \ + BSLH: \ + PIPE: '|' + NON_US_BACKSLASH: \ + PIPE2: '|' + NON_US_BSLH: '|' + SEMICOLON: ; + SEMI: ; + COLON: ':' + SINGLE_QUOTE: '''' + SQT: '''' + APOSTROPHE: '''' + APOS: '''' + DOUBLE_QUOTES: '"' + DQT: '"' + COMMA: ',' + LESS_THAN: < + LT: < + PERIOD: . + DOT: . + GREATER_THAN: '>' + GT: '>' + LEFT_BRACKET: '[' + LBKT: '[' + LEFT_BRACE: '{' + LBRC: '{' + RIGHT_BRACKET: ']' + RBKT: ']' + RIGHT_BRACE: '}' + RBRC: '}' + GRAVE: '`' + TILDE: '~' + NON_US_HASH: '#' + NUHS: '#' + TILDE2: '~' + zmk_combos: {} + zmk_preamble: '#define KEYMAP_DRAWER' + zmk_additional_includes: [] diff --git a/images/corne.svg b/images/corne.svg new file mode 100644 index 0000000..dc1c8cc --- /dev/null +++ b/images/corne.svg @@ -0,0 +1,1196 @@ + + + +Base: + + + +TAB + + + +Q + + + +W + + + +E + + + +R + + + +T + + + +Y + + + +U + + + +I + + + +O + + + +P + + + +BSPC + + + + +Nav + + + +A +LEFT WIN + + + +S +LEFT ALT + + + +D +LCTRL + + + +F +LEFT SHIFT + + + +G + + + +H + + + +J +RIGHT SHIFT + + + +K +RCTRL + + + +L +RIGHT ALT + + + +; +RWIN + + + +' + + + +LCTRL + + + +Z + + + +X + + + +C + + + +V + + + +B + + + +N + + + +M + + + +, + + + +. + + + +/ + + + + +Gui+SPACE + + + + +ESCAPE + +Fn + + + +SPACE + +Num + + + +ENTER + + + +SPACE +LEFT SHIFT + + + +SPACE + +Num + + + +ESCAPE + +Fn + + + + + +? + + + + +Num: + + + +` + + + +1 + + + +2 + + + +3 + + + +4 + + + +5 + + + +6 + + + +7 + + + +8 + + + +9 + + + +0 + + + +BSPC + + + + + + + +LWIN + + + + +LEFTALT + + + + +LCTRL + + + +LSHFT + + + + + + + + + + + +RSHFT + + + +RCTRL + + + + +RIGHTALT + + + + +RWIN + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Nav: + + + + + + + + + + + + + + + + + + + + + + + +PGUP + + + + +BACKSPACE + + + +UP + + + +[ + + + +] + + + +\ + + + + + + + +LEFTWIN + + + + +LALT + + + +LCTRL + + + +LSHFT + + + + + + + +PAGEDOWN + + + + +LEFT + + + +DOWN + + + +RIGHT + + + +- + + + += + + + + + + + + + + + + + + + + + + + + + + +HOME + + + +END + + + +INSERT + + + +DELETE + + + +? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Fn: + + + +TAB + + + +F1 + + + +F2 + + + +F3 + + + +F4 + + + +F5 + + + +F6 + + + +F7 + + + +F8 + + + +F9 + + + +F10 + + + +F11 + + + + + + + +LWIN + + + + +LEFTALT + + + + +LCTRL + + + +LSHFT + + + + +OUTTOG + + + + + +VOLUP + + + + +RSHFT + + + +RCTRL + + + + +RIGHTALT + + + + +RWIN + + + +F12 + + + + + + + +BT +0 + + + +BT +1 + + + +BT +2 + + + +BT +3 + + + +&bt_clr_3_… + + + + +VOLDN + + + + +MUTE + + + + + + + + + + + + +CAPS + + + + + + + + + + + + + + + + + + + + + + + + + + + +Sys: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Extra: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/corne.yaml b/images/corne.yaml new file mode 100644 index 0000000..5c92bac --- /dev/null +++ b/images/corne.yaml @@ -0,0 +1,264 @@ +layout: {zmk_keyboard: corne} +layers: + Base: + - TAB + - Q + - W + - E + - R + - T + - Y + - U + - I + - O + - P + - BSPC + - Nav + - {t: A, h: LEFT WIN} + - {t: S, h: LEFT ALT} + - {t: D, h: LCTRL} + - {t: F, h: LEFT SHIFT} + - G + - H + - {t: J, h: RIGHT SHIFT} + - {t: K, h: RCTRL} + - {t: L, h: RIGHT ALT} + - {t: ;, h: RWIN} + - '''' + - LCTRL + - Z + - X + - C + - V + - B + - N + - M + - ',' + - . + - / + - Gui+SPACE + - {t: ESCAPE, h: Fn} + - {t: SPACE, h: Num} + - ENTER + - {t: SPACE, h: LEFT SHIFT} + - {t: SPACE, h: Num} + - {t: ESCAPE, h: Fn} + Num: + - '`' + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + - '8' + - '9' + - '0' + - BSPC + - {t: ▽, type: trans} + - LWIN + - LEFT ALT + - LCTRL + - LSHFT + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - RSHFT + - RCTRL + - RIGHT ALT + - RWIN + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {type: held} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + Nav: + - {t: ▽, type: trans} + - '' + - '' + - '' + - '' + - '' + - PG UP + - BACKSPACE + - UP + - '[' + - ']' + - \ + - {type: held} + - LEFT WIN + - LALT + - LCTRL + - LSHFT + - '' + - PAGE DOWN + - LEFT + - DOWN + - RIGHT + - '-' + - '=' + - {t: ▽, type: trans} + - '' + - '' + - '' + - '' + - '' + - HOME + - END + - INSERT + - DELETE + - '?' + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + Fn: + - TAB + - F1 + - F2 + - F3 + - F4 + - F5 + - F6 + - F7 + - F8 + - F9 + - F10 + - F11 + - {t: ▽, type: trans} + - LWIN + - LEFT ALT + - LCTRL + - LSHFT + - OUT TOG + - VOL UP + - RSHFT + - RCTRL + - RIGHT ALT + - RWIN + - F12 + - {t: ▽, type: trans} + - {t: BT, h: '0'} + - {t: BT, h: '1'} + - {t: BT, h: '2'} + - {t: BT, h: '3'} + - '&bt_clr_3_tap' + - VOL DN + - MUTE + - '' + - '' + - '' + - CAPS + - {type: held} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + Sys: + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {type: held} + - {type: held} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + Extra: + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} + - {t: ▽, type: trans} +combos: +- p: [16, 34] + k: '?' + l: [Base] diff --git a/images/readme.md b/images/readme.md new file mode 100644 index 0000000..28c62b5 --- /dev/null +++ b/images/readme.md @@ -0,0 +1,3 @@ +- Keymap Drawer: https://github.com/caksoylar/keymap-drawer +- Config app: https://keymap-drawer.streamlit.app/ + diff --git a/zephyr/module.yml b/zephyr/module.yml new file mode 100644 index 0000000..1cc2b35 --- /dev/null +++ b/zephyr/module.yml @@ -0,0 +1,3 @@ +build: + settings: + board_root: .