1[
2  {
3    "name": "Initial check - should not produce any events",
4    "reports": [
5        [0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
6          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
7          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
9          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3,
10          0x5a, 0x8c, 0xa]
11    ],
12    "source": "JOYSTICK",
13    "events": [
14    ]
15  },
16
17  {
18    "name": "Press left DPAD key",
19    "reports": [
20        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00,
21          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
22          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
24          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
25          0xcc, 0x24, 0x52],
26        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
27          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
28          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
29          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
30          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
31          0x1c, 0xba, 0x0e]
32    ],
33    "source": "JOYSTICK",
34    "events": [
35      {"action": "MOVE", "axes": {"AXIS_HAT_X": -1}},
36      {"action": "MOVE", "axes": {"AXIS_HAT_X": 0}}
37    ]
38  },
39
40  {
41    "name": "Press right DPAD key",
42    "reports": [
43        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
44          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
45          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
46          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
47          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1b,
48          0x8d, 0x1e, 0x3c],
49        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
50          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
51          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
52          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
53          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
54          0x1c, 0xba, 0x0e]
55    ],
56    "source": "JOYSTICK",
57    "events": [
58      {"action": "MOVE", "axes": {"AXIS_HAT_X": 1}},
59      {"action": "MOVE", "axes": {"AXIS_HAT_X": 0}}
60    ]
61  },
62
63  {
64    "name": "Press up DPAD key",
65    "reports": [
66        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
67          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
68          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
69          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
70          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x96,
71          0x2e, 0xbb, 0xe6],
72        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
73          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
74          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
75          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
76          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
77          0x1c, 0xba, 0x0e]
78    ],
79    "source": "JOYSTICK",
80    "events": [
81      {"action": "MOVE", "axes": {"AXIS_HAT_Y": -1}},
82      {"action": "MOVE", "axes": {"AXIS_HAT_Y": 0}}
83    ]
84  },
85
86  {
87    "name": "Press down DPAD key",
88    "reports": [
89        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
90          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
91          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
92          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
93          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcd,
94          0x6f, 0x81, 0x88],
95        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
96          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
97          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
98          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
99          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
100          0x1c, 0xba, 0x0e]
101    ],
102    "source": "JOYSTICK",
103    "events": [
104      {"action": "MOVE", "axes": {"AXIS_HAT_Y": 1}},
105      {"action": "MOVE", "axes": {"AXIS_HAT_Y": 0}}
106    ]
107  },
108
109  {
110    "name": "Left stick - press left",
111    "reports": [
112        [0x31, 0x00, 0x3f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
113          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
114          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
115          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
116          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa,
117          0x6b, 0x34, 0x38],
118        [0x31, 0x00, 0x00, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
119          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
120          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
121          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
122          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0,
123          0x77, 0xb7, 0x4f],
124        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
125          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
126          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
127          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
128          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
129          0x1c, 0xba, 0x0e]
130    ],
131    "source": "JOYSTICK",
132    "events": [
133      {"action": "MOVE", "axes": {"AXIS_X": -0.51}},
134      {"action": "MOVE", "axes": {"AXIS_X": -1}},
135      {"action": "MOVE", "axes": {"AXIS_X": 0}}
136    ]
137  },
138
139  {
140    "name": "Left stick - press right",
141    "reports": [
142        [0x31, 0x00, 0xbf, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
143          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
144          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
145          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
146          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xde,
147          0x84, 0x28, 0x55],
148        [0x31, 0x00, 0xff, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
149          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
150          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
151          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
152          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64,
153          0xf3, 0xa6, 0x63],
154        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
155          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
156          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
157          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
158          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
159          0x1c, 0xba, 0x0e]
160    ],
161    "source": "JOYSTICK",
162    "events": [
163      {"action": "MOVE", "axes": {"AXIS_X": 0.5}},
164      {"action": "MOVE", "axes": {"AXIS_X": 1}},
165      {"action": "MOVE", "axes": {"AXIS_X": 0}}
166    ]
167  },
168
169  {
170    "name": "Left stick - press up",
171    "reports": [
172        [0x31, 0x00, 0x7f, 0x3f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
173          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
174          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
175          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
176          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xba,
177          0x50, 0x87, 0x83],
178        [0x31, 0x00, 0x7f, 0x00, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
179          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
180          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
181          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
182          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbb,
183          0xdc, 0xab, 0x07],
184        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
185          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
186          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
187          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
188          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
189          0x1c, 0xba, 0x0e]
190    ],
191    "source": "JOYSTICK",
192    "events": [
193      {"action": "MOVE", "axes": {"AXIS_Y": -0.51}},
194      {"action": "MOVE", "axes": {"AXIS_Y": -1}},
195      {"action": "MOVE", "axes": {"AXIS_Y": 0}}
196    ]
197  },
198
199  {
200    "name": "Left stick - press down",
201    "reports": [
202        [0x31, 0x00, 0x7f, 0xbf, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
203          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
204          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
205          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
206          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf,
207          0xcf, 0x8c, 0x42],
208        [0x31, 0x00, 0x7f, 0xff, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
209          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
210          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
211          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
212          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
213          0x83, 0xb1, 0xcf],
214        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
215          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
216          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
217          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
218          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
219          0x1c, 0xba, 0x0e]
220    ],
221    "source": "JOYSTICK",
222    "events": [
223      {"action": "MOVE", "axes": {"AXIS_Y": 0.5}},
224      {"action": "MOVE", "axes": {"AXIS_Y": 1}},
225      {"action": "MOVE", "axes": {"AXIS_Y": 0}}
226    ]
227  },
228
229  {
230    "name": "Right stick - press left",
231    "reports": [
232        [0x31, 0x00, 0x7f, 0x7f, 0x3f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
233          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
234          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
235          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
236          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f,
237          0x43, 0xfb, 0x3b],
238        [0x31, 0x00, 0x7f, 0x7f, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
239          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
240          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
241          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
242          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c,
243          0x9c, 0x36, 0xa9],
244        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
245          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
246          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
247          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
248          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
249          0x1c, 0xba, 0x0e]
250    ],
251    "source": "JOYSTICK",
252    "events": [
253      {"action": "MOVE", "axes": {"AXIS_Z": -0.51}},
254      {"action": "MOVE", "axes": {"AXIS_Z": -1}},
255      {"action": "MOVE", "axes": {"AXIS_Z": 0}}
256    ]
257  },
258
259  {
260    "name": "Right stick - press right",
261    "reports": [
262        [0x31, 0x00, 0x7f, 0x7f, 0xbf, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
263          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
264          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
265          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
266          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x31,
267          0xfd, 0x79, 0x51],
268        [0x31, 0x00, 0x7f, 0x7f, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
269          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
270          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
271          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
272          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2e,
273          0xa2, 0x38, 0x64],
274        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
275          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
276          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
277          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
278          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
279          0x1c, 0xba, 0x0e]
280    ],
281    "source": "JOYSTICK",
282    "events": [
283      {"action": "MOVE", "axes": {"AXIS_Z": 0.5}},
284      {"action": "MOVE", "axes": {"AXIS_Z": 1}},
285      {"action": "MOVE", "axes": {"AXIS_Z": 0}}
286    ]
287  },
288
289  {
290    "name": "Right stick - press up",
291    "reports": [
292        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
293          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
294          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
295          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
296          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38,
297          0xf9, 0x4d, 0xfa],
298        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
299          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
300          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
301          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
302          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4,
303          0x71, 0x1c, 0xe5],
304        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
305          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
306          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
307          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
308          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
309          0x1c, 0xba, 0x0e]
310    ],
311    "source": "JOYSTICK",
312    "events": [
313      {"action": "MOVE", "axes": {"AXIS_RZ": -0.51}},
314      {"action": "MOVE", "axes": {"AXIS_RZ": -1}},
315      {"action": "MOVE", "axes": {"AXIS_RZ": 0}}
316    ]
317  },
318
319  {
320    "name": "Right stick - press down",
321    "reports": [
322        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0xbf, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
323          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
324          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
325          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
326          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29,
327          0x35, 0xd3, 0xc8],
328        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0xff, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
329          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
330          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
331          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
332          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
333          0xd0, 0x24, 0x3c],
334        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
335          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
336          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
337          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
338          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
339          0x1c, 0xba, 0x0e]
340    ],
341    "source": "JOYSTICK",
342    "events": [
343      {"action": "MOVE", "axes": {"AXIS_RZ": 0.5}},
344      {"action": "MOVE", "axes": {"AXIS_RZ": 1}},
345      {"action": "MOVE", "axes": {"AXIS_RZ": 0}}
346    ]
347  },
348
349  {
350    "name": "Left trigger - quick press",
351    "reports": [
352        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
353          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
354          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
355          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
356          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd5,
357          0xc7, 0xe1, 0xa6],
358        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
359          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
360          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
361          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
362          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf9,
363          0x35, 0x41, 0xe0],
364        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
365          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
366          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
367          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
368          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
369          0x1c, 0xba, 0x0e]
370    ],
371    "source": "JOYSTICK",
372    "events": [
373      {"action": "MOVE", "axes": {"AXIS_LTRIGGER": 0.5, "AXIS_BRAKE": 0.5}},
374      {"action": "MOVE", "axes": {"AXIS_LTRIGGER": 1.0, "AXIS_BRAKE": 1.0}},
375      {"action": "MOVE", "axes": {"AXIS_LTRIGGER": 0, "AXIS_BRAKE": 0}}
376    ]
377  },
378
379  {
380    "name": "Right trigger - quick press",
381    "reports": [
382        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x7f, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
383          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
384          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
385          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
386          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbd,
387          0x8c, 0xbe, 0x32],
388        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0xff, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
389          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
390          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
391          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
392          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12,
393          0xd9, 0xf2, 0xfb],
394        [0x31, 0x00, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
395          0x00, 0x00, 0xff, 0xff, 0xf2, 0xff, 0x04, 0x00, 0x00, 0x00, 0x8e, 0xff, 0x02, 0x00, 0x00,
396          0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
397          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00,
398          0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
399          0x1c, 0xba, 0x0e]
400    ],
401    "source": "JOYSTICK",
402    "events": [
403      {"action": "MOVE", "axes": {"AXIS_RTRIGGER": 0.5, "AXIS_GAS": 0.5}},
404      {"action": "MOVE", "axes": {"AXIS_RTRIGGER": 1.0, "AXIS_GAS": 1.0}},
405      {"action": "MOVE", "axes": {"AXIS_RTRIGGER": 0, "AXIS_GAS": 0}}
406    ]
407  }
408]
409