1.. zephyr:code-sample:: kscan
2   :name: KSCAN
3   :relevant-api: kscan_interface timer_apis
4
5   Use the KSCAN API to read key presses and releases on a keyboard matrix.
6
7Overview
8********
9
10This sample demonstrates how to use the :ref:`KSCAN API <kscan_api>`.
11Callbacks are registered that will write to the console indicating KSCAN events.
12These events indicate key presses and releases.
13
14Building and Running
15********************
16
17The sample can be built and executed on boards supporting a Keyboard Matrix.
18It requires a correct fixture setup. Please connect a Keyboard Matrix to
19exercise the functionality (you need to obtain the right keymap from the vendor
20because they vary across different manufactures).
21For the correct execution of that sample in twister, add into boards's
22map-file next fixture settings::
23
24      - fixture: fixture_connect_keyboard
25
26Sample output
27=============
28
29.. code-block:: console
30
31   KSCAN test with a Keyboard matrix
32   Note: You are expected to see several callbacks
33   as you press and release keys!
34