Skip to content

Commit 62a3e70

Browse files
committed
Merge branch 'V3.0' into V3.0-Japanese
2 parents 31beb98 + 091a5d4 commit 62a3e70

16 files changed

+690
-34
lines changed

.github/workflows/build.yml

Lines changed: 58 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
runs-on: ubuntu-latest
88
container:
99
image: zmkfirmware/zmk-build-arm:stable
10-
name: Build
10+
name: Build (Legacy)
1111
steps:
1212
- name: Checkout
1313
uses: actions/checkout@v4
@@ -55,7 +55,63 @@ jobs:
5555
- name: Archive (Adv360)
5656
uses: actions/upload-artifact@v4
5757
with:
58-
name: firmware
58+
name: firmware-no-clique
5959
path: |
6060
${{ steps.get_info.outputs.file_prefix }}-left.uf2
6161
${{ steps.get_info.outputs.file_prefix }}-right.uf2
62+
build-clique:
63+
runs-on: ubuntu-latest
64+
container:
65+
image: zmkfirmware/zmk-build-arm:stable
66+
name: Build (Clique)
67+
steps:
68+
- name: Checkout
69+
uses: actions/checkout@v4
70+
- name: Get version data
71+
id: get_info
72+
run: |
73+
timestamp=$(date +"%Y%m%d%H%M")
74+
commit=$(echo "${{ github.sha }}" | cut -c1-7)
75+
file_prefix=$timestamp-$commit
76+
branch_name=$(echo "${{ github.ref }}" | awk -F'/' '{print $3}' | cut -c1-4)
77+
echo "file_prefix=$file_prefix" >> $GITHUB_OUTPUT
78+
bin/get_version.sh $branch_name $commit clique
79+
- name: Cache west modules
80+
uses: actions/cache@v4
81+
env:
82+
cache-name: cache-zephyr-modules
83+
with:
84+
path: |
85+
modules/
86+
tools/
87+
zephyr/
88+
bootloader/
89+
zmk/
90+
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('manifest-dir/west.yml') }}
91+
restore-keys: |
92+
${{ runner.os }}-build-${{ env.cache-name }}-
93+
${{ runner.os }}-build-
94+
${{ runner.os }}-
95+
- name: West Init
96+
run: west init -l config
97+
- name: West Update
98+
run: west update
99+
- name: West Zephyr export
100+
run: west zephyr-export
101+
- name: West Build (left)
102+
run: west build -s zmk/app -d build/left -b adv360_left -S studio-rpc-usb-uart -- -DZMK_CONFIG="${GITHUB_WORKSPACE}/config" -DCONFIG_ZMK_STUDIO=y
103+
- name: Adv360 Left Kconfig file
104+
run: grep -vE '(^#|^$)' build/left/zephyr/.config
105+
- name: West Build (right)
106+
run: west build -s zmk/app -d build/right -b adv360_right -- -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
107+
- name: Adv360 Right Kconfig file
108+
run: grep -vE '(^#|^$)' build/right/zephyr/.config
109+
- name: Rename zmk.uf2
110+
run: cp build/left/zephyr/zmk.uf2 ${{ steps.get_info.outputs.file_prefix }}-left.uf2 && cp build/right/zephyr/zmk.uf2 ${{ steps.get_info.outputs.file_prefix }}-right.uf2
111+
- name: Archive (Adv360)
112+
uses: actions/upload-artifact@v4
113+
with:
114+
name: firmware-clique
115+
path: |
116+
${{ steps.get_info.outputs.file_prefix }}-left.uf2
117+
${{ steps.get_info.outputs.file_prefix }}-right.uf2

CHANGELOG.md

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ Here's all notable changes and commits to both the configuration repo and the ba
44
Many thanks to all those who have submitted issues and pull requests to make this firmware better!
55
## Config repo
66

