zephyr/samples/drivers/kscan
Benjamin Cabé f6a4217a88 doc: driver: samples: Update driver samples to use new Sphinx extension
Migrated existing driver samples to use the new code-sample directive
and role.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-09-22 09:21:43 +02:00
..
boards samples: drivers: kscan: Replace prj_<board> files with overlays 2023-03-20 10:18:32 +01:00
src samples, tests, boards: Switch main return type from void to int 2023-04-14 07:49:41 +09:00
CMakeLists.txt cmake: increase minimal required version to 3.20.0 2021-08-20 09:47:34 +02:00
prj.conf samples: drivers: kscan: enable logging, and add RK055HDMIPI4M shield 2023-07-11 09:53:38 -05:00
README.rst doc: driver: samples: Update driver samples to use new Sphinx extension 2023-09-22 09:21:43 +02:00
sample.yaml input: convert gt911 from kscan 2023-07-13 14:24:50 +00:00

.. zephyr:code-sample:: kscan
   :name: KSCAN
   :relevant-api: kscan_interface timer_apis

   Use the KSCAN API to read key presses and releases on a keyboard matrix.

Overview
********

This sample demonstrates how to use the :ref:`KSCAN API <kscan_api>`.
Callbacks are registered that will write to the console indicating KSCAN events.
These events indicate key presses and releases.

Building and Running
********************

The sample can be built and executed on boards supporting a Keyboard Matrix.
It requires a correct fixture setup. Please connect a Keyboard Matrix to
exercise the functionality (you need to obtain the right keymap from the vendor
because they vary across different manufactures).
For the correct execution of that sample in twister, add into boards's
map-file next fixture settings::

      - fixture: fixture_connect_keyboard

Sample output
=============

.. code-block:: console

   KSCAN test with a Keyboard matrix
   Note: You are expected to see several callbacks
   as you press and release keys!