inputtrap

Detect input devices and optionally start the input manager

Syntax:

inputtrap [-f device] [-l device] [-s] 
          [-T] [-t trapfile] [-V...] 
          [-v[v]...] [-X class]... [-x device]... 
          [start] [query]

Runs on:

Neutrino

Options:

-f device
Probe for device first.
-l device
(“el”) Probe for device last.
-s
Safe mode (probe only for a keyboard).
-T
Ignore the default trapfile.
-t trapfile
Specify an alternative trapfile to start the input manager from.
-V
Pass a -v to the devi driver.
-v[v]...
Be verbose; more v characters cause more verbosity.
-X class
Exclude any devices of class from the scan.
-x device
Exclude device from the scan.
start
Start the driver. Once one input device from each class of device is recognized, inputtrap starts the driver for the first device found in each class.
query
Probe for input devices. If query is specified, inputtrap gives a printout of the command line required to start devi-hirun.

Description:

The inputtrap utility detects input devices and optionally starts the input manager. It runs in one of the following ways:


Note: This utility needs to have the setuid (“set user ID”) bit set in its permissions. If you use mkefs, mketfs, or mkifs on a Windows host to include this utility in an image, use the perms attribute to specify its permissions explicitly, and the uid and gid attributes to set the ownership correctly.

Probing

If probing, inputtrap probes for input devices, and writes to slogger the invocation commands along with the appropriate options and arguments for starting the found devices. If you specify the query option, inputtrap also writes the commands to standard output.

The probing order is as follows:

  1. Keyboard (kbd)
  2. PS/2 mouse (ps2)
  3. fd-connected relative-coordinate pointing devices (fd) , conforming to the COM Plug and Play standard.

The device names (given above) are recognized as arguments to the -f and -x options.

Using a trapfile

To override the options that inputtrap uses by default, probe the devices, using the query option as described above, redirect the output to a file, and then edit the file. When the options are correct, move or copy the trapfile to /etc/system/trap/input.${HOSTNAME}.

If the /etc/system/trap/input.${HOSTNAME} file exists, inputtrap uses the contents of this file as arguments to start a devi-* driver.

Each line of the trapfile corresponds to a separate invocation of a devi-* driver. The first word on the line indicates the driver to start. For example:

devi-elo elo fd -d/dev/ser1

The above line tells inputtrap to start the Elographics touchscreen driver.

If the line doesn't start with the name of a devi-* driver, inputtrap starts devi-hirun. For example:

kbd fd -d/dev/kbd ps2 k6-2

Caution: Adding invalid information to the input.hostname file can cause the system to hang. If your hardware changes, remember to remove the old input.hostname file.

Examples:

Probe for input devices, but don't start the input driver:

inputtrap

Probe for input devices. Don't start the input driver, but write the command line for the driver on standard output:

inputtrap query

Probe for input devices. Once one of each class of device has been recognized, spawn devi-hirun with an appropriate command line:

inputtrap start

See also:

devi-*, input-cfg, slogger

Connecting Hardware in the Neutrino User's Guide