usbhidctl man page on NetBSD

Man page or keyword search:  
man Server   9087 pages
apropos Keyword Search (all sections)
Output format
NetBSD logo
[printable version]

USBHIDCTL(1)		  BSD General Commands Manual		  USBHIDCTL(1)

NAME
     usbhidctl — manipulate USB HID devices

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

DESCRIPTION
     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 speci‐
     fied 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 path‐
	     name.

     -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.

     -z	     Reset all feature and output flags to zero before attempting to
	     change them.  May be required for changing item values (via -w)
	     on devices that don't implement GET_REPORT.

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

SYNTAX
     usbhidctl parses the names of items specified on the command line against
     the human interface items reported by the USB device.  Each human inter‐
     face 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 gen‐
     erated item names, and the USB HID device is operated on when a match is
     found.

     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 char‐
     acter ‘.’.

     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.

     Some devices give the same name to more than one item.  usbhidctl sup‐
     ports isolating each item by appending a ‘#’.  character and a decimal
     item instance number, starting at zero.

EXAMPLES
     On a standard USB mouse the item
	   Generic_Desktop:Mouse.Generic_Desktop:Pointer.Button:Button_2
     reflects the current status of button 2.  The "button 2" item is encapsu‐
     lated within two collections, the "Mouse" collection in the "Generic
     Desktop" page, and the "Pointer" collection in the "Generic Desktop"
     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 identi‐
     fier 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" collection.
     The following can be used to switch this LED off:
	   usbhidctl -f /dev/mouse -w Mouse.0xffff:2=0

     The output below is from a device that uses the same name repeatedly.

	   % usbhidctl -f /dev/uhid0 -a
	   Consumer_Control.Volume_Up=0
	   Consumer_Control.Volume_Down=0
	   Consumer_Control.Mute=0
	   Consumer_Control.Unassigned=0
	   Consumer_Control.Unassigned=0

     The "Consumer_Control.Unassigned" name is used twice.  Each can be indi‐
     vidually accessed by providing an instance number.	 For example, to set
     the value for the first item:
	   usbhidctl -f /dev/uhid0 -w 'Consumer_Control.Unassigned#0=1'

     Another example is configuring multimedia keys on a keyboard.  First you
     would look in the dmesg(8) output, which uhid(4) devices are attached to
     the keyboard's uhidev(4) device and use usbhidctl to see how the controls
     are reported:
	   usbhidctl -f /dev/uhidX -lv -a
     Then press the special keys; you should see something like
     Consumer:Volume_Up etc.  Then create a configuration file containing the
     actions, like:

	   Consumer:Volume_Up	   1	   /usr/pkg/bin/dcop amarok player volumeUp &
	   Consumer:Volume_Down	   1	   /usr/pkg/bin/dcop amarok player volumeDown &
	   Consumer:Mute	   1	   /usr/pkg/bin/dcop amarok player mute &
     and use
	   usbhidaction -c /path/to/file -f /dev/uhidX
     once during your X startup.

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

HISTORY
     The usbhidctl command first appeared in NetBSD 1.4.

AUTHORS
     David Sainty ⟨David.Sainty@dtsp.co.nz⟩

BSD				March 30, 2011				   BSD
[top]
                             _         _         _ 
                            | |       | |       | |     
                            | |       | |       | |     
                         __ | | __ __ | | __ __ | | __  
                         \ \| |/ / \ \| |/ / \ \| |/ /  
                          \ \ / /   \ \ / /   \ \ / /   
                           \   /     \   /     \   /    
                            \_/       \_/       \_/ 
More information is available in HTML format for server NetBSD

List of man pages available for NetBSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net