|
|
|
# Copyright (c) 2020, Pete Johanson
|
|
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
|
|
|
|
description: GPIO keyboard matrix controller
|
|
|
|
|
|
|
|
compatible: "zmk,kscan-gpio-matrix"
|
|
|
|
|
|
|
|
include: kscan.yaml
|
|
|
|
|
|
|
|
properties:
|
|
|
|
row-gpios:
|
|
|
|
type: phandle-array
|
|
|
|
required: true
|
|
|
|
col-gpios:
|
|
|
|
type: phandle-array
|
|
|
|
required: true
|
|
|
|
debounce-period:
|
|
|
|
type: int
|
|
|
|
required: false
|
|
|
|
deprecated: true
|
|
|
|
description: Deprecated. Use debounce-press-ms and debounce-release-ms instead.
|
|
|
|
debounce-press-ms:
|
|
|
|
type: int
|
|
|
|
default: 5
|
|
|
|
description: Debounce time for key press in milliseconds. Use 0 for eager debouncing.
|
|
|
|
debounce-release-ms:
|
|
|
|
type: int
|
|
|
|
default: 5
|
|
|
|
description: Debounce time for key release in milliseconds.
|
|
|
|
debounce-scan-period-ms:
|
|
|
|
type: int
|
|
|
|
default: 1
|
|
|
|
description: Time between reads in milliseconds when any key is pressed.
|
|
|
|
poll-period-ms:
|
|
|
|
type: int
|
|
|
|
default: 10
|
|
|
|
description: Time between reads in milliseconds when no key is pressed and ZMK_KSCAN_MATRIX_POLLING is enabled.
|
|
|
|
diode-direction:
|
|
|
|
type: string
|
|
|
|
default: row2col
|
|
|
|
enum:
|
|
|
|
- row2col
|
|
|
|
- col2row
|