From adfa1b5443e0a7ccaa973d69aac59ffbf8607d2f Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Wed, 22 Jul 2020 02:13:52 -0400 Subject: Initial work on sensor bindings. --- app/dts/bindings/zmk,keymap-sensors.yaml | 9 +++++++++ app/dts/bindings/zmk,layers.yaml | 3 +++ 2 files changed, 12 insertions(+) create mode 100644 app/dts/bindings/zmk,keymap-sensors.yaml (limited to 'app/dts') diff --git a/app/dts/bindings/zmk,keymap-sensors.yaml b/app/dts/bindings/zmk,keymap-sensors.yaml new file mode 100644 index 0000000..c56361d --- /dev/null +++ b/app/dts/bindings/zmk,keymap-sensors.yaml @@ -0,0 +1,9 @@ +description: | + Allows defining the collection of sensors bound in the keymap layers + +compatible: "zmk,keymap-sensors" + +properties: + sensors: + type: phandles + required: true diff --git a/app/dts/bindings/zmk,layers.yaml b/app/dts/bindings/zmk,layers.yaml index 34cbb95..1a3592e 100644 --- a/app/dts/bindings/zmk,layers.yaml +++ b/app/dts/bindings/zmk,layers.yaml @@ -13,3 +13,6 @@ child-binding: bindings: type: phandle-array required: true + sensor-bindings: + type: phandle-array + required: false -- cgit v1.2.3 From 34ff6190bd6177705bed075c5d52f54e87930591 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Wed, 22 Jul 2020 11:08:52 -0400 Subject: Initial behavior for key presses on encoder rotate --- app/dts/behaviors.dtsi | 3 ++- app/dts/behaviors/sensor_rotate_key_press.dtsi | 19 +++++++++++++++++++ .../zmk,behavior-sensor-rotate-key-press.yaml | 22 ++++++++++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 app/dts/behaviors/sensor_rotate_key_press.dtsi create mode 100644 app/dts/bindings/behaviors/zmk,behavior-sensor-rotate-key-press.yaml (limited to 'app/dts') diff --git a/app/dts/behaviors.dtsi b/app/dts/behaviors.dtsi index 86cd7b7..3978479 100644 --- a/app/dts/behaviors.dtsi +++ b/app/dts/behaviors.dtsi @@ -2,4 +2,5 @@ #include #include #include -#include \ No newline at end of file +#include +#include \ No newline at end of file diff --git a/app/dts/behaviors/sensor_rotate_key_press.dtsi b/app/dts/behaviors/sensor_rotate_key_press.dtsi new file mode 100644 index 0000000..ef52fba --- /dev/null +++ b/app/dts/behaviors/sensor_rotate_key_press.dtsi @@ -0,0 +1,19 @@ +#include + +/ { + behaviors { + enckp: behavior_sensor_rotate_key_press { + compatible = "zmk,behavior-sensor-rotate-key-press"; + label = "ENC_KEY_PRESS"; + usage_page = ; + #sensor-binding-cells = <2>; + }; + + enccp: behavior_sensor_rotate_consumer_press { + compatible = "zmk,behavior-sensor-rotate-key-press"; + label = "ENC_CONSUMER_PRESS"; + usage_page = ; + #sensor-binding-cells = <2>; + }; + }; +}; diff --git a/app/dts/bindings/behaviors/zmk,behavior-sensor-rotate-key-press.yaml b/app/dts/bindings/behaviors/zmk,behavior-sensor-rotate-key-press.yaml new file mode 100644 index 0000000..bbf3537 --- /dev/null +++ b/app/dts/bindings/behaviors/zmk,behavior-sensor-rotate-key-press.yaml @@ -0,0 +1,22 @@ +# Copyright (c) 2020, Pete Johanson +# SPDX-License-Identifier: MIT + +description: Sensor rotate key press/release behavior + +compatible: "zmk,behavior-sensor-rotate-key-press" + +properties: + label: + type: string + required: true + "#sensor-binding-cells": + type: int + required: true + const: 2 + usage_page: + type: int + default: 0 + +sensor-binding-cells: + - param1 + - param2 -- cgit v1.2.3 From 5958bfed0bd764c50d1a926a29a419b6f99018d5 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Wed, 22 Jul 2020 16:24:31 -0400 Subject: Naming tweaks for the sensor behavior. --- app/dts/behaviors/sensor_rotate_key_press.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'app/dts') diff --git a/app/dts/behaviors/sensor_rotate_key_press.dtsi b/app/dts/behaviors/sensor_rotate_key_press.dtsi index ef52fba..b094be5 100644 --- a/app/dts/behaviors/sensor_rotate_key_press.dtsi +++ b/app/dts/behaviors/sensor_rotate_key_press.dtsi @@ -2,14 +2,14 @@ / { behaviors { - enckp: behavior_sensor_rotate_key_press { + inc_dec_kp: behavior_sensor_rotate_key_press { compatible = "zmk,behavior-sensor-rotate-key-press"; label = "ENC_KEY_PRESS"; usage_page = ; #sensor-binding-cells = <2>; }; - enccp: behavior_sensor_rotate_consumer_press { + inc_dec_cp: behavior_sensor_rotate_consumer_press { compatible = "zmk,behavior-sensor-rotate-key-press"; label = "ENC_CONSUMER_PRESS"; usage_page = ; -- cgit v1.2.3