feat(shields): add right encoders support to waterfowl

This commit is contained in:
Diogo Doreto 2023-03-21 14:36:53 +01:00 committed by Pete Johanson
parent 791711b555
commit 6af22424f1
4 changed files with 70 additions and 18 deletions

View file

@ -40,28 +40,53 @@ RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5)
, <&pro_micro 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
;
};
left_encoder: encoder_left { //roller
roller_left_encoder: encoder_left_roller {
compatible = "alps,ec11";
label = "LEFT_ENCODER";
a-gpios = <&pro_micro 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&pro_micro 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
resolution = <4>;
label = "ROLLER_LEFT_ENCODER";
a-gpios = <&pro_micro 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&pro_micro 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
steps = <80>;
status = "disabled";
};
right_encoder: encoder_right { //Standard encoder on left half
dial_left_encoder: encoder_left_dial {
compatible = "alps,ec11";
label = "RIGHT_ENCODER";
label = "DIAL_LEFT_ENCODER";
a-gpios = <&pro_micro 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&pro_micro 16 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
resolution = <2>;
steps = <80>;
status = "disabled";
};
roller_right_encoder: encoder_right_roller {
compatible = "alps,ec11";
label = "ROLLER_RIGHT_ENCODER";
a-gpios = <&pro_micro 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&pro_micro 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
steps = <80>;
status = "disabled";
};
dial_right_encoder: encoder_right_dial {
compatible = "alps,ec11";
label = "DIAL_RIGHT_ENCODER";
a-gpios = <&pro_micro 16 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
b-gpios = <&pro_micro 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
steps = <80>;
status = "disabled";
};
sensors {
compatible = "zmk,keymap-sensors";
sensors = <&left_encoder &right_encoder>;
triggers-per-rotation = <20>;
sensors = <
&roller_left_encoder
&dial_left_encoder
&dial_right_encoder
&roller_right_encoder
>;
};
// TODO: RGB node(s)

View file

@ -33,7 +33,12 @@
&kp N1 &lt 3 DEL &lt 1 SPACE &kp TAB &kp N2 &kp N3 &kp ESC &kp BSPC &lt 2 RET &kp N4
>;
sensor-bindings = <&inc_dec_kp PAGE_UP PAGE_DOWN &inc_dec_kp TAB LS(TAB)>;
sensor-bindings = <
&inc_dec_kp PAGE_DOWN PAGE_UP
&inc_dec_kp C_VOL_DN C_VOL_UP
&inc_dec_kp DOWN UP
&inc_dec_kp LEFT RIGHT
>;
};
navnum_layer {
@ -57,7 +62,12 @@
&kp N1 &lt 3 DEL &lt 1 SPACE &kp TAB &kp N2 &kp N3 &kp ESC &kp BSPC &lt 2 RET &kp N4
>;
sensor-bindings = <&inc_dec_kp PAGE_UP PAGE_DOWN &inc_dec_kp TAB LS(TAB)>;
sensor-bindings = <
&inc_dec_kp PAGE_DOWN PAGE_UP
&inc_dec_kp C_VOL_DN C_VOL_UP
&inc_dec_kp DOWN UP
&inc_dec_kp LEFT RIGHT
>;
};
symbol_layer {
@ -81,7 +91,12 @@
&kp N1 &lt 3 DEL &lt 1 SPACE &kp TAB &kp N2 &kp N3 &kp ESC &kp BSPC &lt 2 RET &kp N4
>;
sensor-bindings = <&inc_dec_kp PAGE_UP PAGE_DOWN &inc_dec_kp TAB LS(TAB)>;
sensor-bindings = <
&inc_dec_kp PAGE_DOWN PAGE_UP
&inc_dec_kp C_VOL_DN C_VOL_UP
&inc_dec_kp DOWN UP
&inc_dec_kp LEFT RIGHT
>;
};
function_layer {
@ -105,7 +120,12 @@
&kp N1 &lt 3 DEL &lt 1 SPACE &kp TAB &kp N2 &kp N3 &kp ESC &kp BSPC &lt 2 RET &kp N4
>;
sensor-bindings = <&inc_dec_kp PAGE_UP PAGE_DOWN &inc_dec_kp TAB LS(TAB)>;
sensor-bindings = <
&inc_dec_kp PAGE_DOWN PAGE_UP
&inc_dec_kp C_VOL_DN C_VOL_UP
&inc_dec_kp DOWN UP
&inc_dec_kp LEFT RIGHT
>;
};
};

View file

@ -16,6 +16,10 @@
;
};
&left_encoder {
&roller_left_encoder {
status = "okay";
};
&dial_left_encoder {
status = "okay";
};

View file

@ -20,7 +20,10 @@
;
};
&right_encoder {
&roller_right_encoder {
status = "okay";
};
&dial_right_encoder {
status = "okay";
};