*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> usbhidctl (1)              



NAME    [Toc]    [Back]

     usbhidctl - manipulate USB HID devices

SYNOPSIS    [Toc]    [Back]

     usbhidctl -f device [-t table] [-lv] -a
     usbhidctl -f device [-t table] [-v] -r
     usbhidctl -f device [-t table] [-lnv] name ...
     usbhidctl -f device [-t table] -w name=value ...

DESCRIPTION    [Toc]    [Back]

     usbhidctl can be used to output or modify the state of a USB
HID (Human
     Interface  Device).   If  a  list of items is present on the
command line,
     then usbhidctl prints the current value of those  items  for
the specified
     device.   If  the -w flag is specified usbhidctl attempts to
set the specified
 items to the given values.

     The options are as follows:

     -a      Show all items and their current values.   This  option fails if
             the  device does not support the GET_REPORT command.

     -f device
             Specify a path name for the device  to  operate  on.
If device is
             numeric,  it  is taken to be the USB HID device number.  If it is a
             relative path, it is taken to be the name of the device under
             /dev.   An  absolute path is taken to be the literal
device pathname.

     -l      Loop and dump the device data every time it changes.
Only 'input'
 items are displayed in this mode.

     -n       Suppress  printing  of  the item name when querying
specific items.
             Only output the current value.

     -r      Dump the USB HID report descriptor.

     -t table
             Specify a path name for the HID usage table file.

     -v      Be verbose.  Repeating this  option  increases  verbosity.

     -w       Change  item  values.   Only 'output' and 'feature'
kinds can be set
             with this option.

SYNTAX    [Toc]    [Back]

     usbhidctl parses the names of items specified on the command
line against
     the  human interface items reported by the USB device.  Each
human interface
 item is mapped from its native form to a human readable
name, using
     the  HID  usage table file.  Command line items are compared
with the generated
 item names, and the USB HID  device  is  operated  on
when a match is

     Each  human interface item is named by the "page" it appears
in, the
     "usage" within that page, and the list of "collections" containing the
     item.   Each  collection in turn is also identified by page,
and the usage
     within that page.

     On the usbhidctl command line the  page  name  is  separated
from the usage
     name  with the character `:'.  The collections are separated
by the character

     As an alternative notation in items on the command line, the
native numeric
  value  for the page name or usage can be used instead
of the full
     human readable page name or usage name.  Numeric values  can
be specified
     in decimal, octal or hexadecimal.

FILES    [Toc]    [Back]

     /usr/share/misc/usb_hid_usages  The default HID usage table.

EXAMPLES    [Toc]    [Back]

     On a standard USB mouse the item


     reflects  the  current  status  of button 2.  The "button 2"
item is encapsulated
 within two collections, the "Mouse" collection in  the
     Desktop"  page, and the "Pointer" collection in the "Generic
     page.  The item itself is the usage "Button_2" in the  "Button" page.

     An  item  can  generally be named by omitting one or more of
the page names.
     For example the "button 2" item would usually  just  be  referred to on the
     command line as:

           $ usbhidctl -f /dev/mouse Mouse.Pointer.Button_2

     Items  can  also  be named by referring to parts of the item
name with the
     numeric representation of the native HID usage  identifiers.
This is most
     useful when items are missing from the HID usage table.  The
page identifier
 for the "Generic Desktop" page  is  1,  and  the  usage
identifier for
     the  usage  "Button_2" is 2, so the following can be used to
refer to the
     "button 2" item:

           $ usbhidctl -f /dev/mouse 1:Mouse.1:Pointer.Button:2

     Devices with human interface outputs can be manipulated with
the -w option.
   For  example,  some  USB  mice have a Light Emitting
Diode under software
 control as usage 2 under page 0xffff,  in  the  "Mouse"
     The following can be used to switch this LED off:

           $ usbhidctl -f /dev/mouse -w Mouse.0xffff:2=0

SEE ALSO    [Toc]    [Back]

     usbhidaction(1), usbhid(3), uhid(4), usb(4)

HISTORY    [Toc]    [Back]

     The usbhidctl command first appeared in OpenBSD 3.0.

AUTHORS    [Toc]    [Back]

     David Sainty <David.Sainty@dtsp.co.nz>

BUGS    [Toc]    [Back]

     Some  USB HID devices report multiple items with exactly the
same usage
     identifiers.  The current naming scheme does not provide the
means to
     specify  which  of  a set of identically named items you are
referring to.

OpenBSD     3.6                         August      27,      2000
[ Back ]
 Similar pages
Name OS Title
atactl OpenBSD a program to manipulate ATA (IDE) devices
MAKEDEV Linux create devices
physio OpenBSD initiate I/O on raw devices
hilinfo OpenBSD provides information on HIL devices
input IRIX input devices
hotplug OpenBSD devices hot plugging
ioconfig IRIX configure I/O devices
ioctl Tru64 Control devices
ucom NetBSD interface for USB tty like devices
physio NetBSD initiate I/O on raw devices
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service