7+
2/9/2025 - Minor changes to the local build process to improve local building experience, Remove preprocessor commands in keymap file [#643](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/643)
8+
9+
2/6/2025 - Update base ZMK, add changes to support Kinesis Clique, update RGB parameters and enable pointing support [#630](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/630)
10+
11+
11/27/2024 - Fix misattributed PR link in changelog [#590](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/590)
12+
713
5/29/2024 - Japanese default layout
814

915
4/16/2024 - Fix changelog dates [#448](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/448)
@@ -12,7 +18,7 @@ Many thanks to all those who have submitted issues and pull requests to make thi
1218

1319
4/7/2024 - Add documentation for new layer colors, and configurable modifier indicator color [#431](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/431)
1420

15-
4/5/2024 - Update base ZMK, remove deprecated attributes, change flashing cmake [#424](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/424)
21+
4/5/2024 - Update base ZMK, remove deprecated attributes, change flashing cmake [#426](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/426)
1622

1723
3/14/2024 - Fix Makefile errors that prevent builds on macOS [#409](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/409)
1824

@@ -119,7 +125,32 @@ There have beeen 5 branches of ZMK used for the 360 Pro so far. Beta branches ar
119125
| [adv360-z3.2](https://github.com/ReFil/zmk/tree/adv360-z3.2) | 7/6/2023 | 20/10/2023 | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (Up to commit 82494e7) |
120126
| [adv360-z3.2-2](https://github.com/ReFil/zmk/tree/adv360-z3.2-2) | 20/10/2023 | 1/14/2024 | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (Up to commit 4a5003a) |
121127
| [adv360-z3.2-3](https://github.com/ReFil/zmk/tree/adv360-z3.2-3) | 1/14/2024 | 4/5/2024 | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (Up to commit 742d19e) |
122-
| [adv360-z3.5](https://github.com/ReFil/zmk/tree/adv360-z3.5) | 4/5/2024 | To date | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (Current) |
128+
| [adv360-z3.5](https://github.com/ReFil/zmk/tree/adv360-z3.5) | 4/5/2024 | 2/6/2025 | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (Up to commit 8988c99) |
129+
| [adv360-z3.5-2](https://github.com/ReFil/zmk/tree/adv360-z3.5-2) | 2/6/2025 | To Date | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (Current) |
130+
131+
### adv360-z3.5-2
132+
133+
1/26/2025 - Change mouse key press metadata to suit clique
134+
135+
1/25/2025 - Add new battery indication behavior
136+
137+
1/22/2025 - Send RGB effect over to the peripheral
138+
139+
1/14/2025 - Prevent ext power from saving to flash
140+
141+
1/14/2025 - Transmit RGB "on" state over the bluetooth connection
142+
143+
1/13/2025 - Add metadata to mouse button behaivior
144+
145+
1/11/2025 - Prevent RGB handler saving to flash
146+
147+
1/11/2025 - Changes to fix building after rebase
148+
149+
1/4/2025 - Rebase to latest ZMK (commit 3377ed02)
150+
151+
11/21/2024 - Add additional checking to fix connection lockups
152+
153+
11/21/2024 - Change default debounce to 15ms
123154

124155
### adv360-z3.5
125156

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ endif
1212
.PHONY: all left clean_firmware clean_image clean
1313

1414
all:
15-
$(shell bin/get_version.sh >> /dev/null)
15+
$(shell bin/get_version_local.sh clique >> /dev/null)
1616
$(DOCKER) build --tag zmk --file Dockerfile .
1717
$(DOCKER) run --rm -it --name zmk \
1818
-v $(PWD)/firmware:/app/firmware$(SELINUX1) \
@@ -24,7 +24,7 @@ all:
2424
git checkout config/version.dtsi
2525

2626
left:
27-
$(shell bin/get_version.sh >> /dev/null)
27+
$(shell bin/get_version_local.sh clique >> /dev/null)
2828
$(DOCKER) build --tag zmk --file Dockerfile .
2929
$(DOCKER) run --rm -it --name zmk \
3030
-v $(PWD)/firmware:/app/firmware$(SELINUX1) \

bin/build.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,18 @@ TIMESTAMP="${TIMESTAMP:-$(date -u +"%Y%m%d%H%M")}"
77
COMMIT="${COMMIT:-$(echo xxxxxx)}"
88

99
# West Build (left)
10-
west build -s zmk/app -d build/left -b adv360_left -- -DZMK_CONFIG="${PWD}/config"
10+
west build -s zmk/app -p -d build/left -b adv360_left -S studio-rpc-usb-uart -- -DZMK_CONFIG="${PWD}/config" -DCONFIG_ZMK_STUDIO=y
1111
# Adv360 Left Kconfig file
1212
grep -vE '(^#|^$)' build/left/zephyr/.config
1313
# Rename zmk.uf2
14-
cp build/left/zephyr/zmk.uf2 "./firmware/${TIMESTAMP}-${COMMIT}-left.uf2"
14+
cp build/left/zephyr/zmk.uf2 "./firmware/${TIMESTAMP}-${COMMIT}-left-clique.uf2"
1515

1616
# Build right side if selected
1717
if [ "${BUILD_RIGHT}" = true ]; then
1818
# West Build (right)
19-
west build -s zmk/app -d build/right -b adv360_right -- -DZMK_CONFIG="${PWD}/config"
19+
west build -s zmk/app -p -d build/right -b adv360_right -- -DZMK_CONFIG="${PWD}/config"
2020
# Adv360 Right Kconfig file
2121
grep -vE '(^#|^$)' build/right/zephyr/.config
2222
# Rename zmk.uf2
23-
cp build/right/zephyr/zmk.uf2 "./firmware/${TIMESTAMP}-${COMMIT}-right.uf2"
23+
cp build/right/zephyr/zmk.uf2 "./firmware/${TIMESTAMP}-${COMMIT}-right-clique.uf2"
2424
fi

bin/get_version.sh

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
date=$(date -u +"%Y%m%d")
55
branch=${1:-$(git rev-parse --abbrev-ref HEAD | cut -c1-4)}
66
commit=${2:-$(git rev-parse --short HEAD)}
7+
clique=${3:-"."}
78

89
uppercase_char() {
910
local char=$1
@@ -48,8 +49,16 @@ for ((i = 0; i < ${#commit}; i++)); do
4849
formatted_commit+=$(transform_char "${commit:$i:1}")
4950
done
5051

52+
formatted_commit+="<&kp MINUS>, "
53+
54+
# Iterate over the clique string and format characters
55+
formatted_clique=""
56+
for ((i = 0; i < ${#clique}; i++)); do
57+
formatted_clique+=$(transform_char "${clique:$i:1}")
58+
done
59+
5160
# Combine the formatted string, add trailing carriage return
52-
formatted_result="$formatted_date$formatted_branch$formatted_commit"
61+
formatted_result="$formatted_date$formatted_branch$formatted_commit$formatted_clique"
5362
formatted_result+="<&kp RET>"
5463

5564
echo $formatted_result
@@ -58,7 +67,6 @@ echo $formatted_result
5867
echo '#define VERSION_MACRO' > "config/version.dtsi"
5968
echo 'macro_ver: macro_ver {' >> "config/version.dtsi"
6069
echo 'compatible = "zmk,behavior-macro";' >> "config/version.dtsi"
61-
echo 'label = "macro_ver";' >> "config/version.dtsi"
6270
echo '#binding-cells = <0>;' >> "config/version.dtsi"
6371
echo "bindings = $formatted_result;" >> "config/version.dtsi"
6472
echo '};' >> "config/version.dtsi"

bin/get_version_local.sh

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
#!/usr/bin/env bash
2+
3+
# Get the date, first 4 chars of branch name and short commit hash
4+
date=$(date -u +"%Y%m%d")
5+
branch=$(git rev-parse --abbrev-ref HEAD | cut -c1-4)
6+
commit=$(git rev-parse --short HEAD)
7+
clique=${1:-"."}
8+
9+
uppercase_char() {
10+
local char=$1
11+
12+
(echo $char | tr '[a-z]' '[A-Z]' 2> /dev/null) || echo "${char^^}"
13+
}
14+
15+
# Function to transform characters to ZMK key behaviours
16+
transform_char() {
17+
local char=$1
18+
19+
if [[ $char =~ [A-Za-z] ]]; then
20+
echo "<&kp $(uppercase_char $char)>, "
21+
elif [[ $char =~ [0-9] ]]; then
22+
echo "<&kp N${char}>, "
23+
elif [ "$char" = "." ]; then
24+
echo "<&kp DOT>, "
25+
fi
26+
}
27+
28+
# Iterate over the date and format characters
29+
formatted_date=""
30+
for ((i = 0; i < ${#date}; i++)); do
31+
formatted_date+=$(transform_char "${date:$i:1}")
32+
done
33+
34+
# Insert separator between date and branch
35+
formatted_date+="<&kp MINUS>, "
36+
37+
# Iterate over the branch and format characters
38+
formatted_branch=""
39+
for ((i = 0; i < ${#branch}; i++)); do
40+
formatted_branch+=$(transform_char "${branch:$i:1}")
41+
done
42+
43+
# Insert separator between branch and commit hash
44+
formatted_branch+="<&kp MINUS>, "
45+
46+
# Iterate over the commit hash and format characters
47+
formatted_commit=""
48+
for ((i = 0; i < ${#commit}; i++)); do
49+
formatted_commit+=$(transform_char "${commit:$i:1}")
50+
done
51+
52+
formatted_commit+="<&kp MINUS>, "
53+
54+
# Iterate over the clique string and format characters
55+
formatted_clique=""
56+
for ((i = 0; i < ${#clique}; i++)); do
57+
formatted_clique+=$(transform_char "${clique:$i:1}")
58+
done
59+
60+
# Combine the formatted string, add trailing carriage return
61+
formatted_result="$formatted_date$formatted_branch$formatted_commit$formatted_clique"
62+
formatted_result+="<&kp RET>"
63+
64+
echo $formatted_result
65+
# Create new macro to define version, overwrite previous one
66+
67+
echo '#define VERSION_MACRO' > "config/version.dtsi"
68+
echo 'macro_ver: macro_ver {' >> "config/version.dtsi"
69+
echo 'compatible = "zmk,behavior-macro";' >> "config/version.dtsi"
70+
echo '#binding-cells = <0>;' >> "config/version.dtsi"
71+
echo "bindings = $formatted_result;" >> "config/version.dtsi"
72+
echo '};' >> "config/version.dtsi"

config/adv360.keymap

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,14 @@
22
#include <dt-bindings/zmk/keys.h>
33
#include <dt-bindings/zmk/bt.h>
44
#include <dt-bindings/zmk/rgb.h>
5+
#include <dt-bindings/zmk/stp.h>
56
#include <dt-bindings/zmk/backlight.h>
7+
#include <dt-bindings/zmk/pointing.h>
68

79
/ {
810
behaviors {
911
#include "macros.dtsi"
1012
#include "version.dtsi"
11-
#ifndef VERSION_MACRO
12-
macro_ver: macro_ver {
13-
compatible = "zmk,behavior-macro";
14-
label = "macro_version";
15-
#binding-cells = <0>;
16-
bindings = <&kp RET>;
17-
};
18-
#endif
1913

2014
hm: homerow_mods {
2115
compatible = "zmk,behavior-hold-tap";
@@ -33,6 +27,8 @@
3327

3428

3529
default_layer {
30+
display-name = "Base";
31+
3632
bindings = <
3733
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &tog 1 &mo 3 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS
3834
&kp TAB &kp Q &kp W &kp E &kp R &kp T &none &none &kp Y &kp U &kp I &kp O &kp P &kp LEFT_BRACKET
@@ -43,6 +39,8 @@
4339
};
4440

4541
layer_keypad {
42+
display-name = "Kp";
43+
4644
bindings = <
4745
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &trans &mo 3 &kp N6 &kp KP_NUM &kp N8 &kp KP_DIVIDE &kp KP_MULTIPLY &kp MINUS
4846
&kp TAB &kp Q &kp W &kp E &kp R &kp T &none &none &kp Y &kp KP_N7 &kp KP_N8 &kp KP_N9 &kp KP_MINUS &kp LEFT_BRACKET
@@ -53,6 +51,8 @@
5351
};
5452

5553
layer_fn {
54+
display-name = "Fn";
55+
5656
bindings = <
5757
&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &tog 1 &mo 3 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12
5858
&trans &trans &trans &trans &trans &trans &none &none &trans &trans &trans &trans &trans &trans
@@ -63,6 +63,8 @@
6363
};
6464

6565
layer_mod {
66+
display-name = "Mod";
67+
6668
bindings = <
6769
&none &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &none &trans &none &none &none &none &none &none
6870
&none &none &none &none &none &none &bootloader &bootloader &none &none &none &none &none &none
@@ -71,6 +73,24 @@
7173
&none &none &none &none &none &none &none &none &none &bl BL_TOG &rgb_ug RGB_TOG &bl BL_INC &bl BL_DEC &none &none &none
7274
>;
7375
};
74-
76+
extra1 {
77+
display-name = "Red";
78+
status = "reserved";
79+
};
80+
81+
extra2 {
82+
display-name = "Purple";
83+
status = "reserved";
84+
};
85+
86+
extra3 {
87+
display-name = "Cyan";
88+
status = "reserved";
89+
};
90+
91+
extra4 {
92+
display-name = "Yellow";
93+
status = "reserved";
94+
};
7595
};
7696
};

0 commit comments

Comments
 (0)