This commit is contained in:
Jack Hartstein 2020-12-31 15:13:38 -08:00
commit 81c39322d3
212 changed files with 969 additions and 316 deletions

View file

@ -55,13 +55,23 @@ jobs:
- splitreus62_right
- tg4x
- tidbit
cmake-args: [""]
include:
- board: bdn9_rev2
- board: dz60rgb_rev1
- board: nrf52840_m2
shield: m60
- board: planck_rev6
- board: proton_c
shield: clueboard_california
- board: nice_nano
shield: kyria_left
cmake-args: -DCONFIG_ZMK_DISPLAY=y
skip-archive: true
- board: nice_nano
shield: kyria_right
cmake-args: -DCONFIG_ZMK_DISPLAY=y
skip-archive: true
steps:
- name: Checkout
uses: actions/checkout@v2
@ -104,8 +114,9 @@ jobs:
echo ::set-output name=shield-arg::${SHIELD_ARG}
echo ::set-output name=artifact-name::${ARTIFACT_NAME}
- name: Build (west build)
run: west build -s app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }}
run: west build -s app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} ${{ matrix.cmake-args }}
- name: Archive artifacts
if: ${{ !matrix.skip-archive }}
uses: actions/upload-artifact@v2
with:
name: "${{ steps.variables.outputs.artifact-name }}"

View file

