Skip to content

Commit b7195c4

Browse files
knyhlecceReFilkeymap-editor[bot]
authored
Update (#1)
* Fix CHANGELOG link for KinesisCorporation#426 to point to correct PR (KinesisCorporation#590) * point CHANGELOG entry for KinesisCorporation#426 at correct PR * Update changelog for changelog change * Clique and mouse movement update (KinesisCorporation#630) * Target new branch * Enable mouse emulation * Clique changes Update adv360.keymap Add unlock behavior to keymap * Improve light behavior * Update CHANGELOG.md * Add Layer names, extra clique layers * Update adv360.keymap * Add clique local building * Add predefined Studio macros * Change to new battery command * Update get_version.sh * Make &kscan0 a wakeup source * New layer names * Update CHANGELOG.md * Updated adv360.keymap * Revert "Updated adv360.keymap" This reverts commit d7df361. * Local build changes (KinesisCorporation#643) * Improve local building experience * Update CHANGELOG.md --------- Co-authored-by: cce <51567+cce@users.noreply.github.com> Co-authored-by: Willow Herring <31960031+ReFil@users.noreply.github.com> Co-authored-by: keymap-editor[bot] <91849743+keymap-editor[bot]@users.noreply.github.com>
1 parent 720bfc8 commit b7195c4

File tree

15 files changed

+494
-25
lines changed

15 files changed

+494
-25
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,13 +4,19 @@ 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
4/16/2024 - Fix changelog dates [#448](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/448)
814

915
4/15/2024 - Remove redundant info from documentation [#445](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/445)
1016

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

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

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

@@ -117,7 +123,32 @@ There have beeen 5 branches of ZMK used for the 360 Pro so far. Beta branches ar
117123
| [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) |
118124
| [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) |
119125
| [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) |
120-
| [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) |
126+
| [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) |
127+
| [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) |
128+
129+
### adv360-z3.5-2
130+
131+
1/26/2025 - Change mouse key press metadata to suit clique
132+
133+
1/25/2025 - Add new battery indication behavior
134+
135+
1/22/2025 - Send RGB effect over to the peripheral
136+
137+
1/14/2025 - Prevent ext power from saving to flash
138+
139+
1/14/2025 - Transmit RGB "on" state over the bluetooth connection
140+
141+
1/13/2025 - Add metadata to mouse button behaivior
142+
143+
1/11/2025 - Prevent RGB handler saving to flash
144+
145+
1/11/2025 - Changes to fix building after rebase
146+
147+
1/4/2025 - Rebase to latest ZMK (commit 3377ed02)
148+
149+
11/21/2024 - Add additional checking to fix connection lockups
150+
151+
11/21/2024 - Change default debounce to 15ms
121152

122153
### adv360-z3.5
123154

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: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
#include <dt-bindings/zmk/keys.h>
1717
#include <dt-bindings/zmk/bt.h>
1818
#include <dt-bindings/zmk/rgb.h>
19+
#include <dt-bindings/zmk/stp.h>
1920
#include <dt-bindings/zmk/backlight.h>
21+
#include <dt-bindings/zmk/pointing.h>
2022

2123
/ {
2224
behaviors {
@@ -32,6 +34,25 @@
3234
flavor = "tap-preferred";
3335
bindings = <&kp>, <&kp>;
3436
};
37+
extra1 {
38+
display-name = "Red";
39+
status = "reserved";
40+
};
41+
42+
extra2 {
43+
display-name = "Purple";
44+
status = "reserved";
45+
};
46+
47+
extra3 {
48+
display-name = "Cyan";
49+
status = "reserved";
50+
};
51+
52+
extra4 {
53+
display-name = "Yellow";
54+
status = "reserved";
55+
};
3556
};
3657

3758
keymap {

0 commit comments

Comments
 (0)