Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / ABI / testing / sysfs-driver-hid-wiimote
1 What:           /sys/bus/hid/drivers/wiimote/<dev>/led1
2 What:           /sys/bus/hid/drivers/wiimote/<dev>/led2
3 What:           /sys/bus/hid/drivers/wiimote/<dev>/led3
4 What:           /sys/bus/hid/drivers/wiimote/<dev>/led4
5 Date:           July 2011
6 KernelVersion:  3.1
7 Contact:        David Herrmann <dh.herrmann@googlemail.com>
8 Description:    Make it possible to set/get current led state. Reading from it
9                 returns 0 if led is off and 1 if it is on. Writing 0 to it
10                 disables the led, writing 1 enables it.
11
12 What:           /sys/bus/hid/drivers/wiimote/<dev>/extension
13 Date:           August 2011
14 KernelVersion:  3.2
15 Contact:        David Herrmann <dh.herrmann@gmail.com>
16 Description:    This file contains the currently connected and initialized
17                 extensions. It can be one of: none, motionp, nunchuck, classic,
18                 motionp+nunchuck, motionp+classic
19                 motionp is the official Nintendo Motion+ extension, nunchuck is
20                 the official Nintendo Nunchuck extension and classic is the
21                 Nintendo Classic Controller extension. The motionp extension can
22                 be combined with the other two.
23
24                 Starting with kernel-version 3.11 Motion Plus hotplugging is
25                 supported and if detected, it's no longer reported as static
26                 extension. You will get uevent notifications for the motion-plus
27                 device then.
28
29 What:           /sys/bus/hid/drivers/wiimote/<dev>/devtype
30 Date:           May 2013
31 KernelVersion:  3.11
32 Contact:        David Herrmann <dh.herrmann@gmail.com>
33 Description:    While a device is initialized by the wiimote driver, we perform
34                 a device detection and signal a "change" uevent after it is
35                 done. This file shows the detected device type. "pending" means
36                 that the detection is still ongoing, "unknown" means, that the
37                 device couldn't be detected or loaded. "generic" means, that the
38                 device couldn't be detected but supports basic Wii Remote
39                 features and can be used.
40                 Other strings for each device-type are available and may be
41                 added if new device-specific detections are added.
42                 Currently supported are:
43
44                         ============= =======================================
45                         gen10:        First Wii Remote generation
46                         gen20:        Second Wii Remote Plus generation
47                                       (builtin MP)
48                         balanceboard: Wii Balance Board
49                         ============= =======================================
50
51 What:           /sys/bus/hid/drivers/wiimote/<dev>/bboard_calib
52 Date:           May 2013
53 KernelVersion:  3.11
54 Contact:        David Herrmann <dh.herrmann@gmail.com>
55 Description:    This attribute is only provided if the device was detected as a
56                 balance board. It provides a single line with 3 calibration
57                 values for all 4 sensors. The values are separated by colons and
58                 are each 2 bytes long (encoded as 4 digit hexadecimal value).
59                 First, 0kg values for all 4 sensors are written, followed by the
60                 17kg values for all 4 sensors and last the 34kg values for all 4
61                 sensors.
62
63                 Calibration data is already applied by the kernel to all input
64                 values but may be used by user-space to perform other
65                 transformations.
66
67 What:           /sys/bus/hid/drivers/wiimote/<dev>/pro_calib
68 Date:           October 2013
69 KernelVersion:  3.13
70 Contact:        David Herrmann <dh.herrmann@gmail.com>
71 Description:    This attribute is only provided if the device was detected as a
72                 pro-controller. It provides a single line with 4 calibration
73                 values for all 4 analog sticks. Format is: "x1:y1 x2:y2". Data
74                 is prefixed with a +/-. Each value is a signed 16bit number.
75                 Data is encoded as decimal numbers and specifies the offsets of
76                 the analog sticks of the pro-controller.
77
78                 Calibration data is already applied by the kernel to all input
79                 values but may be used by user-space to perform other
80                 transformations.
81
82                 Calibration data is detected by the kernel during device setup.
83                 You can write "scan\n" into this file to re-trigger calibration.
84                 You can also write data directly in the form "x1:y1 x2:y2" to
85                 set the calibration values manually.