forked from infused-kim/zmk-config-sofle
-
Notifications
You must be signed in to change notification settings - Fork 1
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
0 parents
commit 081bb81
Showing
5 changed files
with
247 additions
and
0 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 |
---|---|---|
@@ -0,0 +1,95 @@ | ||
on: [push, pull_request, workflow_dispatch] | ||
|
||
name: Build | ||
|
||
jobs: | ||
matrix: | ||
runs-on: ubuntu-latest | ||
name: Fetch Build Keyboards | ||
outputs: | ||
matrix: ${{ steps.set-matrix.outputs.matrix }} | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
- name: Install yaml2json | ||
run: python3 -m pip install remarshal | ||
- id: set-matrix | ||
name: Fetch Build Matrix | ||
run: | | ||
matrix=$(yaml2json build.yaml | jq -c .) | ||
yaml2json build.yaml | ||
echo "::set-output name=matrix::${matrix}" | ||
build: | ||
runs-on: ubuntu-latest | ||
container: | ||
image: zmkfirmware/zmk-build-arm:stable | ||
needs: matrix | ||
name: Build | ||
strategy: | ||
fail-fast: false | ||
matrix: ${{fromJson(needs.matrix.outputs.matrix)}} | ||
steps: | ||
- name: Prepare variables | ||
id: variables | ||
run: | | ||
if [ -n "${{ matrix.shield }}" ]; then | ||
EXTRA_CMAKE_ARGS="-DSHIELD=${{ matrix.shield }}" | ||
ARTIFACT_NAME="${{ matrix.shield }}-${{ matrix.board }}-zmk" | ||
DISPLAY_NAME="${{ matrix.shield }} - ${{ matrix.board }}" | ||
else | ||
EXTRA_CMAKE_ARGS= | ||
DISPLAY_NAME="${{ matrix.board }}" | ||
ARTIFACT_NAME="${{ matrix.board }}-zmk" | ||
fi | ||
echo ::set-output name=extra-cmake-args::${EXTRA_CMAKE_ARGS} | ||
echo ::set-output name=artifact-name::${ARTIFACT_NAME} | ||
echo ::set-output name=display-name::${DISPLAY_NAME} | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
- name: Cache west modules | ||
uses: actions/cache@v2 | ||
env: | ||
cache-name: cache-zephyr-modules | ||
with: | ||
path: | | ||
modules/ | ||
tools/ | ||
zephyr/ | ||
bootloader/ | ||
zmk/ | ||
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('manifest-dir/west.yml') }} | ||
restore-keys: | | ||
${{ runner.os }}-build-${{ env.cache-name }}- | ||
${{ runner.os }}-build- | ||
${{ runner.os }}- | ||
- name: West Init | ||
run: west init -l config | ||
- name: West Update | ||
run: west update | ||
- name: West Zephyr export | ||
run: west zephyr-export | ||
- name: West Build (${{ steps.variables.outputs.display-name }}) | ||
run: | | ||
west build -s zmk/app -b ${{ matrix.board }} -- -DZMK_CONFIG=${GITHUB_WORKSPACE}/config ${{ steps.variables.outputs.extra-cmake-args }} ${{ matrix.cmake-args }} | ||
- name: ${{ steps.variables.outputs.display-name }} DTS File | ||
if: ${{ always() }} | ||
run: | | ||
if [ -f "build/zephyr/${{ matrix.board }}.dts.pre.tmp" ]; then cat -n build/zephyr/${{ matrix.board }}.dts.pre.tmp; fi | ||
if [ -f "build/zephyr/zephyr.dts" ]; then cat -n build/zephyr/zephyr.dts; fi | ||
- name: ${{ steps.variables.outputs.display-name }} Kconfig file | ||
run: cat build/zephyr/.config | grep -v "^#" | grep -v "^$" | ||
- name: Rename artifacts | ||
run: | | ||
mkdir build/artifacts | ||
if [ -f build/zephyr/zmk.uf2 ] | ||
then | ||
cp build/zephyr/zmk.uf2 "build/artifacts/${{ steps.variables.outputs.artifact-name }}.uf2" | ||
elif [ -f build/zephyr/zmk.hex ] | ||
then | ||
cp build/zephyr/zmk.hex "build/artifacts/${{ steps.variables.outputs.artifact-name }}.hex" | ||
fi | ||
- name: Archive (${{ steps.variables.outputs.display-name }}) | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: firmware | ||
path: build/artifacts |
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,19 @@ | ||
# This file generates the GitHub Actions matrix | ||
# For simple board + shield combinations, add them | ||
# to the top level board and shield arrays, for more | ||
# control, add individual board + shield combinations to | ||
# the `include` property, e.g: | ||
# | ||
# board: [ "nice_nano_v2" ] | ||
# shield: [ "corne_left", "corne_right" ] | ||
# include: | ||
# - board: bdn9_rev2 | ||
# - board: nice_nano_v2 | ||
# shield: reviung41 | ||
# | ||
--- | ||
include: | ||
- board: nice_nano_v2 | ||
shield: sofle_left | ||
- board: nice_nano_v2 | ||
shield: sofle_right |
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,17 @@ | ||
# Copyright (c) 2020 Ryan Cross | ||
# SPDX-License-Identifier: MIT | ||
|
||
# Uncomment the following line to enable the Sofle OLED Display | ||
# CONFIG_ZMK_DISPLAY=y | ||
|
||
# Uncomment these two lines to add support for encoders | ||
# CONFIG_EC11=y | ||
# CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y | ||
|
||
# Uncomment this line below to add rgb underglow / backlight support | ||
# CONFIG_ZMK_RGB_UNDERGLOW=y | ||
|
||
# Uncomment the line below to disable external power toggling by the underglow. | ||
# By default toggling the underglow on and off also toggles external power | ||
# on and off. This also causes the display to turn off. | ||
# CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n |
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,105 @@ | ||
/* | ||
* Copyright (c) 2020 The ZMK Contributors | ||
* | ||
* SPDX-License-Identifier: MIT | ||
*/ | ||
|
||
#include <behaviors.dtsi> | ||
#include <dt-bindings/zmk/keys.h> | ||
#include <dt-bindings/zmk/bt.h> | ||
#include <dt-bindings/zmk/rgb.h> | ||
#include <dt-bindings/zmk/ext_power.h> | ||
|
||
#define BASE 0 | ||
#define LOWER 1 | ||
#define RAISE 2 | ||
#define ADJUST 3 | ||
|
||
/ { | ||
|
||
// Activate ADJUST layer by pressing raise and lower | ||
conditional_layers { | ||
compatible = "zmk,conditional-layers"; | ||
adjust_layer { | ||
if-layers = <LOWER RAISE>; | ||
then-layer = <ADJUST>; | ||
}; | ||
}; | ||
|
||
keymap { | ||
compatible = "zmk,keymap"; | ||
|
||
default_layer { | ||
// ------------------------------------------------------------------------------------------------------------ | ||
// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | | ||
// | ESC | Q | W | E | R | T | | Y | U | I | O | P | BKSPC | | ||
// | TAB | A | S | D | F | G | | H | J | K | L | ; | ' | | ||
// | SHIFT | Z | X | C | V | B | MUTE | | | N | M | , | . | / | SHIFT | | ||
// | GUI | ALT | CTRL | LOWER| ENTER | | SPACE | RAISE| CTRL | ALT | GUI | | ||
bindings = < | ||
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &none | ||
&kp ESC &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC | ||
&kp TAB &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT | ||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp C_MUTE &none &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT | ||
&kp LGUI &kp LALT &kp LCTRL &mo LOWER &kp RET &kp SPACE &mo RAISE &kp RCTRL &kp RALT &kp RGUI | ||
>; | ||
|
||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; | ||
}; | ||
|
||
lower_layer { | ||
// TODO: Some binds are waiting for shifted keycode support. | ||
// ------------------------------------------------------------------------------------------------------------ | ||
// | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | | ||
// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | F12 | | ||
// | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | | | | ||
// | | = | - | + | { | } | | | | [ | ] | ; | : | \ | | | ||
// | | | | | | | | | | | | | ||
bindings = < | ||
&trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 | ||
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp F12 | ||
&trans &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp KP_MULTIPLY &kp LPAR &kp RPAR &kp PIPE | ||
&trans &kp EQUAL &kp MINUS &kp KP_PLUS &kp LBRC &kp RBRC &trans &trans &kp LBKT &kp RBKT &kp SEMI &kp COLON &kp BSLH &trans | ||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans | ||
>; | ||
|
||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; | ||
}; | ||
|
||
raise_layer { | ||
// ------------------------------------------------------------------------------------------------------------ | ||
// |BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | | | | | | | | ||
// | | INS | PSCR | GUI | | | | PGUP | | ^ | | | | | ||
// | | ALT | CTRL | SHIFT | | CAPS | | PGDN | <- | v | -> | DEL | BKSPC | | ||
// | | UNDO | CUT | COPY | PASTE | | | | | | | | | | | | ||
// | | | | | | | | | | | | | ||
bindings = < | ||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &trans &trans &trans &trans &trans &trans | ||
&trans &kp INS &kp PSCRN &kp K_CMENU &trans &trans &kp PG_UP &trans &kp UP &trans &kp N0 &trans | ||
&trans &kp LALT &kp LCTRL &kp LSHFT &trans &kp CLCK &kp PG_DN &kp LEFT &kp DOWN &kp RIGHT &kp DEL &kp BSPC | ||
&trans &kp K_UNDO &kp K_CUT &kp K_COPY &kp K_PASTE &trans &trans &trans &trans &trans &trans &trans &trans &trans | ||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans | ||
>; | ||
|
||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; | ||
}; | ||
|
||
// ------------------------------------------------------------------------------------------------------------ | ||
// |BTCLR | BT1 | BT2 | BT3 | BT4 | BT5 | | | | | | | | | ||
// |EXTPWR|RGB_HUD|RGB_HUI|RGB_SAD|RGB_SAI|RGB_EFF| | | | | | | | | ||
// | |RGB_BRD|RGB_BRI| | | | | | | | | | | | ||
// | | | | | | |RGB_TOG| | | | | | | | | | ||
// | | | | | | | | | | | | | ||
|
||
Adjust_layer { | ||
bindings = < | ||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &none &none &none &none &none &none | ||
&ext_power EXT_POWER_TOGGLE_CMD &rgb_ug RGB_HUD &rgb_ug RGB_HUI &rgb_ug RGB_SAD &rgb_ug RGB_SAI &rgb_ug RGB_EFF &none &none &none &none &none &none | ||
&none &rgb_ug RGB_BRD &rgb_ug RGB_BRI &none &none &none &none &none &none &none &none &none | ||
&none &none &none &none &none &none &rgb_ug RGB_TOG &none &none &none &none &none &none &none | ||
&none &none &none &none &none &none &none &none &none &none | ||
>; | ||
}; | ||
|
||
}; | ||
}; |
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,11 @@ | ||
manifest: | ||
remotes: | ||
- name: zmkfirmware | ||
url-base: https://github.com/zmkfirmware | ||
projects: | ||
- name: zmk | ||
remote: zmkfirmware | ||
revision: main | ||
import: app/west.yml | ||
self: | ||
path: config |