From b4165d65c86709050e37cc98916f687659422605 Mon Sep 17 00:00:00 2001 From: ReFil <31960031+ReFil@users.noreply.github.com> Date: Thu, 15 Feb 2024 12:53:39 +0000 Subject: [PATCH 1/7] Update build workflows (#376) --- .github/workflows/build.yml | 6 +++--- CHANGELOG.md | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 23c3edf2ac..353692db77 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,7 +10,7 @@ jobs: name: Build steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Get version data id: get_info run: | @@ -21,7 +21,7 @@ jobs: echo "file_prefix=$file_prefix" >> $GITHUB_OUTPUT bin/get_version.sh $branch_name $commit - name: Cache west modules - uses: actions/cache@v3 + uses: actions/cache@v4 env: cache-name: cache-zephyr-modules with: @@ -53,7 +53,7 @@ jobs: - name: Rename zmk.uf2 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 - name: Archive (Adv360) - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: firmware path: | diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f73ee2a57..03f2815c45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Here's all notable changes and commits to both the configuration repo and the ba Many thanks to all those who have submitted issues and pull requests to make this firmware better! ## Config repo +12/2/2024 - Update GitHub build workflow to use the latest actions [#376](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/376) + 2/2/2024 - Makefile enhancements (build left side firmware only, separate clean targets for firmware and docker, reset of version.dtsi after build) [#363](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/363) 1/16/2024 - Change the makefile to fis WSL2 compatibility [#335](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/335) From dd3da03b9d8de287570d23245ff3a0c321bb0e31 Mon Sep 17 00:00:00 2001 From: Thomas Huber <113915837+huber-th@users.noreply.github.com> Date: Tue, 20 Feb 2024 01:24:58 -0800 Subject: [PATCH 2/7] Fix version.dtsi is reset after local firmware build (#385) In #376 a new step was introduced for local builds to undo changes to the version.dtsi file after a build in order to reduce noise to the repo. Unfortunately the way used to execute the step causes the version.dtsi file to be reset too early and therefore causes an incorrect version number to be used for the version macro when run locally. This went unfortunately undiscovered as the checked in version.dtsi was the same on the day the change in #376 was tested and was not noticed until I build a new change to my keymap locally a few days ago. The git command introduced in #376 is wrapped into a shell function. However what was missed is that commands run by the shell function are run when the function calls are expanded by make. This causes the version.dtsi file to be reset before the firmware build process is even started which resultes in the version.dtsi currently checked in to the repo to be used for local builds instead of the newly generated file when make starts. This change updates how the git command to reset the version.dtsi is being called. It is no longer called within a shell function to ensure it does run in the order it is defined after the firmware build is complete. Builds run through GitHub actions are not impacted and always used the correct version.dtsi For more information and context see: - https://www.gnu.org/software/make/manual/html_node/Shell-Function.html - https://www.gnu.org/software/make/manual/html_node/Reading-Makefiles.html --- CHANGELOG.md | 2 ++ Makefile | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 03f2815c45..8191af3459 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Here's all notable changes and commits to both the configuration repo and the ba Many thanks to all those who have submitted issues and pull requests to make this firmware better! ## Config repo +18/2/2024 - Fix version.dtsi reset after build when running local builds [#385](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/385) + 12/2/2024 - Update GitHub build workflow to use the latest actions [#376](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/376) 2/2/2024 - Makefile enhancements (build left side firmware only, separate clean targets for firmware and docker, reset of version.dtsi after build) [#363](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/363) diff --git a/Makefile b/Makefile index 9d7d347a5c..71691e2b96 100644 --- a/Makefile +++ b/Makefile @@ -22,7 +22,7 @@ all: -e COMMIT=$(COMMIT) \ -e BUILD_RIGHT=true \ zmk - $(shell git checkout config/version.dtsi) + git checkout config/version.dtsi left: $(shell bin/get_version.sh >> /dev/null) @@ -34,7 +34,7 @@ left: -e COMMIT=$(COMMIT) \ -e BUILD_RIGHT=false \ zmk - $(shell git checkout config/version.dtsi) + git checkout config/version.dtsi clean_firmware: rm -f firmware/*.uf2 From 742d19ef634c84531b98a8d13c081610c38754ba Mon Sep 17 00:00:00 2001 From: David Whetstone Date: Tue, 2 Apr 2024 13:31:29 -0700 Subject: [PATCH 3/7] Fix Makefile errors that prevent builds on macOS (#409) --- CHANGELOG.md | 2 ++ Makefile | 9 ++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8191af3459..1f9d722347 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Here's all notable changes and commits to both the configuration repo and the ba Many thanks to all those who have submitted issues and pull requests to make this firmware better! ## Config repo +14/3/2024 - Fix Makefile errors that prevent builds on macOS [#409](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/409) + 18/2/2024 - Fix version.dtsi reset after build when running local builds [#385](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/385) 12/2/2024 - Update GitHub build workflow to use the latest actions [#376](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/376) diff --git a/Makefile b/Makefile index 71691e2b96..0598579485 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,7 @@ -DOCKER := "$(shell { command -v podman || command -v docker; })" -TIMESTAMP := "$(shell date -u +"%Y%m%d%H%M")" -COMMIT := "$(shell git rev-parse --short HEAD 2>/dev/null)" -detected_OS := "$(shell uname)" # Classify UNIX OS -ifeq ($(strip $(detected_OS)),Darwin) #We only care if it's OS X +DOCKER := $(shell { command -v podman || command -v docker; }) +TIMESTAMP := $(shell date -u +"%Y%m%d%H%M") +COMMIT := $(shell git rev-parse --short HEAD 2>/dev/null) +ifeq ($(shell uname),Darwin) SELINUX1 := SELINUX2 := else From 8b0cf4e55b475b06117e244667ddbb93a80dc154 Mon Sep 17 00:00:00 2001 From: ReFil <31960031+ReFil@users.noreply.github.com> Date: Mon, 15 Apr 2024 12:17:43 +0100 Subject: [PATCH 4/7] Zephyr 3.5 Update (#426) * Zephyr 3.5 update * Changelog --- CHANGELOG.md | 16 ++++++++++++++-- config/boards/arm/adv360/adv360.dtsi | 5 ----- config/boards/arm/adv360/board.cmake | 2 +- config/west.yml | 2 +- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f9d722347..1085f81485 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Here's all notable changes and commits to both the configuration repo and the ba Many thanks to all those who have submitted issues and pull requests to make this firmware better! ## Config repo +4/5/2024 - Update base ZMK, remove deprecated attributes, change flashing cmake [#424](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/424) + 14/3/2024 - Fix Makefile errors that prevent builds on macOS [#409](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/409) 18/2/2024 - Fix version.dtsi reset after build when running local builds [#385](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/385) @@ -107,9 +109,19 @@ There have beeen 5 branches of ZMK used for the 360 Pro so far. Beta branches ar | [adv360-beta](https://github.com/ReFil/zmk/tree/adv360-beta) | 3/1/2022 | 9/17/2022 | V1.0 (since deleted) | | [adv360-z3](https://github.com/ReFil/zmk/tree/adv360-z3) | 9/17/2022 | 7/6/2023 | V2.0 (since deleted) | | [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) | -| [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 XXXXXXX) | -| [adv360-z3.2-3](https://github.com/ReFil/zmk/tree/adv360-z3.2-3) | 1/14/2024 | To date | [V3.0](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/tree/V3.0) (current) | +| [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) | +| [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 XXXXXXX) | +| [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) | + +### adv360-z3.5 + +4/8/2024 - Refactor CI to target 360 Pro exclusively + +4/8/2024 - Fix CI failures + +3/27/2024 - Update ZMK event to new format +3/27/2024 - Rebase off latest upstream ZMK (Commit 94c3b9a) ### adv360-z3.2-3 diff --git a/config/boards/arm/adv360/adv360.dtsi b/config/boards/arm/adv360/adv360.dtsi index 0e092033d8..0c85836f72 100644 --- a/config/boards/arm/adv360/adv360.dtsi +++ b/config/boards/arm/adv360/adv360.dtsi @@ -107,11 +107,9 @@ #size-cells = <1>; sd_partition: partition@0 { - label = "softdevice"; reg = <0x00000000 0x00026000>; }; code_partition: partition@26000 { - label = "code_partition"; reg = <0x00026000 0x000c6000>; }; @@ -125,12 +123,10 @@ * if enabled. */ storage_partition: partition@ec000 { - label = "storage"; reg = <0x000ec000 0x00008000>; }; boot_partition: partition@f4000 { - label = "adafruit_boot"; reg = <0x000f4000 0x0000c000>; }; }; @@ -145,7 +141,6 @@ led_strip: ws2812@0 { compatible = "worldsemi,ws2812-spi"; - label = "WS2812"; /* SPI */ reg = <0>; diff --git a/config/boards/arm/adv360/board.cmake b/config/boards/arm/adv360/board.cmake index 34652907dc..292a274fd3 100644 --- a/config/boards/arm/adv360/board.cmake +++ b/config/boards/arm/adv360/board.cmake @@ -5,5 +5,5 @@ board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset") +include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake) include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake) -#include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake) diff --git a/config/west.yml b/config/west.yml index e35c82658b..9f3a48d831 100644 --- a/config/west.yml +++ b/config/west.yml @@ -7,7 +7,7 @@ manifest: projects: - name: zmk remote: refil - revision: adv360-z3.2-3 + revision: adv360-z3.5 import: app/west.yml self: path: config From 41e734c1ee0a41d12caa0d44c267a9a9ed63d876 Mon Sep 17 00:00:00 2001 From: Keeley Hoek Date: Mon, 15 Apr 2024 07:27:42 -0400 Subject: [PATCH 5/7] Document new layer colors and modifier color configuration option (#431) Co-authored-by: ReFil <31960031+ReFil@users.noreply.github.com> --- CHANGELOG.md | 6 ++++++ README.md | 24 ++++++++++++++++++++++-- assets/swatches/000000.svg | 1 + assets/swatches/0000FF.svg | 1 + assets/swatches/00FF00.svg | 1 + assets/swatches/00FFFF.svg | 1 + assets/swatches/FF0000.svg | 1 + assets/swatches/FF00FF.svg | 1 + assets/swatches/FFFF00.svg | 1 + assets/swatches/FFFFFF.svg | 1 + 10 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 assets/swatches/000000.svg create mode 100644 assets/swatches/0000FF.svg create mode 100644 assets/swatches/00FF00.svg create mode 100644 assets/swatches/00FFFF.svg create mode 100644 assets/swatches/FF0000.svg create mode 100644 assets/swatches/FF00FF.svg create mode 100644 assets/swatches/FFFF00.svg create mode 100644 assets/swatches/FFFFFF.svg diff --git a/CHANGELOG.md b/CHANGELOG.md index 1085f81485..348f7b7ebf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Here's all notable changes and commits to both the configuration repo and the ba Many thanks to all those who have submitted issues and pull requests to make this firmware better! ## Config repo +4/7/2024 - Add documentation for new layer colors, and configurable modifier indicator color [#431](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/431) + 4/5/2024 - Update base ZMK, remove deprecated attributes, change flashing cmake [#424](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/424) 14/3/2024 - Fix Makefile errors that prevent builds on macOS [#409](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/409) @@ -115,6 +117,10 @@ There have beeen 5 branches of ZMK used for the 360 Pro so far. Beta branches ar ### adv360-z3.5 +4/15/2024 - Clarify list of available BT profile colors [#20](https://github.com/ReFil/zmk/pull/20), fix CI for pulls [#21](https://github.com/ReFil/zmk/pull/21) (Commit b0c91d3) + +4/10/2024 - Add colors for all 32 layers [#18](https://github.com/ReFil/zmk/pull/18), enable configuration of modifier indicator color [#19](https://github.com/ReFil/zmk/pull/19), fix battery level display [#17](https://github.com/ReFil/zmk/pull/17) (Commit 2fcd15d) + 4/8/2024 - Refactor CI to target 360 Pro exclusively 4/8/2024 - Fix CI failures diff --git a/README.md b/README.md index 2500787c64..65fcc4911a 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,26 @@ By default this keyboard has NKRO enabled, however for compatibility reasons the ## Battery reporting -By default reporting the battery level over BLE is disabled as this can cause some computers to spontaneously wake up repeatedly. If you'd like to enable this functionality change `CONFIG_BT_BAS=n` to `CONFIG_BT_BAS=y` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig#L58). Please note that a known bug in windows prevents the battery level from updating by default, it is only updated when the board is paired. A workaround is to set `CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION=n` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig). This may cause unexpected results on other OSes +By default reporting the battery level over BLE is disabled as this can cause some computers to spontaneously wake up repeatedly. If you'd like to enable this functionality change `CONFIG_BT_BAS=n` to `CONFIG_BT_BAS=y` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig#L58). Please note that a known bug in windows prevents the battery level from updating by default, it is only updated when the board is paired. A workaround is to set `CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION=n` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig). This may cause unexpected results on other OSes. + +## Modifier indicator color + +The color of the CAPS/NUM/SCROLL LOCK indicator LEDs may be configured by specifying a hexadecimal RGB color code. For example, `CONFIG_ZMK_RGB_UNDERGLOW_MOD_COLOR=0xFF0000` would give red indicator colors. In order to set the indicator color on both modules, ensure that both [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig) and [adv360_right_defconfig](/config/boards/arm/adv360/adv360_right_defconfig) have been updated. + +## Layer colors + +A total of 32 layers are supported by ZMK, with the highest currently active layer displayed using the layer LEDs on each of the left and right modules. All possible colors are listed below; for the first 8 layers the same color is displayed on both modules. After that, only the right module color will cycle through until "rolling over", which will cause the left module color to change as well (and this then repeats). To avoid confusion, the black/off LED color is only used for layer 0. + +| Layer # | L/R | Layer # | L/R | Layer # | L/R | Layer # | L/R | +| ---: | :---: | ---: | :---: | ---: | :---: | ---: | :---: | +| 0 | | 8 | | 16 | | 24 | | +| 1 | | 9 | | 17 | | 25 | | +| 2 | | 10 | | 18 | | 26 | | +| 3 | | 11 | | 19 | | 27 | | +| 4 | | 12 | | 20 | | 28 | | +| 5 | | 13 | | 21 | | 29 | | +| 6 | | 14 | | 22 | | 30 | | +| 7 | | 15 | | 23 | | 31 | | ## Changelog @@ -117,7 +136,7 @@ The changelog for both the config repo and the underlying ZMK fork that the conf The Advantage 360 Pro is always getting updates and refinements. If you are willing to beta test you can follow [this guide from ZMK](https://zmk.dev/docs/features/beta-testing#testing-features) on how to change where your config repo points to. The `west.yml` file that is mentioned is located in config/. [This link](config/west.yml) can take you to the file. Typically you will only need to change the `revision: ` to match the beta branch. The current beta branch is [adv360-z3.2-beta](https://github.com/ReFil/zmk/tree/adv360-z3.2-beta) which is compatible with V3.0 config repositories however users must [disable BT privacy](#bluetooth-le-privacy). -Feedback on beta branches should be submitted as a GitHub issue on the base ZMK repository as opposed to this config repository +Feedback on beta branches should be submitted as a GitHub issue on the base ZMK repository as opposed to this config repository. In the event of a major update the beta branch may not be compatible with the current mainline version of the config repository. If this is the case it will be detailed here along with instructions on how to update. @@ -136,3 +155,4 @@ Further support resources can be found on Kinesis.com: In the event of a hardware issue it may be necessary to open a support ticket directly with Kinesis as opposed to a GitHub issue in this repository. * https://kinesis-ergo.com/support/kb360pro/#ticket + diff --git a/assets/swatches/000000.svg b/assets/swatches/000000.svg new file mode 100644 index 0000000000..9d14efad13 --- /dev/null +++ b/assets/swatches/000000.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/0000FF.svg b/assets/swatches/0000FF.svg new file mode 100644 index 0000000000..d445b5429f --- /dev/null +++ b/assets/swatches/0000FF.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/00FF00.svg b/assets/swatches/00FF00.svg new file mode 100644 index 0000000000..f8b4ce0caf --- /dev/null +++ b/assets/swatches/00FF00.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/00FFFF.svg b/assets/swatches/00FFFF.svg new file mode 100644 index 0000000000..4813df5e09 --- /dev/null +++ b/assets/swatches/00FFFF.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/FF0000.svg b/assets/swatches/FF0000.svg new file mode 100644 index 0000000000..3026c7eea3 --- /dev/null +++ b/assets/swatches/FF0000.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/FF00FF.svg b/assets/swatches/FF00FF.svg new file mode 100644 index 0000000000..81f6c6a5da --- /dev/null +++ b/assets/swatches/FF00FF.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/FFFF00.svg b/assets/swatches/FFFF00.svg new file mode 100644 index 0000000000..1fa8992213 --- /dev/null +++ b/assets/swatches/FFFF00.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/swatches/FFFFFF.svg b/assets/swatches/FFFFFF.svg new file mode 100644 index 0000000000..d54a1321ee --- /dev/null +++ b/assets/swatches/FFFFFF.svg @@ -0,0 +1 @@ + \ No newline at end of file From b9b694c9dd6359bcef5f922ffb84e2071e90007b Mon Sep 17 00:00:00 2001 From: ReFil <31960031+ReFil@users.noreply.github.com> Date: Mon, 15 Apr 2024 12:36:47 +0100 Subject: [PATCH 6/7] Minor docs update (#445) --- CHANGELOG.md | 2 +- README.md | 21 ++++++++++----------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 348f7b7ebf..32eacc8c39 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -112,7 +112,7 @@ There have beeen 5 branches of ZMK used for the 360 Pro so far. Beta branches ar | [adv360-z3](https://github.com/ReFil/zmk/tree/adv360-z3) | 9/17/2022 | 7/6/2023 | V2.0 (since deleted) | | [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) | | [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) | -| [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 XXXXXXX) | +| [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) | | [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) | ### adv360-z3.5 diff --git a/README.md b/README.md index 65fcc4911a..026da207fa 100644 --- a/README.md +++ b/README.md @@ -51,8 +51,13 @@ colima start > colima start --arch x86_64 > ``` +#### Ubuntu/Debian specific -### Build firmware locally +```shell +sudo apt-get install docker make +``` + +### Building the firmware 1. Execute `make` to build firmware for both halves or `make left` to only build firmware for the left hand side. 2. Check the `firmware` directory for the latest firmware build. The first part of the filename is the timestamp when the firmware was built. @@ -83,7 +88,7 @@ Follow the programming instruction on page 8 of the [Quick Start Guide](https:// > Note: There are also physical reset buttons on both keyboards which can be used to enter and exit the bootloader mode. Their location is described in section 2.7 on page 9 in the [User Manual](https://kinesis-ergo.com/wp-content/uploads/Advantage360-ZMK-KB360-PRO-Users-Manual-v3-10-23.pdf) and use is described in section 5.9 on page 14. -> Note: Some operating systems wont always treat the drive as ejected after the settings-reset file is flashed, this doesn't mean that the flashing process has failed. +> Note: Some operating systems wont always treat the drive as ejected after the settings-reset file is flashed or may throw a spurious error, this doesn't mean that the flashing process has failed. ### Upgrading from V2 to V3 @@ -95,19 +100,13 @@ Updating from V2.0 based firmwares to V3.0 based firmwares can be a rather compl Starting on 11/15/2023 the Advantage 360 Pro will now automatically record the compilation date, branch and Git commit hash in a macro that can be accessed with Mod+V. This will type out the following string: YYYYMMDD-XXXX-YYYYYY, where XXXX is the first 4 characters of the Git branch and YYYYYY is the Git commit hash. In addition to this the builds compiled by GitHub actions are now timestamped and also record the commit hash in the filename. -## Bluetooth LE Privacy - -Since the update on 20/10/2023, BLE privacy is now disabled by default and due to an update in upstream ZMK cannot be enabled again as it will cause issues for the split halves connecting to each other. - -Recent updates to MacOS have improved the behaviour for devices without BLE privacy and caused regressions with privacy enabled (e.g. being unable to enter the password on the filevault screen) so BLE privacy is not necessary any more. - ## N-Key Rollover By default this keyboard has NKRO enabled, however for compatibility reasons the higher ranges are not enabled. If you want to use F13-F24 or the INTL1-9 keys with NKRO enabled you can change `CONFIG_ZMK_HID_KEYBOARD_EXTENDED_REPORT=n` to `CONFIG_ZMK_HID_KEYBOARD_EXTENDED_REPORT=y` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig#L65) ## Battery reporting -By default reporting the battery level over BLE is disabled as this can cause some computers to spontaneously wake up repeatedly. If you'd like to enable this functionality change `CONFIG_BT_BAS=n` to `CONFIG_BT_BAS=y` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig#L58). Please note that a known bug in windows prevents the battery level from updating by default, it is only updated when the board is paired. A workaround is to set `CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION=n` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig). This may cause unexpected results on other OSes. +By default reporting the battery level over BLE is disabled as this can cause some computers to spontaneously wake up repeatedly. If you'd like to enable this functionality change `CONFIG_BT_BAS=n` to `CONFIG_BT_BAS=y` in [adv360_left_defconfig](/config/boards/arm/adv360/adv360_left_defconfig#L58). ## Modifier indicator color @@ -134,7 +133,7 @@ The changelog for both the config repo and the underlying ZMK fork that the conf ## Beta testing -The Advantage 360 Pro is always getting updates and refinements. If you are willing to beta test you can follow [this guide from ZMK](https://zmk.dev/docs/features/beta-testing#testing-features) on how to change where your config repo points to. The `west.yml` file that is mentioned is located in config/. [This link](config/west.yml) can take you to the file. Typically you will only need to change the `revision: ` to match the beta branch. The current beta branch is [adv360-z3.2-beta](https://github.com/ReFil/zmk/tree/adv360-z3.2-beta) which is compatible with V3.0 config repositories however users must [disable BT privacy](#bluetooth-le-privacy). +The Advantage 360 Pro is always getting updates and refinements. If you are willing to beta test you can follow [this guide from ZMK](https://zmk.dev/docs/features/beta-testing#testing-features) on how to change where your config repo points to. The `west.yml` file that is mentioned is located in config/. [This link](config/west.yml) can take you to the file. Typically you will only need to change the `revision: ` to match the beta branch. There is currently no beta branch available for testing. Feedback on beta branches should be submitted as a GitHub issue on the base ZMK repository as opposed to this config repository. @@ -142,7 +141,7 @@ In the event of a major update the beta branch may not be compatible with the cu ## Note -By default this config repository references [a customised version of ZMK](https://github.com/ReFil/zmk/tree/adv360-z3.2) with Advantage 360 Pro specific functionality and changes over [base ZMK](https://github.com/zmkfirmware/zmk). The Kinesis fork is regularly updated to bring the latest updates and changes from base ZMK however will not always be completely up to date, some features such as new keycodes will not be immediately available on the 360 Pro after they are implemented in base ZMK. +By default this config repository references [a customised version of ZMK](https://github.com/ReFil/zmk/tree/adv360-z3.5) with Advantage 360 Pro specific functionality and changes over [base ZMK](https://github.com/zmkfirmware/zmk). The Kinesis fork is regularly updated to bring the latest updates and changes from base ZMK however will not always be completely up to date, some features such as new keycodes will not be immediately available on the 360 Pro after they are implemented in base ZMK. Whilst the Advantage 360 Pro is compatible with base ZMK (The pull request to merge it can be seen [here](https://github.com/zmkfirmware/zmk/pull/1454) if you want to see how to implement it) some of the more advanced features (the indicator RGB leds) will not work, and Kinesis cannot provide customer service for usage of base ZMK. Likewise the ZMK community cannot provide support for either the Kinesis keymap editor, nor any usage of the Kinesis custom fork. From 0c975742d105747d551b41dc4056e5ae1c74982d Mon Sep 17 00:00:00 2001 From: ReFil <31960031+ReFil@users.noreply.github.com> Date: Tue, 16 Apr 2024 18:15:28 +0100 Subject: [PATCH 7/7] Changelog update (#448) --- CHANGELOG.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 32eacc8c39..14b7e8fd62 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,15 +4,19 @@ Here's all notable changes and commits to both the configuration repo and the ba Many thanks to all those who have submitted issues and pull requests to make this firmware better! ## Config repo +4/16/2024 - Fix changelog dates [#448](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/448) + +4/15/2024 - Remove redundant info from documentation [#445](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/445) + 4/7/2024 - Add documentation for new layer colors, and configurable modifier indicator color [#431](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/431) 4/5/2024 - Update base ZMK, remove deprecated attributes, change flashing cmake [#424](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/424) -14/3/2024 - Fix Makefile errors that prevent builds on macOS [#409](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/409) +3/14/2024 - Fix Makefile errors that prevent builds on macOS [#409](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/409) -18/2/2024 - Fix version.dtsi reset after build when running local builds [#385](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/385) +2/18/2024 - Fix version.dtsi reset after build when running local builds [#385](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/385) -12/2/2024 - Update GitHub build workflow to use the latest actions [#376](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/376) +2/12/2024 - Update GitHub build workflow to use the latest actions [#376](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/376) 2/2/2024 - Makefile enhancements (build left side firmware only, separate clean targets for firmware and docker, reset of version.dtsi after build) [#363](https://github.com/KinesisCorporation/Adv360-Pro-ZMK/pull/363)