Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 Dec 2020 21:56:10 +0000
From:      bugzilla-noreply@freebsd.org
To:        usb@FreeBSD.org
Subject:   [Bug 251784] USB_DO_REQUEST ERR#5 'Input/output error' for 0x0b05:0x18f3 ASUS AURA LED Controller
Message-ID:  <bug-251784-19105-VUVh0QjfwP@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-251784-19105@https.bugs.freebsd.org/bugzilla/>
References:  <bug-251784-19105@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D251784

--- Comment #4 from Greg V <greg@unrelenting.technology> ---
Created attachment 220515
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D220515&action=
=3Dedit
aura-reset.usbdump

(In reply to Hans Petter Selasky from comment #3)

> before plugging the device

That's not possible, the device is an embedded microcontroller soldered to =
the
PC's mainboard :)

Here's a dump started before `usbconfig -d ugen0.3 reset`, and with no
iichid/uhid/anything attaching *at all*, ugen only.

> webcamd

What would webcamd do? This is *not* an actual input device, this is custom
protocol over HID, which is why I mention hidapi->libusb and hidraw.

> the following control request

Hm. In the windows pcap, in the SET_REPORT Request, there is somewhat simil=
ar
data indeed before the EC 82 00 00.

We have this

 0000  21 09 EC 02 01 00 41 00  -- -- -- -- -- -- -- --  |!.....A.        |

and Windows has

0000   21 09 ec 02 02 00 41 00

this is parsed in Wireshark as the Setup Data fields, and the EC 82 00 00 ..
"frame" is in the Windows pcap as the Data Fragment under the Setup Data.

Now, the field with the difference (02 00 vs 01 00) is recognized by Wiresh=
ark
as "wIndex".

>From a quick search in iichid code, wIndex for HID SET_REPORT is the USB
interface number (uaa->info.bIfaceNum).

usbconfig dump_all_desc recognizes Interface 0 as Vendor Specific, and
Interface 1 as HID.
(Indexes and numbers match: bInterfaceNumber =3D 0x0001 for Interface 1,
similarly with zero.)

So Windows is actually detecting HID as Interface 2.

Did=E2=80=A6 did FreeBSD's USB descriptor parser *miss* a whole interface?

Can I easily dump the raw binary that gets parsed into the dump_all_desc
output? (I guess I'll do this in Windows first)

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-251784-19105-VUVh0QjfwP>