diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cd3d0e7f..e22dc653 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,6 +10,7 @@ jobs: matrix: board: [proton_c, nice_nano, bluemicro840_v1, nrfmicro_13] shield: + - boardsource3x4 - corne_left - corne_right - kyria_left diff --git a/app/boards/shields/boardsource3x4/Kconfig.defconfig b/app/boards/shields/boardsource3x4/Kconfig.defconfig new file mode 100644 index 00000000..4c55aab0 --- /dev/null +++ b/app/boards/shields/boardsource3x4/Kconfig.defconfig @@ -0,0 +1,9 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT + +if SHIELD_BOARDSOURCE3X4 + +config ZMK_KEYBOARD_NAME + default "Boardsource 3x4" + +endif \ No newline at end of file diff --git a/app/boards/shields/boardsource3x4/Kconfig.shield b/app/boards/shields/boardsource3x4/Kconfig.shield new file mode 100644 index 00000000..cda55d07 --- /dev/null +++ b/app/boards/shields/boardsource3x4/Kconfig.shield @@ -0,0 +1,6 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config SHIELD_BOARDSOURCE3X4 + def_bool $(shields_list_contains,boardsource3x4) + diff --git a/app/boards/shields/boardsource3x4/boardsource3x4.conf b/app/boards/shields/boardsource3x4/boardsource3x4.conf new file mode 100644 index 00000000..e69de29b diff --git a/app/boards/shields/boardsource3x4/boardsource3x4.keymap b/app/boards/shields/boardsource3x4/boardsource3x4.keymap new file mode 100644 index 00000000..dfeeadef --- /dev/null +++ b/app/boards/shields/boardsource3x4/boardsource3x4.keymap @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#include +#include +#include + +/ { + keymap { + compatible = "zmk,keymap"; + + default_layer { + + bindings = < + &tog 1 &cp M_PREV &cp M_PLAY &cp M_NEXT + &mo 2 &cp M_VOLD &kp UARW &cp M_VOLU + &mo 3 &kp LARW &kp DARW &kp RARW + >; + + }; + + num_layer { + bindings = < + &trans &kp NUM_7 &kp NUM_8 &kp NUM_9 + &trans &kp NUM_4 &kp NUM_5 &kp NUM_6 + < 3 NUM_0 &kp NUM_1 &kp NUM_2 &kp NUM_3 + >; + }; + + lower_layer { + bindings = < + &bt BT_CLR &none &reset &bootloader + &trans &bt BT_SEL 3 &bt BT_SEL 4 &none + &none &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 + >; + }; + + raise_layer { + bindings = < + &kp 0x68 &kp 0x69 &kp 0x6A &kp 0x6B + &kp 0x6C &kp 0x6D &kp 0x6E &kp 0x6F + &trans &kp 0x70 &kp 0x71 &kp 0x72 + >; + }; + }; +}; \ No newline at end of file diff --git a/app/boards/shields/boardsource3x4/boardsource3x4.overlay b/app/boards/shields/boardsource3x4/boardsource3x4.overlay new file mode 100644 index 00000000..ad517940 --- /dev/null +++ b/app/boards/shields/boardsource3x4/boardsource3x4.overlay @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#include + +/ { + chosen { + zmk,kscan = &kscan0; + }; + + kscan0: kscan { + compatible = "zmk,kscan-gpio-matrix"; + label = "KSCAN"; + diode-direction = "col2row"; + + row-gpios + = <&pro_micro_a 0 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&pro_micro_a 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&pro_micro_a 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + ; + + col-gpios + = <&pro_micro_d 10 GPIO_ACTIVE_HIGH> + , <&pro_micro_d 16 GPIO_ACTIVE_HIGH> + , <&pro_micro_d 14 GPIO_ACTIVE_HIGH> + , <&pro_micro_d 15 GPIO_ACTIVE_HIGH> + ; + }; +}; \ No newline at end of file