From f91a3dc81dc5094c28ff38aeb88226fff8f248ae Mon Sep 17 00:00:00 2001 From: Manna Harbour <51143715+manna-harbour@users.noreply.github.com> Date: Sat, 27 Aug 2022 23:47:51 +1000 Subject: [PATCH] Add xmk --- .../workflows/build-example-xmk-native_posix_64.yml | 12 ++++++++++++ .github/workflows/build-example-xmk-xmk.yml | 13 +++++++++++++ .github/workflows/main.yml | 2 +- .github/workflows/outboards/shields/xmk | 7 +++++++ .github/workflows/test-all-boards.yml | 1 + .github/workflows/test-all-promicro-shields.yml | 1 + .github/workflows/test-all-xiao-shields.yml | 1 + config/native_posix_64.conf | 11 +++++++++++ config/native_posix_64.keymap | 6 ++++++ config/native_posix_64.overlay | 8 ++++++++ config/xmk.keymap | 6 ++++++ readme.org | 13 ++++++++++++- 12 files changed, 79 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/build-example-xmk-native_posix_64.yml create mode 100644 .github/workflows/build-example-xmk-xmk.yml create mode 100644 .github/workflows/outboards/shields/xmk create mode 100644 config/native_posix_64.conf create mode 100644 config/native_posix_64.keymap create mode 100644 config/native_posix_64.overlay create mode 100644 config/xmk.keymap diff --git a/.github/workflows/build-example-xmk-native_posix_64.yml b/.github/workflows/build-example-xmk-native_posix_64.yml new file mode 100644 index 0000000..d11a086 --- /dev/null +++ b/.github/workflows/build-example-xmk-native_posix_64.yml @@ -0,0 +1,12 @@ +# Copyright 2022 Manna Harbour +# https://github.com/manna-harbour/miryoku + +name: 'Build Example 𝑥MK native_posix_64' +on: workflow_dispatch +jobs: + build: + uses: ./.github/workflows/main.yml + secrets: inherit + with: + board: '["native_posix_64"]' + branches: '["zmkfirmware/zmk/main petejohanson/zmk/shell/tap-command"]' diff --git a/.github/workflows/build-example-xmk-xmk.yml b/.github/workflows/build-example-xmk-xmk.yml new file mode 100644 index 0000000..4910810 --- /dev/null +++ b/.github/workflows/build-example-xmk-xmk.yml @@ -0,0 +1,13 @@ +# Copyright 2022 Manna Harbour +# https://github.com/manna-harbour/miryoku + +name: 'Build Example 𝑥MK xmk' +on: workflow_dispatch +jobs: + build: + uses: ./.github/workflows/main.yml + secrets: inherit + with: + board: '["nice_nano_v2"]' + shield: '["xmk"]' + branches: '["zmkfirmware/zmk/main petejohanson/zmk/shell/tap-command"]' diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index efd620b..76473c3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -268,7 +268,7 @@ jobs: echo "::endgroup::" echo "::group::copy" - for extension in 'uf2' 'bin' 'hex' + for extension in 'uf2' 'bin' 'hex' 'elf' do file="${GITHUB_WORKSPACE}/zmk/app/build/zephyr/zmk.$extension" if [ -f "$file" ] diff --git a/.github/workflows/outboards/shields/xmk b/.github/workflows/outboards/shields/xmk new file mode 100644 index 0000000..ccd2598 --- /dev/null +++ b/.github/workflows/outboards/shields/xmk @@ -0,0 +1,7 @@ +# Copyright 2022 Manna Harbour +# https://github.com/manna-harbour/miryoku + +outboard_repository=manna-harbour/xmk +outboard_ref=main +outboard_from=zmk/boards/shields/xmk +outboard_to=boards/shields/xmk diff --git a/.github/workflows/test-all-boards.yml b/.github/workflows/test-all-boards.yml index 8678242..980cf8e 100644 --- a/.github/workflows/test-all-boards.yml +++ b/.github/workflows/test-all-boards.yml @@ -18,6 +18,7 @@ jobs: "ffkb-holyiot", "glove80_left","glove80_right", "klacker_bs", + "native_posix_64", "nice60", "one42", "planck_rev6", diff --git a/.github/workflows/test-all-promicro-shields.yml b/.github/workflows/test-all-promicro-shields.yml index e54ff6f..688c747 100644 --- a/.github/workflows/test-all-promicro-shields.yml +++ b/.github/workflows/test-all-promicro-shields.yml @@ -72,5 +72,6 @@ jobs: "tbkmini_adapterv2_left","tbkmini_adapterv2_right", "tightyl_left","tightyl_right", "viterbi_left","viterbi_right", + "xmk", "zodiark_left","zodiark_right" ]' diff --git a/.github/workflows/test-all-xiao-shields.yml b/.github/workflows/test-all-xiao-shields.yml index 708c02e..df09e42 100644 --- a/.github/workflows/test-all-xiao-shields.yml +++ b/.github/workflows/test-all-xiao-shields.yml @@ -13,5 +13,6 @@ jobs: shield: '[ "clog_v2_left","clog_v2_right", "hummingbird", + "xmk", "zaphod_lite" ]' diff --git a/config/native_posix_64.conf b/config/native_posix_64.conf new file mode 100644 index 0000000..e3c9bd6 --- /dev/null +++ b/config/native_posix_64.conf @@ -0,0 +1,11 @@ +# Copyright 2022 Manna Harbour +# https://github.com/manna-harbour/miryoku + +CONFIG_NATIVE_UART_0_ON_OWN_PTY=y +CONFIG_SERIAL=y +CONFIG_SHELL=y +CONFIG_SHELL_MINIMAL=y +CONFIG_UART_NATIVE_POSIX=y +CONFIG_ZMK_KEYBOARD_NAME="xmk" +CONFIG_ZMK_SHELL_KEY_POSITIONS=y +CONFIG_ZMK_USB=y diff --git a/config/native_posix_64.keymap b/config/native_posix_64.keymap new file mode 100644 index 0000000..b85f30e --- /dev/null +++ b/config/native_posix_64.keymap @@ -0,0 +1,6 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +#include "../miryoku/custom_config.h" +#include "../miryoku/mapping/36/minidox.h" +#include "../miryoku/miryoku.dtsi" diff --git a/config/native_posix_64.overlay b/config/native_posix_64.overlay new file mode 100644 index 0000000..ef769c0 --- /dev/null +++ b/config/native_posix_64.overlay @@ -0,0 +1,8 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +&kscan { + /delete-property/ exit-after; + rows = <4>; + columns = <32>; +}; diff --git a/config/xmk.keymap b/config/xmk.keymap new file mode 100644 index 0000000..b85f30e --- /dev/null +++ b/config/xmk.keymap @@ -0,0 +1,6 @@ +// Copyright 2022 Manna Harbour +// https://github.com/manna-harbour/miryoku + +#include "../miryoku/custom_config.h" +#include "../miryoku/mapping/36/minidox.h" +#include "../miryoku/miryoku.dtsi" diff --git a/readme.org b/readme.org index fff7ea6..fd8c437 100644 --- a/readme.org +++ b/readme.org @@ -19,7 +19,7 @@ Workflow builds can be customised by copying and editing one of the [[#build-exa The [[#keyboard-keymaps][keyboard keymaps]] are composed of the config file, a [[#mapping-macros][mapping]] for the physical layout, and the [[#miryoku-keymap][Miryoku keymap]]. -[[#additional-and-experimental-features][Additional and Experimental Features]] include [[#caps-word][caps word]], [[#customisation][customisation]], [[#key-emulation-combos][key emulation combos]] and [[#mouse-keys][mouse keys]]. +[[#additional-and-experimental-features][Additional and Experimental Features]] include [[#caps-word][caps word]], [[#customisation][customisation]], [[#key-emulation-combos][key emulation combos]], [[#mouse-keys][mouse keys]], and [[#𝑥MK][𝑥MK]]. ** Building @@ -449,6 +449,17 @@ For [[#workflow-builds][workflow builds]], the [[#build-inputs][Build Inputs]] w For local builds, make the changes locally. +**** 𝑥MK + +Use Miryoku ZMK with any keyboard with [[https://github.com/manna-harbour/xmk][𝑥MK]]. + +For [[#local-builds][local builds]] first merge https://github.com/zmkfirmware/zmk/pull/1318. For the ~xmk~ shield, add https://github.com/manna-harbour/xmk/tree/main/zmk/boards/shields/xmk as ~config/boards/shields/xmk~, and build with shield ~xmk~ and the appropriate board. For the ~native_posix_64~ board, build with board ~native_posix_64~. + +For [[#workflow-builds][workflow builds]] for the ~xmk~ shield, use the Build Example 𝑥MK xmk workflow, or use the Build Inputs workflow with shield ~xmk~, the appropriate board, and branches ~zmkfirmware/zmk/main petejohanson/zmk/shell/tap-command~. For workflow builds for the ~native_posix_64~ board, use the Build Example 𝑥MK native_posix_64 workflow, or use the Build Inputs workflow with board ~native_posix_64~ and branches ~zmkfirmware/zmk/main petejohanson/zmk/shell/tap-command~. + +Also see [[https://github.com/manna-harbour/miryoku_kmonad][Miryoku KMonad]]. + + ** [[https://github.com/manna-harbour][https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/logos/manna-harbour-boa-32.png]]