Merge remote-tracking branch 'origin/main' into battery_reporting_improvement
This commit is contained in:
commit
ed088b770d
6 changed files with 52 additions and 36 deletions
.github/workflows
app
docs/docs/config
8
.github/workflows/ble-test.yml
vendored
8
.github/workflows/ble-test.yml
vendored
|
@ -27,7 +27,7 @@ jobs:
|
|||
run: |
|
||||
cd app/tests/ble
|
||||
export TESTS=$(ls -d * | grep -v central | jq -R -s -c 'split("\n")[:-1]')
|
||||
echo "::set-output name=test-dirs::${TESTS}"
|
||||
echo "test-dirs=${TESTS}" > $GITHUB_OUTPUT
|
||||
run-tests:
|
||||
needs: collect-tests
|
||||
strategy:
|
||||
|
@ -40,7 +40,7 @@ jobs:
|
|||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: Cache west modules
|
||||
uses: actions/cache@v3.0.2
|
||||
uses: actions/cache@v3
|
||||
env:
|
||||
cache-name: cache-zephyr-modules
|
||||
with:
|
||||
|
@ -72,7 +72,7 @@ jobs:
|
|||
run: BSIM_COMPONENTS_PATH="${GITHUB_WORKSPACE}/tools/bsim/components/" BSIM_OUT_PATH="${GITHUB_WORKSPACE}/tools/bsim/" ./run-ble-test.sh tests/ble/${{ matrix.test }}
|
||||
- name: Archive artifacts
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: "log-files"
|
||||
name: "${{ matrix.test }}-log-files"
|
||||
path: app/build/**/*.log
|
||||
|
|
23
.github/workflows/build.yml
vendored
23
.github/workflows/build.yml
vendored
|
@ -55,13 +55,12 @@ jobs:
|
|||
- name: Install @actions/artifact
|
||||
run: npm install @actions/artifact
|
||||
- name: Build and upload artifacts
|
||||
uses: actions/github-script@v4
|
||||
uses: actions/github-script@v7
|
||||
id: boards-list
|
||||
with:
|
||||
script: |
|
||||
const fs = require('fs');
|
||||
const artifact = require('@actions/artifact');
|
||||
const artifactClient = artifact.create();
|
||||
const {default: artifact} = require('@actions/artifact');
|
||||
|
||||
const execSync = require('child_process').execSync;
|
||||
|
||||
|
@ -90,7 +89,7 @@ jobs:
|
|||
const cmakeName = shieldArgs['cmake-args'] ? '-' + (shieldArgs.nickname || shieldArgs['cmake-args'].split(' ').join('')) : '';
|
||||
const artifactName = `${{ matrix.board }}${shieldArgs.shield ? '-' + shieldArgs.shield : ''}${cmakeName}-zmk`;
|
||||
|
||||
await artifactClient.uploadArtifact(artifactName, files, rootDirectory, options);
|
||||
await artifact.uploadArtifact(artifactName, files, rootDirectory, options);
|
||||
} catch (e) {
|
||||
console.error(`::error::Failed to build or upload ${{ matrix.board }} ${shieldArgs.shield} ${shieldArgs['cmake-args']}`);
|
||||
console.error(e);
|
||||
|
@ -111,7 +110,7 @@ jobs:
|
|||
include-list: ${{ steps.compile-list.outputs.result }}
|
||||
steps:
|
||||
- name: Join build lists
|
||||
uses: actions/github-script@v4
|
||||
uses: actions/github-script@v7
|
||||
id: compile-list
|
||||
with:
|
||||
script: |
|
||||
|
@ -158,7 +157,7 @@ jobs:
|
|||
node-version: "14.x"
|
||||
- name: Install js-yaml
|
||||
run: npm install js-yaml
|
||||
- uses: actions/github-script@v4
|
||||
- uses: actions/github-script@v7
|
||||
id: core-list
|
||||
with:
|
||||
script: |
|
||||
|
@ -187,7 +186,7 @@ jobs:
|
|||
node-version: "14.x"
|
||||
- name: Install js-yaml
|
||||
run: npm install js-yaml
|
||||
- uses: actions/github-script@v4
|
||||
- uses: actions/github-script@v7
|
||||
id: boards-list
|
||||
with:
|
||||
script: |
|
||||
|
@ -264,7 +263,7 @@ jobs:
|
|||
nightly-include: ${{ steps.nightly-list.outputs.result }}
|
||||
steps:
|
||||
- name: Create nightly list
|
||||
uses: actions/github-script@v4
|
||||
uses: actions/github-script@v7
|
||||
id: nightly-list
|
||||
with:
|
||||
script: |
|
||||
|
@ -315,7 +314,7 @@ jobs:
|
|||
- name: Install js-yaml
|
||||
run: npm install js-yaml
|
||||
- name: Aggregate Metadata
|
||||
uses: actions/github-script@v4
|
||||
uses: actions/github-script@v7
|
||||
id: aggregate-metadata
|
||||
with:
|
||||
script: |
|
||||
|
@ -333,7 +332,7 @@ jobs:
|
|||
result-encoding: string
|
||||
|
||||
- name: Organize Metadata
|
||||
uses: actions/github-script@v4
|
||||
uses: actions/github-script@v7
|
||||
id: organize-metadata
|
||||
with:
|
||||
script: |
|
||||
|
@ -390,7 +389,7 @@ jobs:
|
|||
id: changed-files
|
||||
with:
|
||||
format: "json"
|
||||
- uses: actions/github-script@v4
|
||||
- uses: actions/github-script@v7
|
||||
id: board-changes
|
||||
with:
|
||||
script: |
|
||||
|
@ -398,7 +397,7 @@ jobs:
|
|||
const boardChanges = changedFiles.filter(f => f.startsWith('app/boards'));
|
||||
return boardChanges.length ? 'true' : 'false';
|
||||
result-encoding: string
|
||||
- uses: actions/github-script@v4
|
||||
- uses: actions/github-script@v7
|
||||
id: core-changes
|
||||
with:
|
||||
script: |
|
||||
|
|
8
.github/workflows/test.yml
vendored
8
.github/workflows/test.yml
vendored
|
@ -25,7 +25,7 @@ jobs:
|
|||
run: |
|
||||
cd app/tests/
|
||||
export TESTS=$(ls -d * | grep -v ble | jq -R -s -c 'split("\n")[:-1]')
|
||||
echo "::set-output name=test-dirs::${TESTS}"
|
||||
echo "test-dirs=${TESTS}" >> $GITHUB_OUTPUT
|
||||
run-tests:
|
||||
needs: collect-tests
|
||||
strategy:
|
||||
|
@ -38,7 +38,7 @@ jobs:
|
|||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: Cache west modules
|
||||
uses: actions/cache@v3.0.2
|
||||
uses: actions/cache@v3
|
||||
env:
|
||||
cache-name: cache-zephyr-modules
|
||||
with:
|
||||
|
@ -65,7 +65,7 @@ jobs:
|
|||
run: west test tests/${{ matrix.test }}
|
||||
- name: Archive artifacts
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: "log-files"
|
||||
name: "${{ matrix.test }}-log-files"
|
||||
path: app/build/**/*.log
|
||||
|
|
33
app/Kconfig
33
app/Kconfig
|
@ -142,29 +142,44 @@ menuconfig ZMK_BLE
|
|||
|
||||
if ZMK_BLE
|
||||
|
||||
config ZMK_BLE_EXPERIMENTAL_FEATURES
|
||||
bool "Experimental: Enable experimental/advanced BLE settings/features"
|
||||
imply ZMK_BLE_PASSKEY_ENTRY
|
||||
config ZMK_BLE_EXPERIMENTAL_CONN
|
||||
bool "Experimental BLE connection changes"
|
||||
imply BT_GATT_AUTO_SEC_REQ
|
||||
help
|
||||
Enables a combination of settings that are planned to be default in future versions of ZMK
|
||||
to improve connection stability. This includes changes to timing on BLE pairing initation,
|
||||
restores use of the updated/new LLCP implementation, and disables 2M PHY support.
|
||||
|
||||
config ZMK_BLE_EXPERIMENTAL_SEC
|
||||
bool "Experimental BLE security changes"
|
||||
imply BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
||||
help
|
||||
Enables a combination of settings that are planned to be default in future versions of ZMK.
|
||||
This includes changes to timing on BLE pairing initation, BT Secure Connection passkey entry,
|
||||
restores use of the updated/new LLCP implementation, disables 2M PHY support, and allows
|
||||
overwrite of keys from previously paired hosts.
|
||||
Enables a combination of settings that are planned to be officially supported in the future.
|
||||
This includes enabling BT Secure Connection passkey entry, and allows overwrite of keys from
|
||||
previously paired hosts.
|
||||
|
||||
config ZMK_BLE_EXPERIMENTAL_FEATURES
|
||||
bool "Experimental BLE connection and security settings/features"
|
||||
select ZMK_BLE_EXPERIMENTAL_CONN
|
||||
select ZMK_BLE_EXPERIMENTAL_SEC
|
||||
help
|
||||
Enables experimental connection changes and security features.
|
||||
|
||||
config ZMK_BLE_PASSKEY_ENTRY
|
||||
bool "Require passkey entry on the keyboard to complete pairing"
|
||||
default n
|
||||
select RING_BUFFER
|
||||
|
||||
config BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
||||
imply ZMK_BLE_PASSKEY_ENTRY
|
||||
|
||||
choice BT_LL_SW_LLCP_IMPL
|
||||
default BT_LL_SW_LLCP_LEGACY if !ZMK_BLE_EXPERIMENTAL_FEATURES
|
||||
default BT_LL_SW_LLCP_LEGACY if !ZMK_BLE_EXPERIMENTAL_CONN
|
||||
|
||||
endchoice
|
||||
|
||||
config BT_CTLR_PHY_2M
|
||||
default n if ZMK_BLE_EXPERIMENTAL_FEATURES
|
||||
default n if ZMK_BLE_EXPERIMENTAL_CONN
|
||||
|
||||
# BT_TINYCRYPT_ECC is required for BT_SMP_SC_PAIR_ONLY when using HCI
|
||||
config BT_TINYCRYPT_ECC
|
||||
|
|
|
@ -8,10 +8,10 @@
|
|||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,kscan = &settings_reset_kscan;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
settings_reset_kscan: settings_reset_kscan {
|
||||
compatible = "zmk,kscan-mock";
|
||||
columns = <1>;
|
||||
rows = <0>;
|
||||
|
|
|
@ -9,8 +9,10 @@ See [Configuration Overview](index.md) for instructions on how to change these s
|
|||
|
||||
## Kconfig
|
||||
|
||||
| Option | Type | Description | Default |
|
||||
| -------------------------------------- | ---- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
||||
| `CONFIG_ZMK_BLE_EXPERIMENTAL_FEATURES` | bool | Enables a combination of settings that are planned to be default in future versions of ZMK. This includes changes to timing on BLE pairing initation, BT Secure Connection passkey entry, restores use of the updated/new LLCP implementation, disables 2M PHY support, and allows overwrite of keys from previously paired hosts. | n |
|
||||
| `CONFIG_ZMK_BLE_PASSKEY_ENTRY` | bool | Enable passkey entry during pairing for enhanced security. (Note: After enabling this, you will need to re-pair all previously paired hosts) | n |
|
||||
| `CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION` | bool | Low level setting for GATT subscriptions. Set to `n` to work around an annoying Windows bug with battery notifications. | y |
|
||||
| Option | Type | Description | Default |
|
||||
| -------------------------------------- | ---- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
||||
| `CONFIG_ZMK_BLE_EXPERIMENTAL_CONN` | bool | Enables a combination of settings that are planned to be default in future versions of ZMK to improve connection stability. This includes changes to timing on BLE pairing initation, restores use of the updated/new LLCP implementation, and disables 2M PHY support. | n |
|
||||
| `CONFIG_ZMK_BLE_EXPERIMENTAL_SEC` | bool | Enables a combination of settings that are planned to be officially supported in the future. This includes enabling BT Secure Connection passkey entry, and allows overwrite of keys from previously paired hosts. | n |
|
||||
| `CONFIG_ZMK_BLE_EXPERIMENTAL_FEATURES` | bool | Aggregate config that enables both `CONFIG_ZMK_BLE_EXPERIMENTAL_CONN` and `CONFIG_ZMK_BLE_EXPERIMENTAL_SEC`. | n |
|
||||
| `CONFIG_ZMK_BLE_PASSKEY_ENTRY` | bool | Enable passkey entry during pairing for enhanced security. (Note: After enabling this, you will need to re-pair all previously paired hosts.) | n |
|
||||
| `CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION` | bool | Low level setting for GATT subscriptions. Set to `n` to work around an annoying Windows bug with battery notifications. | y |
|
||||
|
|
Loading…
Add table
Reference in a new issue