@ -39,7 +39,7 @@ target_sources(app PRIVATE src/events/sensor_event.c)
target_sources_ifdef(CONFIG_ZMK_BLE app PRIVATE src/events/ble_active_profile_changed.c)
target_sources_ifdef(CONFIG_ZMK_BLE app PRIVATE src/events/battery_state_changed.c)
target_sources_ifdef(CONFIG_USB app PRIVATE src/events/usb_conn_state_changed.c)
if (NOT CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL)
target_sources(app PRIVATE src/behaviors/behavior_key_press.c)
target_sources(app PRIVATE src/behaviors/behavior_reset.c)
target_sources(app PRIVATE src/behaviors/behavior_hold_tap.c)
@ -47,6 +47,7 @@ if (NOT CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
target_sources(app PRIVATE src/behaviors/behavior_momentary_layer.c)
target_sources(app PRIVATE src/behaviors/behavior_outputs.c)
target_sources(app PRIVATE src/behaviors/behavior_toggle_layer.c)
target_sources(app PRIVATE src/behaviors/behavior_to_layer.c)
target_sources(app PRIVATE src/behaviors/behavior_transparent.c)
target_sources(app PRIVATE src/behaviors/behavior_none.c)
target_sources(app PRIVATE src/behaviors/behavior_sensor_rotate_key_press.c)
@ -57,9 +58,13 @@ target_sources_ifdef(CONFIG_ZMK_RGB_UNDERGLOW app PRIVATE src/behaviors/behavior
target_sources_ifdef(CONFIG_ZMK_BLE app PRIVATE src/behaviors/behavior_bt.c)
target_sources_ifdef(CONFIG_ZMK_BLE app PRIVATE src/ble.c)
target_sources_ifdef(CONFIG_ZMK_BLE app PRIVATE src/battery.c)
target_sources_ifdef(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL app PRIVATE src/split_listener.c)
target_sources_ifdef(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL app PRIVATE src/split/bluetooth/service.c)
target_sources_ifdef(CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL app PRIVATE src/split/bluetooth/central.c)
if (CONFIG_ZMK_SPLIT_BLE AND (NOT CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL))
target_sources(app PRIVATE src/split_listener.c)
target_sources(app PRIVATE src/split/bluetooth/service.c)
endif()
if (CONFIG_ZMK_SPLIT_BLE AND CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL)
target_sources(app PRIVATE src/split/bluetooth/central.c)
endif()
target_sources_ifdef(CONFIG_USB app PRIVATE src/usb.c)
target_sources_ifdef(CONFIG_ZMK_BLE app PRIVATE src/hog.c)
target_sources_ifdef(CONFIG_ZMK_RGB_UNDERGLOW app PRIVATE src/rgb_underglow.c)

View file

@ -83,7 +83,6 @@ menu "Split Support"
config ZMK_SPLIT
bool "Split keyboard support"
default n
if ZMK_SPLIT
@ -95,19 +94,12 @@ config ZMK_SPLIT_BLE
if ZMK_SPLIT_BLE
choice ZMK_SPLIT_BLE_ROLE
bool "BLE Role For Split Communication"
default ZMK_SPLIT_BLE_ROLE_CENTRAL
config ZMK_SPLIT_BLE_ROLE_CENTRAL
bool "Central"
select BT_CENTRAL
select BT_GATT_CLIENT
config ZMK_SPLIT_BLE_ROLE_PERIPHERAL
bool "Peripheral"
if ZMK_SPLIT_BLE_ROLE_PERIPHERAL
if !ZMK_SPLIT_BLE_ROLE_CENTRAL
config ZMK_USB
default n
@ -121,12 +113,9 @@ config BT_MAX_CONN
config BT_GAP_AUTO_UPDATE_CONN_PARAMS
default n
#ZMK_SPLIT_BLE_ROLE_PERIPHERAL
#!ZMK_SPLIT_BLE_ROLE_CENTRAL
endif
#ZMK_SPLIT_BLE_ROLE
endchoice
#ZMK_SPLIT_BLE
endif
@ -245,6 +234,9 @@ choice SYS_PM_POLICY
default SYS_PM_POLICY_APP
endchoice
config DEVICE_POWER_MANAGEMENT
default y
config ZMK_IDLE_SLEEP_TIMEOUT
int "Milliseconds of inactivity before entering deep sleep"
default 900000

View file

@ -0,0 +1,8 @@
# keeb.io BDN9 board configuration
# Copyright (c) 2020 The ZMK Contributors
# SPDX-License-Identifier: MIT
config BOARD_BDN9
bool "BDN9 rev2"
depends on SOC_STM32F072XB

View file

@ -0,0 +1,17 @@
# keeb.io BDN9 board configuration
# Copyright (c) 2020 Pete Johanson
# SPDX-License-Identifier: MIT
if BOARD_BDN9
config BOARD
default "bdn9_rev2"
config ZMK_KEYBOARD_NAME
default "BDN9 Rev2"
config ZMK_USB
default y
endif # BOARD_BDN9

View file

@ -0,0 +1,37 @@
# Building ZMK for the BDN9
Some general notes/commands for building standard BDN9 layouts from the assembly documentation.
## Standard Build
```
west build -p -d build/bdn9 --board bdn9_rev2
```
## Encoder Notes
If you built your BDN9 with encoders, you'll need to change the following in your local BDN9 config or add them to the end of the file.
```
CONFIG_EC11=y
CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
```
Then, you'll want to uncomment the necessary encoder lines in your `bdn9_rev2.keymap`:
```
&sensors {
status = "okay";
sensors = <&left_encoder &mid_encoder &right_encoder>;
};
&left_encoder { status = "okay"; };
&mid_encoder { status = "okay"; };
&right_encoder { status = "okay"; };
```
And then add the correct `sensor-bindings` array to each keymap layer, e.g.:
```
sensor-bindings = <&inc_dec_kp PG_UP PG_DN &inc_dec_kp M_VOLU M_VOLD &inc_dec_kp C_PREV C_NEXT>;
```

View file

@ -0,0 +1,107 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
/dts-v1/;
#include <st/f0/stm32f072Xb.dtsi>
/ {
model = "Keeb.io BDN9 rev2";
compatible = "keebio,bdn9", "st,stm32f072";
chosen {
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zmk,kscan = &kscan;
/* TODO: Enable once the GPIO bitbanging driver supports STM32
zmk,underglow = &led_strip;
*/
};
kscan: kscan {
compatible = "zmk,kscan-gpio-direct";
label = "KSCAN";
input-gpios
= <&gpiob 12 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiob 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiob 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiob 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiob 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpioa 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiof 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
, <&gpiof 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
;
};
/*
led_strip: ws2812 {
compatible = "worldsemi,ws2812-gpio";
label = "WS2812";
in-gpios = <&gpiob 15 0>;
chain-length = <9>;
};
*/
left_encoder: encoder_left {
compatible = "alps,ec11";
label = "LEFT_ENCODER";
a-gpios = <&gpioa 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&gpioa 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
resolution = <4>;
status = "disabled";
};
mid_encoder: encoder_mid {
compatible = "alps,ec11";
label = "MID_ENCODER";
a-gpios = <&gpioa 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&gpioa 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
resolution = <4>;
status = "disabled";
};
right_encoder: encoder_right {
compatible = "alps,ec11";
label = "RIGHT_ENCODER";
a-gpios = <&gpioa 15 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&gpiob 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
resolution = <4>;
status = "disabled";
};
sensors: sensors {
compatible = "zmk,keymap-sensors";
status = "disabled";
sensors = <>;
};
};
&usb {
status = "okay";
};
&rtc {
status = "okay";
};
&flash0 {
/*
* For more information, see:
* http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions
*/
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
/* Set 6Kb of storage at the end of the 128Kb of flash */
storage_partition: partition@3e800 {
label = "storage";
reg = <0x0001e800 0x00001800>;
};
};
};

View file

@ -0,0 +1,38 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
/* Uncomment and keep whatever encoders are on your BDN9
&sensors {
status = "okay";
sensors = <&left_encoder &mid_encoder &right_encoder>;
};
*/
// Uncomment each encoder installed on your BDN9
// &left_encoder { status = "okay"; };
// &mid_encoder { status = "okay"; };
// &right_encoder { status = "okay"; };
/ {
keymap {
compatible = "zmk,keymap";
default_layer {
bindings = <
&kp HOME &kp K_PP &kp END
&kp PG_UP &kp UP &kp PG_DN
&kp LEFT &kp DOWN &kp RIGHT
>;
/* Uncomment and add necessary bindings. This examples is for one encoder
sensor-bindings = <&inc_dec_kp PG_UP PG_DN>;
*/
};
};
};

View file

@ -0,0 +1,14 @@
identifier: bdn9
name: keeb.io BDN9
type: mcu
arch: arm
toolchain:
- zephyr
- gnuarmemb
- xtools
ram: 40
supported:
- encoders
- switches
- underglow
- per_key

View file

@ -0,0 +1,29 @@
# SPDX-License-Identifier: MIT
CONFIG_SOC_SERIES_STM32F0X=y
CONFIG_SOC_STM32F072XB=y
# 72MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
# Floating Point Options
CONFIG_FPU=y
# enable GPIO
CONFIG_GPIO=y
# Needed to reduce this to size that will fit on F072
CONFIG_HEAP_MEM_POOL_SIZE=1024
# clock configuration
CONFIG_CLOCK_CONTROL=y
# Clock configuration for Cube Clock control driver
CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y
# use HSI as PLL input
CONFIG_CLOCK_STM32_PLL_SRC_HSI=y
# produce 72MHz clock at PLL output
CONFIG_CLOCK_STM32_PLL_PREDIV=1
CONFIG_CLOCK_STM32_PLL_MULTIPLIER=12
CONFIG_CLOCK_STM32_AHB_PRESCALER=1
CONFIG_CLOCK_STM32_APB1_PRESCALER=2
CONFIG_CLOCK_STM32_APB2_PRESCALER=1

View file

@ -0,0 +1,7 @@
# SPDX-License-Identifier: MIT
board_runner_args(dfu-util "--pid=0483:df11" "--alt=0" "--dfuse")
board_runner_args(jlink "--device=STM32F072CB" "--speed=4000")
include(${ZEPHYR_BASE}/boards/common/dfu-util.board.cmake)
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)

