xref: /freebsd/usr.bin/usbhidctl/usbhidctl.1 (revision 6472ac3d8a86336899b6cfb789a4cd9897e3fab5)
1.\" $NetBSD: usbhidctl.1,v 1.8 1999/05/11 21:03:58 augustss Exp $
2.\" $FreeBSD$
3.\"
4.\" Copyright (c) 1998 The NetBSD Foundation, Inc.
5.\" All rights reserved.
6.\"
7.\" This code is derived from software contributed to The NetBSD Foundation
8.\" by Lennart Augustsson.
9.\"
10.\" Redistribution and use in source and binary forms, with or without
11.\" modification, are permitted provided that the following conditions
12.\" are met:
13.\" 1. Redistributions of source code must retain the above copyright
14.\"    notice, this list of conditions and the following disclaimer.
15.\" 2. Redistributions in binary form must reproduce the above copyright
16.\"    notice, this list of conditions and the following disclaimer in the
17.\"    documentation and/or other materials provided with the distribution.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29.\" POSSIBILITY OF SUCH DAMAGE.
30.\"
31.Dd August 01, 2011
32.Dt USBHIDCTL 1
33.Os
34.Sh NAME
35.Nm usbhidctl
36.Nd manipulate USB HID devices
37.Sh SYNOPSIS
38.Nm
39.Fl f Ar device
40.Op Fl t Ar table
41.Op Fl v
42.Op Fl x
43.Fl r
44.Nm
45.Fl f Ar device
46.Op Fl t Ar table
47.Op Fl l
48.Op Fl v
49.Op Fl x
50.Fl a
51.Nm
52.Fl f Ar device
53.Op Fl t Ar table
54.Op Fl l
55.Op Fl n
56.Op Fl v
57.Op Fl x
58.Ar item ...
59.Nm
60.Fl f Ar device
61.Op Fl t Ar table
62.Op Fl v
63.Op Fl z
64.Fl w
65.Ar item=value ...
66.Sh DESCRIPTION
67The
68.Nm
69utility can be used to dump and modify the state of a USB HID (Human
70Interface Device).
71Each named
72.Ar item
73is printed.
74If the
75.Fl w
76flag is specified
77.Nm
78attempts to set the specified items to the given values.
79.Pp
80The options are as follows:
81.Bl -tag -width Ds
82.It Fl a
83Show all items and their current values if device returns.
84.It Fl f Ar device
85Specify a path name for the device to operate on.
86.It Fl l
87Loop and dump the device data every time it changes.
88.It Fl n
89Suppress printing of the item name.
90.It Fl r
91Dump the report descriptor.
92.It Fl t Ar table
93Specify a path name for the HID usage table file.
94.It Fl v
95Be verbose.
96.It Fl w
97Change item values.
98Only 'output' and 'feature' kinds can be set with this option.
99.It Fl x
100Dump data in hexadecimal as well as decimal.
101.It Fl z
102Reset reports to zero before processing
103.Fl w
104arguments. If not specified, current values will be requested from device.
105.El
106.Sh SYNTAX
107.Nm
108compares the names of items specified on the command line against the human
109interface items reported by the USB device.
110Each human interface item is mapped from its native form to a human readable
111name, using the HID usage table file.
112Command line items are compared with the generated item names,
113and the USB HID device is operated on when a match is found.
114.Pp
115Each human interface item is named by the
116.Qq page
117it appears in, the
118.Qq usage
119within that page, and the list of
120.Qq collections
121containing the item.
122Each collection in turn is also identified by page, and
123the usage within that page.
124.Pp
125On the
126.Nm
127command line the page name is separated from the usage name with the character
128.Sq Cm \&: .
129The collections are separated by the character
130.Sq Cm \&. .
131.Pp
132Some devices give the same name to more than one item.
133.Nm
134supports isolating each item by appending a
135.Sq Cm \&# .
136character and a decimal item instance number, starting at zero.
137.Sh FILES
138.Pa /usr/share/misc/usb_hid_usages
139The default HID usage table.
140.Sh SEE ALSO
141.Xr usbhid 3 ,
142.Xr uhid 4 ,
143.Xr usb 4
144.Sh HISTORY
145The
146.Nm
147command appeared in
148.Nx 1.4 .
149