View file

@ -7,7 +7,7 @@
/dts-v1/;
#include <st/f3/stm32f303Xc.dtsi>
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
model = "DZ60RGB, Rev 1";

View file

@ -1,6 +1,6 @@
#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/kscan-mock.h>
#include <dt-bindings/zmk/kscan_mock.h>
/ {
chosen {

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,17 +1,21 @@
if SHIELD_CORNE_LEFT
config ZMK_KEYBOARD_NAME
default "Corne Left"
default "Corne"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_CORNE_RIGHT
config ZMK_KEYBOARD_NAME
default "Corne Right"
config USB
default y
endif
if SHIELD_CORNE_LEFT || SHIELD_CORNE_RIGHT

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -6,6 +6,9 @@ if SHIELD_CRADIO_LEFT
config ZMK_KEYBOARD_NAME
default "cradio left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_CRADIO_RIGHT
@ -13,4 +16,14 @@ if SHIELD_CRADIO_RIGHT
config ZMK_KEYBOARD_NAME
default "cradio right"
config USB
default y
endif
if SHIELD_CRADIO_LEFT || SHIELD_CRADIO_RIGHT
config ZMK_SPLIT
default y
endif

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,5 +1,2 @@
# Copyright (c) 2020 The ZMK Contributors
# SPDX-License-Identifier: MIT
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,5 +1,3 @@
# Copyright (c) 2020 The ZMK Contributors
# SPDX-License-Identifier: MIT
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -6,6 +6,9 @@ if SHIELD_IRIS_LEFT
config ZMK_KEYBOARD_NAME
default "Iris Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_IRIS_RIGHT
@ -13,4 +16,14 @@ if SHIELD_IRIS_RIGHT
config ZMK_KEYBOARD_NAME
default "Iris Right"
config USB
default y
endif
if SHIELD_IRIS_LEFT || SHIELD_IRIS_RIGHT
config ZMK_SPLIT
default y
endif

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,6 +4,9 @@ if SHIELD_JIAN_LEFT
config ZMK_KEYBOARD_NAME
default "Jian Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
@ -12,6 +15,9 @@ if SHIELD_JIAN_RIGHT
config ZMK_KEYBOARD_NAME
default "Jian Right"
config USB
default y
endif
if SHIELD_JIAN_LEFT || SHIELD_JIAN_RIGHT
@ -19,5 +25,4 @@ if SHIELD_JIAN_LEFT || SHIELD_JIAN_RIGHT
config ZMK_SPLIT
default y
endif

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,6 +4,9 @@ if SHIELD_JORNE_LEFT
config ZMK_KEYBOARD_NAME
default "Jorne Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
@ -12,6 +15,9 @@ if SHIELD_JORNE_RIGHT
config ZMK_KEYBOARD_NAME
default "Jorne Right"
config USB
default y
endif
if SHIELD_JORNE_LEFT || SHIELD_JORNE_RIGHT

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,6 +4,9 @@ if SHIELD_KYRIA_LEFT
config ZMK_KEYBOARD_NAME
default "Kyria Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
@ -12,6 +15,9 @@ if SHIELD_KYRIA_RIGHT
config ZMK_KEYBOARD_NAME
default "Kyria Right"
config USB
default y
endif
if SHIELD_KYRIA_LEFT || SHIELD_KYRIA_RIGHT

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,6 +4,9 @@ if SHIELD_LILY58_LEFT
config ZMK_KEYBOARD_NAME
default "Lily58 Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_LILY58_RIGHT
@ -11,10 +14,16 @@ if SHIELD_LILY58_RIGHT
config ZMK_KEYBOARD_NAME
default "Lily58 Right"
config USB
default y
endif
if SHIELD_LILY58_LEFT || SHIELD_LILY58_RIGHT
config ZMK_SPLIT
default y
if ZMK_DISPLAY
config I2C
@ -52,3 +61,4 @@ endchoice
endif # LVGL
endif

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,6 +1,3 @@
# Uncomment to enable encoder
# CONFIG_EC11=y
# CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +1 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -6,6 +6,9 @@ if SHIELD_MICRODOX_LEFT
config ZMK_KEYBOARD_NAME
default "Microdox Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
@ -14,6 +17,9 @@ if SHIELD_MICRODOX_RIGHT
config ZMK_KEYBOARD_NAME
default "Microdox Right"
config USB
default y
endif
if SHIELD_MICRODOX_LEFT || SHIELD_MICRODOX_RIGHT

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -7,6 +7,9 @@ if SHIELD_QUEFRENCY_LEFT
config ZMK_KEYBOARD_NAME
default "Quefrency Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_QUEFRENCY_RIGHT
@ -14,4 +17,14 @@ if SHIELD_QUEFRENCY_RIGHT
config ZMK_KEYBOARD_NAME
default "Quefrency Right"
config USB
default y
endif
if SHIELD_QUEFRENCY_LEFT || SHIELD_QUEFRENCY_RIGHT
config ZMK_SPLIT
default y
endif

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -5,16 +5,27 @@ if SHIELD_SOFLE_LEFT
config ZMK_KEYBOARD_NAME
default "Sofle Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_SOFLE_RIGHT
config ZMK_KEYBOARD_NAME
default "Sofle Right"
config USB
default y
endif
if SHIELD_SOFLE_LEFT || SHIELD_SOFLE_RIGHT
config ZMK_SPLIT
default y
if ZMK_DISPLAY
config I2C

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,5 +1,2 @@
# Copyright (c) 2020 Ryan Cross
# SPDX-License-Identifier: MIT
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,5 +1,2 @@
# Copyright (c) 2020 Ryan Cross
# SPDX-License-Identifier: MIT
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -8,6 +8,9 @@ if SHIELD_SPLITREUS62_LEFT
config ZMK_KEYBOARD_NAME
default "Splitreus62 Left"
config ZMK_SPLIT_BLE_ROLE_CENTRAL
default y
endif
if SHIELD_SPLITREUS62_RIGHT
@ -15,8 +18,14 @@ if SHIELD_SPLITREUS62_RIGHT
config ZMK_KEYBOARD_NAME
default "Splitreus62 Right"
config USB
default y
endif
if SHIELD_SPLITREUS62_LEFT || SHIELD_SPLITREUS62_RIGHT
config ZMK_SPLIT
default y
endif

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y

View file

@ -1,2 +0,0 @@
CONFIG_ZMK_SPLIT=y
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
chosen {

View file

@ -4,7 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include <dt-bindings/zmk/matrix-transform.h>
#include <dt-bindings/zmk/matrix_transform.h>
/ {
kscan0: kscan {

View file

@ -13,7 +13,7 @@
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
#include <dt-bindings/zmk/kscan-mock.h>
#include <dt-bindings/zmk/kscan_mock.h>
struct kscan_mock_data {
kscan_callback_t callback;

View file

@ -6,6 +6,7 @@
#include <behaviors/sticky_key.dtsi>
#include <behaviors/momentary_layer.dtsi>
#include <behaviors/toggle_layer.dtsi>
#include <behaviors/to_layer.dtsi>
#include <behaviors/reset.dtsi>
#include <behaviors/sensor_rotate_key_press.dtsi>
#include <behaviors/rgb_underglow.dtsi>

View file

@ -0,0 +1,15 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
/ {
behaviors {
to: behavior_to_layer {
compatible = "zmk,behavior-to-layer";
label = "TO_LAYER";
#binding-cells = <1>;
};
};
};

View file

@ -0,0 +1,8 @@
# Copyright (c) 2020 The ZMK Contributors
# SPDX-License-Identifier: MIT
description: To Layer
compatible: "zmk,behavior-to-layer"
include: one_param.yaml

View file

@ -4,11 +4,6 @@
* SPDX-License-Identifier: MIT
*/
#pragma once
#warning "kscan-mock.h has been deprecated and superseded by kscan_mock.h"
#define ZMK_MOCK_IS_PRESS(v) ((v & (0x01 << 31)) != 0)
#define ZMK_MOCK_PRESS(row, col, msec) (row + (col << 8) + (msec << 16) + (0x01 << 31))
#define ZMK_MOCK_RELEASE(row, col, msec) (row + (col << 8) + (msec << 16))
#define ZMK_MOCK_ROW(v) (v & 0xFF)
#define ZMK_MOCK_COL(v) ((v >> 8) & 0xFF)
#define ZMK_MOCK_MSEC(v) ((v & ~(0x01 << 31)) >> 16)
#include "kscan_mock.h"

View file

@ -0,0 +1,14 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#pragma once
#define ZMK_MOCK_IS_PRESS(v) ((v & (0x01 << 31)) != 0)
#define ZMK_MOCK_PRESS(row, col, msec) (row + (col << 8) + (msec << 16) + (0x01 << 31))
#define ZMK_MOCK_RELEASE(row, col, msec) (row + (col << 8) + (msec << 16))
#define ZMK_MOCK_ROW(v) (v & 0xFF)
#define ZMK_MOCK_COL(v) ((v >> 8) & 0xFF)
#define ZMK_MOCK_MSEC(v) ((v & ~(0x01 << 31)) >> 16)

View file

@ -4,7 +4,6 @@
* SPDX-License-Identifier: MIT
*/
#define KT_ROW(item) (item >> 8)
#define KT_COL(item) (item & 0xFF)
#warning "matrix-transform.h has been deprecated and superseded by matrix_transform.h"
#define RC(row, col) (((row) << 8) + (col))
#include "matrix_transform.h"

View file

@ -0,0 +1,10 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#define KT_ROW(item) (item >> 8)
#define KT_COL(item) (item & 0xFF)
#define RC(row, col) (((row) << 8) + (col))

View file

@ -0,0 +1,18 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#pragma once
#include <lvgl.h>
#include <kernel.h>
struct zmk_widget_layer_status {
sys_snode_t node;
lv_obj_t *obj;
};
int zmk_widget_layer_status_init(struct zmk_widget_layer_status *widget, lv_obj_t *parent);
lv_obj_t *zmk_widget_layer_status_obj(struct zmk_widget_layer_status *widget);

View file

@ -7,7 +7,7 @@
#pragma once
#include <zephyr.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
#include <zmk/activity.h>
struct activity_state_changed {

View file

@ -7,7 +7,7 @@
#pragma once
#include <zephyr.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
struct battery_state_changed {
struct zmk_event_header header;

View file

@ -7,7 +7,7 @@
#pragma once
#include <zephyr.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
#include <device.h>
#include <zmk/ble/profile.h>

View file

@ -9,7 +9,7 @@
#include <zephyr.h>
#include <dt-bindings/zmk/modifiers.h>
#include <dt-bindings/zmk/hid_usage_pages.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
#include <zmk/keys.h>
struct keycode_state_changed {
@ -27,7 +27,7 @@ static inline struct keycode_state_changed *
keycode_state_changed_from_encoded(uint32_t encoded, bool pressed, int64_t timestamp) {
uint16_t page = HID_USAGE_PAGE(encoded) & 0xFF;
uint16_t id = HID_USAGE_ID(encoded);
zmk_mod_flags implicit_mods = SELECT_MODS(encoded);
zmk_mod_flags_t implicit_mods = SELECT_MODS(encoded);
if (!page) {
page = HID_USAGE_KEY;

View file

@ -7,7 +7,7 @@
#pragma once
#include <zephyr.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
struct layer_state_changed {
struct zmk_event_header header;

View file

@ -8,17 +8,17 @@
#include <zephyr.h>
#include <zmk/keys.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
struct modifiers_state_changed {
struct zmk_event_header header;
zmk_mod_flags modifiers;
zmk_mod_flags_t modifiers;
bool state;
};
ZMK_EVENT_DECLARE(modifiers_state_changed);
inline struct modifiers_state_changed *create_modifiers_state_changed(zmk_mod_flags modifiers,
inline struct modifiers_state_changed *create_modifiers_state_changed(zmk_mod_flags_t modifiers,
bool state) {
struct modifiers_state_changed *ev = new_modifiers_state_changed();
ev->modifiers = modifiers;

View file

@ -7,7 +7,7 @@
#pragma once
#include <zephyr.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
struct position_state_changed {
struct zmk_event_header header;

View file

@ -7,7 +7,7 @@
#pragma once
#include <zephyr.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
#include <device.h>
struct sensor_event {

View file

@ -9,7 +9,7 @@
#include <zephyr.h>
#include <usb/usb_device.h>
#include <zmk/event-manager.h>
#include <zmk/event_manager.h>
#include <zmk/usb.h>
struct usb_conn_state_changed {

View file

@ -147,7 +147,7 @@ static const uint8_t zmk_hid_report_desc[] = {
// } __packed;
struct zmk_hid_keyboard_report_body {
zmk_mod_flags modifiers;
zmk_mod_flags_t modifiers;
uint8_t _reserved;
uint8_t keys[ZMK_HID_KEYBOARD_NKRO_SIZE];
} __packed;
@ -166,16 +166,16 @@ struct zmk_hid_consumer_report {
struct zmk_hid_consumer_report_body body;
} __packed;
int zmk_hid_register_mod(zmk_mod modifier);
int zmk_hid_unregister_mod(zmk_mod modifier);
int zmk_hid_implicit_modifiers_press(zmk_mod_flags implicit_modifiers);
int zmk_hid_register_mod(zmk_mod_t modifier);
int zmk_hid_unregister_mod(zmk_mod_t modifier);
int zmk_hid_implicit_modifiers_press(zmk_mod_flags_t implicit_modifiers);
int zmk_hid_implicit_modifiers_release();
int zmk_hid_keyboard_press(zmk_key key);
int zmk_hid_keyboard_release(zmk_key key);
int zmk_hid_keyboard_press(zmk_key_t key);
int zmk_hid_keyboard_release(zmk_key_t key);
void zmk_hid_keyboard_clear();
int zmk_hid_consumer_press(zmk_key key);
int zmk_hid_consumer_release(zmk_key key);
int zmk_hid_consumer_press(zmk_key_t key);
int zmk_hid_consumer_release(zmk_key_t key);
void zmk_hid_consumer_clear();
struct zmk_hid_keyboard_report *zmk_hid_get_keyboard_report();

View file

@ -6,14 +6,15 @@
#pragma once
typedef uint32_t zmk_keymap_layers_state;
typedef uint32_t zmk_keymap_layers_state_t;
uint8_t zmk_keymap_layer_default();
zmk_keymap_layers_state zmk_keymap_layer_state();
zmk_keymap_layers_state_t zmk_keymap_layer_state();
bool zmk_keymap_layer_active(uint8_t layer);
uint8_t zmk_keymap_highest_layer_active();
int zmk_keymap_layer_activate(uint8_t layer);
int zmk_keymap_layer_deactivate(uint8_t layer);
int zmk_keymap_layer_toggle(uint8_t layer);
int zmk_keymap_layer_to(uint8_t layer);
int zmk_keymap_position_state_changed(uint32_t position, bool pressed, int64_t timestamp);

View file

@ -9,13 +9,13 @@
#include <zephyr.h>
#include <dt-bindings/zmk/keys.h>
typedef uint32_t zmk_key;
typedef uint8_t zmk_mod;
typedef uint8_t zmk_mod_flags;
typedef uint32_t zmk_key_t;
typedef uint8_t zmk_mod_t;
typedef uint8_t zmk_mod_flags_t;
struct zmk_key_event {
uint32_t column;
uint32_t row;
zmk_key key;
zmk_key_t key;
bool pressed;
};

View file

@ -7,6 +7,6 @@
#pragma once
#define ZMK_KEYMAP_SENSORS_NODE DT_INST(0, zmk_keymap_sensors)
#define ZMK_KEYMAP_HAS_SENSORS DT_NODE_EXISTS(ZMK_KEYMAP_SENSORS_NODE)
#define ZMK_KEYMAP_HAS_SENSORS DT_NODE_HAS_STATUS(ZMK_KEYMAP_SENSORS_NODE, okay)
#define ZMK_KEYMAP_SENSORS_LEN DT_PROP_LEN(ZMK_KEYMAP_SENSORS_NODE, sensors)
#define ZMK_KEYMAP_SENSORS_BY_IDX(idx) DT_PHANDLE_BY_IDX(ZMK_KEYMAP_SENSORS_NODE, sensors, idx)

View file

@ -12,10 +12,10 @@
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
#include <zmk/event-manager.h>
#include <zmk/events/activity-state-changed.h>
#include <zmk/events/position-state-changed.h>
#include <zmk/events/sensor-event.h>
#include <zmk/event_manager.h>
#include <zmk/events/activity_state_changed.h>
#include <zmk/events/position_state_changed.h>
#include <zmk/events/sensor_event.h>
#include <zmk/activity.h>

View file

@ -14,8 +14,8 @@
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
#include <zmk/event-manager.h>
#include <zmk/events/battery-state-changed.h>
#include <zmk/event_manager.h>
#include <zmk/events/battery_state_changed.h>
const struct device *battery;

View file

@ -14,10 +14,10 @@
#include <zmk/behavior.h>
#include <zmk/matrix.h>
#include <zmk/endpoints.h>
#include <zmk/event-manager.h>
#include <zmk/events/position-state-changed.h>
#include <zmk/events/keycode-state-changed.h>
#include <zmk/events/modifiers-state-changed.h>
#include <zmk/event_manager.h>
#include <zmk/events/position_state_changed.h>
#include <zmk/events/keycode_state_changed.h>
#include <zmk/events/modifiers_state_changed.h>
#include <zmk/behavior.h>
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);

View file

@ -10,8 +10,8 @@
#include <drivers/behavior.h>
#include <logging/log.h>
#include <zmk/event-manager.h>
#include <zmk/events/keycode-state-changed.h>
#include <zmk/event_manager.h>
#include <zmk/events/keycode_state_changed.h>
#include <zmk/behavior.h>
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);

View file

@ -11,8 +11,8 @@
#include <logging/log.h>
#include <drivers/sensor.h>
#include <zmk/event-manager.h>
#include <zmk/events/keycode-state-changed.h>
#include <zmk/event_manager.h>
#include <zmk/events/keycode_state_changed.h>
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);

View file

@ -13,10 +13,10 @@
#include <zmk/matrix.h>
#include <zmk/endpoints.h>
#include <zmk/event-manager.h>
#include <zmk/events/position-state-changed.h>
#include <zmk/events/keycode-state-changed.h>
#include <zmk/events/modifiers-state-changed.h>
#include <zmk/event_manager.h>
#include <zmk/events/position_state_changed.h>
#include <zmk/events/keycode_state_changed.h>
#include <zmk/events/modifiers_state_changed.h>
#include <zmk/hid.h>
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);

View file

@ -0,0 +1,38 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#define DT_DRV_COMPAT zmk_behavior_to_layer
#include <device.h>
#include <drivers/behavior.h>
#include <logging/log.h>
#include <zmk/keymap.h>
#include <zmk/behavior.h>
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
static int behavior_to_init(const struct device *dev) { return 0; };
static int to_keymap_binding_pressed(struct zmk_behavior_binding *binding,
struct zmk_behavior_binding_event event) {
LOG_DBG("position %d layer %d", event.position, binding->param1);
return zmk_keymap_layer_to(binding->param1);
}
static int to_keymap_binding_released(struct zmk_behavior_binding *binding,
struct zmk_behavior_binding_event event) {
LOG_DBG("position %d layer %d", event.position, binding->param1);
return 0;
}
static const struct behavior_driver_api behavior_to_driver_api = {
.binding_pressed = to_keymap_binding_pressed,
.binding_released = to_keymap_binding_released,
};
DEVICE_AND_API_INIT(behavior_to, DT_INST_LABEL(0), behavior_to_init, NULL, NULL, APPLICATION,
CONFIG_KERNEL_INIT_PRIORITY_DEFAULT, &behavior_to_driver_api);

View file

@ -32,8 +32,8 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
#include <zmk/ble.h>
#include <zmk/keys.h>
#include <zmk/split/bluetooth/uuid.h>
#include <zmk/event-manager.h>
#include <zmk/events/ble-active-profile-changed.h>
#include <zmk/event_manager.h>
#include <zmk/events/ble_active_profile_changed.h>
static struct bt_conn *auth_passkey_entry_conn;
static uint8_t passkey_entries[6] = {0, 0, 0, 0, 0, 0};
@ -63,19 +63,24 @@ static uint8_t active_profile;
#define DEVICE_NAME CONFIG_BT_DEVICE_NAME
#define DEVICE_NAME_LEN (sizeof(DEVICE_NAME) - 1)
#define IS_HOST_PERIPHERAL \
(!IS_ENABLED(CONFIG_ZMK_SPLIT) || IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL))
#define IS_SPLIT_PERIPHERAL \
(IS_ENABLED(CONFIG_ZMK_SPLIT) && !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL))
static const struct bt_data zmk_ble_ad[] = {
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_HOST_PERIPHERAL
BT_DATA(BT_DATA_NAME_COMPLETE, DEVICE_NAME, DEVICE_NAME_LEN),
BT_DATA_BYTES(BT_DATA_GAP_APPEARANCE, 0xC1, 0x03),
#endif
BT_DATA_BYTES(BT_DATA_FLAGS, (BT_LE_AD_GENERAL | BT_LE_AD_NO_BREDR)),
BT_DATA_BYTES(BT_DATA_UUID16_SOME,
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_HOST_PERIPHERAL
0x12, 0x18, /* HID Service */
#endif
0x0f, 0x18 /* Battery Service */
),
#if IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_SPLIT_PERIPHERAL
BT_DATA_BYTES(BT_DATA_UUID128_ALL, ZMK_SPLIT_BT_SERVICE_UUID)
#endif
};
@ -373,7 +378,7 @@ static void connected(struct bt_conn *conn, uint8_t err) {
bt_conn_le_param_update(conn, BT_LE_CONN_PARAM(0x0006, 0x000c, 30, 400));
#if IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_SPLIT_PERIPHERAL
bt_conn_le_phy_update(conn, BT_CONN_LE_PHY_PARAM_2M);
#endif
@ -462,7 +467,7 @@ static void auth_cancel(struct bt_conn *conn) {
LOG_DBG("Pairing cancelled: %s", log_strdup(addr));
}
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_HOST_PERIPHERAL
static enum bt_security_err auth_pairing_accept(struct bt_conn *conn,
const struct bt_conn_pairing_feat *const feat) {
struct bt_conn_info info;
@ -476,7 +481,7 @@ static enum bt_security_err auth_pairing_accept(struct bt_conn *conn,
return BT_SECURITY_ERR_SUCCESS;
};
#endif /* !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL) */
#endif /* IS_HOST_PERIPHERAL */
static void auth_pairing_complete(struct bt_conn *conn, bool bonded) {
struct bt_conn_info info;
@ -491,22 +496,22 @@ static void auth_pairing_complete(struct bt_conn *conn, bool bonded) {
return;
}
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_HOST_PERIPHERAL
if (!zmk_ble_active_profile_is_open()) {
LOG_ERR("Pairing completed but current profile is not open: %s", log_strdup(addr));
bt_unpair(BT_ID_DEFAULT, dst);
return;
}
#endif /* !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL) */
#endif /* IS_HOST_PERIPHERAL */
set_profile_address(active_profile, dst);
update_advertising();
};
static struct bt_conn_auth_cb zmk_ble_auth_cb_display = {
#if !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL)
#if IS_HOST_PERIPHERAL
.pairing_accept = auth_pairing_accept,
#endif /* !IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL) */
#endif /* IS_HOST_PERIPHERAL */
.pairing_complete = auth_pairing_complete,
// .passkey_display = auth_passkey_display,
@ -591,7 +596,7 @@ int zmk_ble_unpair_all() {
};
bool zmk_ble_handle_key_user(struct zmk_key_event *key_event) {
zmk_key key = key_event->key;
zmk_key_t key = key_event->key;
if (!auth_passkey_entry_conn) {
return true;

View file

@ -4,4 +4,4 @@
target_sources_ifdef(CONFIG_ZMK_DISPLAY app PRIVATE main.c)
target_sources_ifdef(CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN app PRIVATE status_screen.c)
add_subdirectory(widgets/)
add_subdirectory_ifdef(CONFIG_ZMK_DISPLAY widgets/)

Some files were not shown because too many files have changed in this diff Show more