Android (Nvidia Shield) + Headsets

Hi, does anyone know if there are any known issues sharing USB headsets (headphones and microphone) over VirtualHere on the Android version? I'm specifically using an Nvidia Shield, and a SteelSeries Arctis 9.

When I connect the device, I get an extra Android popup warning me that VirtualHere doesn't have audio recording permissions, but it could record audio if I grant it access. When I allow this, the headset does show up on my Windows client, and I can set it as the default audio output, but it still doesn't seem to work for either output or recording.

I should note that I know using Gamestream/Moonlight interferes with this (since it will constantly try to grab the audio out). That's my second hurdle to solve! But even without that it doesn't seem to work.

I only had time to try it briefly and I'm planning to do more testing soon, but wanted to just check here too. Thanks!

#2

Can i confirm you are using the dongle via virtualhere? Usually you use a bluetooth dongle via virtualhere and sync to that and it should work. I think the dongle with that headset is bluetooth but i wasnt entirely sure

#3

Yes, the USB dongle is actually a custom 2.4ghz wireless receiver for the main audio connection in this headset. It does also support Bluetooth so you can listen to two sources at once (designed for e.g. PlayStation and Discord at the same time) but I haven’t tried turning on the Bluetooth yet.

The only thing I thought was odd was that when I tried plugging the USB receiver directly into my PC I got a pop up asking me if I wanted to install the SteelSeries software, and that didn’t happen when I connected via VirtualHere. So it was like it couldn’t make the full connection properly somehow, if that makes any sense. Thanks!

#4

OK i think you should try a normal USB bluetooth dongle if you have one, and use that via virtualhere then sync to that instead. That custom dongle might have some special firmware that virtualhere cant support via Android. If you have a pi4 or something like that it might work ok.

#5

Ah okay, interesting. I was hoping to use the higher fidelity wireless for the PC audio rather than bluetooth, but good to know another option like the Pi might work as that was another thought I'd considered. Sad that they are impossible to find right now...! But I'll keep looking. (And in the meantime I might also be able to try a USB bluetooth dongle too)

#6

I managed to pick up a Pi 4 at RRP somehow! Will give it a try at the weekend.

Any advice on whether I should try VirtualHere CloudHub, or just install Raspbian and the optimised server build? Thanks for the help.

#7

Either should be fine...cloudhub is easier to setup

#8

Okay thanks. I've just tried using CloudHub, but the one headset shows up as two devices in the VirtualHere client (one with a star, and one with a speaker icon). Connecting to either one separately doesn't seem to work, and I don't have a license for the Pi version so can't connect to both. Is there a way to temporarily test this or transfer my Android license? (Also, if I do buy a license for the Pi version, will that be locked to the CloudHub build? Just in case I do ever decide to install something else on the Pi, that might warrant switching over to Raspbian.)

#9

Hold that thought, I just realised I hadn't switched something on the headset (facepalm). If I connect just to the device showing the speaker icon, I do get sound out of the headset. However, it is quite crackly and drops out often, and the mic input back does not record properly, it is jittery. I noticed the crackling was better if the Pi was connected via Ethernet rather than WiFi, is this just a limitation of the setup, or is that second device in VirtualHere important? Thanks again for the help.

#10

It must be connected via ethernet to lower latency. Is the headset connected directly via USB cable or via a bluetooth dongle?

#11

The headset is connected to a custom USB 2.4ghz wireless receiver that came with the headset which is connected to the Pi. I have not noticed any issue with latency the way I do when I use a bluetooth headset (i.e. a delay in audio but perfect fidelity), only crackling noise and what seems to be dropped 'frames' of audio from the mic.

#12

Ah OK, that means that the latency is just too high for the audio to work without dropping. Some headsets compress the audio so it gets around this delay but seems like yours sends the raw signal. What does the latency look like in virtualhere. Right click USB Hubs->About->Statistics? Is it generally below 15ms?

#13

I had some trouble getting the headset to connect again, it showed up in Windows but did not send any sound. Eventually after selecting 'use' and 'don't use' a few times it started working. The output was better, but the mic input was still bad. The latency in VirtualHere was consistently under 1ms, here's just a few entries from the log:

2022-07-24 11:55:34,CloudHub_c0d35d,1,0.683000
2022-07-24 11:55:37,CloudHub_c0d35d,1,0.539500
2022-07-24 11:55:37,Android Hub,2,0.546900
2022-07-24 11:55:40,CloudHub_c0d35d,1,0.680500
2022-07-24 11:55:40,Android Hub,2,0.686200
2022-07-24 11:55:43,Android Hub,2,0.685900
2022-07-24 11:55:43,CloudHub_c0d35d,1,0.702300
2022-07-24 11:55:46,Android Hub,2,0.597800
2022-07-24 11:55:46,CloudHub_c0d35d,1,0.598500
2022-07-24 11:55:49,Android Hub,2,0.603600
2022-07-24 11:55:49,CloudHub_c0d35d,1,0.584500
2022-07-24 11:55:52,Android Hub,2,0.629400
2022-07-24 11:55:52,CloudHub_c0d35d,1,0.627300
2022-07-24 11:55:55,Android Hub,2,0.618100
2022-07-24 11:55:55,CloudHub_c0d35d,1,0.618700
2022-07-24 11:55:58,Android Hub,2,0.572600
2022-07-24 11:55:58,CloudHub_c0d35d,1,0.591400
2022-07-24 11:56:01,Android Hub,2,0.726800
2022-07-24 11:56:01,CloudHub_c0d35d,1,0.710900

The highest spike I saw was 0.98ms

#14

Could you plug your headphones directly into your pc and then run this program https://www.uwe-sieber.de/usbtreeview_e.html#download . This will show a list of all USB devices. Can you find your headphones on the list on the left, then click on it then paste in here all the text on the right side.

#15

<p>Sure. The headset actually shows up as a USB hub in that program, and has 4 USB slots below it (only two of which are used).
</p>
<p>[1-7]: Generic USB 1.1 Hub<br />
|FS-[1-7-1]: SteelSeries Arctis 9 - Audio, HID<br />
|FS-[1-7-2]: SteelSeries Arctis 9 - 2× HID<br />
|---[1-7-3]<br />
\---[1-7-4]
</p>
<p>I will paste the right hand details for the USB hub entry itself first, followed by the first and second USB entries within the hub.
</p>
<p>[1-7]: Generic USB 1.1 Hub<br />
=========================== USB Port7 ===========================
</p>
<p>Connection Status : 0x01 (Device is connected)<br />
Port Chain : 1-7<br />
Properties : 0x01<br />
IsUserConnectable : yes<br />
PortIsDebugCapable : no<br />
PortHasMultiCompanions : no<br />
PortConnectorIsTypeC : no<br />
ConnectionIndex : 0x07 (Port 7)<br />
CompanionIndex : 0<br />
CompanionHubSymLnk : USB#ROOT_HUB30#5&amp;11a8792f&amp;0&amp;0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}<br />
CompanionPortNumber : 0x03 (Port 3)<br />
-> CompanionPortChain : 1-3
</p>
<p> ========================== Summary =========================<br />
Vendor ID : 0x058F (Alcor Micro, Corp.)<br />
Product ID : 0x9254<br />
USB Version : 1.1<br />
Port maximum Speed : High-Speed (Companion Port 1-3 supports SuperSpeed)<br />
Device maximum Speed : Full-Speed<br />
Device Connection Speed : Full-Speed<br />
Self powered : yes<br />
Demanded Current : 100 mA<br />
Used Endpoints : 2
</p>
<p> ========================== USB Hub =========================
</p>
<p>Hub Symbolic Link : USB#VID_058F&amp;PID_9254#6&amp;268bff9b&amp;0&amp;7#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
</p>
<p> +++++++++++++++++ Device Information ++++++++++++++++++<br />
Device Description : Generic USB Hub<br />
Device Path : \\?\USB#VID_058F&amp;PID_9254#6&amp;268bff9b&amp;0&amp;7#{f18a0e88-c30c-11d0-8815-00a0c906bed8} (GUID_DEVINTERFACE_USB_HUB)<br />
Kernel Name : \Device\USBPDO-8<br />
Device ID : USB\VID_058F&amp;PID_9254\6&amp;268BFF9B&amp;0&amp;7<br />
Hardware IDs : USB\VID_058F&amp;PID_9254&amp;REV_0312 USB\VID_058F&amp;PID_9254<br />
Driver KeyName : {36fc9e60-c465-11cf-8056-444553540000}\0019 (GUID_DEVCLASS_USB)<br />
Driver : \SystemRoot\System32\drivers\UsbHub3.sys (Version: 10.0.22000.65 Date: 2022-02-13)<br />
Driver Inf : C:\WINDOWS\inf\usbhub3.inf<br />
Legacy BusType : PNPBus<br />
Class : USB<br />
Class GUID : {36fc9e60-c465-11cf-8056-444553540000} (GUID_DEVCLASS_USB)<br />
Service : USBHUB3<br />
Enumerator : USB<br />
Location Info : Port_#0007.Hub_#0001<br />
Location IDs : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7), ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)<br />
Container ID : {2ce3dd9f-03b3-11ed-9820-a38eb0593fba}<br />
Manufacturer Info : (Standard USB HUBs)<br />
Capabilities : 0x84 (Removable, SurpriseRemovalOK)<br />
Status : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)<br />
Problem Code : 0<br />
Address : 7<br />
HcDisableSelectiveSuspend: 0<br />
EnableSelectiveSuspend : 0<br />
SelectiveSuspendEnabled : 0<br />
EnhancedPowerMgmtEnabled : 0<br />
IdleInWorkingState : 1<br />
WakeFromSleepState : 0<br />
Power State : D0 (supported: D0, D1, D2, D3, wake from D0, wake from D1, wake from D2)
</p>
<p> ------------------- USB Hub Descriptor -----------------<br />
bDescriptorLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x29 (Hub Descriptor)<br />
bNumberOfPorts : 0x04 (4 Ports)<br />
wHubCharacteristics : 0x0000<br />
Power switching : Ganged<br />
Compound device : No<br />
Over-current protection : Global<br />
TT Think Time : At most 8 FS bit times<br />
Port Indicators : Not supported<br />
bPowerOnToPowerGood : 0x16 (44 ms)<br />
bHubControlCurrent : 0x64 (100 mA)<br />
DeviceRemovable : 0x00<br />
Bit 0 : 0 (reserved, any value)<br />
Bit 1 : 0 (Device at Port 1 is removable)<br />
Bit 2 : 0 (Device at Port 2 is removable)<br />
Bit 3 : 0 (Device at Port 3 is removable)<br />
Bit 4 : 0 (Device at Port 4 is removable)<br />
Bit 5 : 0 (unused, must be 0)<br />
Bit 6 : 0 (unused, must be 0)<br />
Bit 7 : 0 (unused, must be 0)<br />
PowerControlMask : 0xFF<br />
Data (HexDump) : 09 29 04 00 00 16 64 00 FF .)....d..<br />
HubIsBusPowered : 0x01 (Bus Powered)
</p>
<p> ---------------- Extended USB Hub Descriptor ---------------<br />
HubType : 0x02 (Usb20Hub - hub descriptor is defined in USB 2.0 and 1.1 specifications)<br />
HighestPortNumber : 0x04 (4 Ports)<br />
UsbHubDescriptor : identical with "USB Hub Descriptor" shown above<br />
Data (HexDump) : 09 29 04 00 00 16 64 00 FF .)....d..
</p>
<p> ----------------- USB Hub Capabilities ----------------<br />
HubIs2xCapable : 0 (Is not 2.x capable)<br />
Data (HexDump) : 00 00 00 00 ....
</p>
<p> --------------- USB Hub Capabilities Ex ---------------<br />
HighSpeedCapable : 0 (No)<br />
HighSpeed : 0 (No)<br />
MultiTtCapable : 0 (No)<br />
HubIsMultiTt : 0 (No)<br />
ArmedWakeOnConnect : 0 (No)<br />
IsBusPowered : 0 (No)<br />
IsRoot : 0 (No)<br />
Data (HexDump) : 00 00 00 00 ....
</p>
<p> ---------------- Connection Information ---------------<br />
Connection Index : 0x07 (Port 7)<br />
Connection Status : 0x01 (DeviceConnected)<br />
Current Config Value : 0x01 (Configuration 1)<br />
Device Address : 0x0B (11)<br />
Is Hub : 0x01 (yes)<br />
Device Bus Speed : 0x01 (Full-Speed)<br />
Number Of Open Pipes : 0x01 (1 pipe to data endpoints)<br />
Pipe[0] : EndpointID=1 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=1 bInterval=255<br />
Data (HexDump) : 07 00 00 00 12 01 10 01 09 00 00 08 8F 05 54 92 ..............T.<br />
12 03 01 02 00 01 01 01 01 0B 00 01 00 00 00 01 ................<br />
00 00 00 07 05 81 03 01 00 FF 00 00 00 00 ..............
</p>
<p> --------------- Connection Information V2 -------------<br />
Connection Index : 0x07 (7)<br />
Length : 0x10 (16 bytes)<br />
SupportedUsbProtocols : 0x03<br />
Usb110 : 1 (yes, port supports USB 1.1)<br />
Usb200 : 1 (yes, port supports USB 2.0)<br />
Usb300 : 0 (no, port not supports USB 3.0) -> but Companion Port 1-3 does<br />
ReservedMBZ : 0x00<br />
Flags : 0x00<br />
DevIsOpAtSsOrHigher : 0 (Device is not operating at SuperSpeed or higher)<br />
DevIsSsCapOrHigher : 0 (Device is not SuperSpeed capable or higher)<br />
DevIsOpAtSsPlusOrHigher : 0 (Device is not operating at SuperSpeedPlus or higher)<br />
DevIsSsPlusCapOrHigher : 0 (Device is not SuperSpeedPlus capable or higher)<br />
ReservedMBZ : 0x00<br />
Data (HexDump) : 07 00 00 00 10 00 00 00 03 00 00 00 00 00 00 00 ................
</p>
<p> ---------------------- Device Descriptor ----------------------<br />
bLength : 0x12 (18 bytes)<br />
bDescriptorType : 0x01 (Device Descriptor)<br />
bcdUSB : 0x110 (USB Version 1.1)<br />
bDeviceClass : 0x09 (Hub)<br />
bDeviceSubClass : 0x00<br />
bDeviceProtocol : 0x00<br />
bMaxPacketSize0 : 0x08 (8 bytes)<br />
idVendor : 0x058F (Alcor Micro, Corp.)<br />
idProduct : 0x9254<br />
bcdDevice : 0x0312<br />
iManufacturer : 0x01 (String Descriptor 1)<br />
Language 0x0409 : "ALCOR"<br />
iProduct : 0x02 (String Descriptor 2)<br />
Language 0x0409 : "Generic USB Hub"<br />
iSerialNumber : 0x00 (No String Descriptor)<br />
bNumConfigurations : 0x01 (1 Configuration)<br />
Data (HexDump) : 12 01 10 01 09 00 00 08 8F 05 54 92 12 03 01 02 ..........T.....<br />
00 01 ..
</p>
<p> ------------------ Configuration Descriptor -------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x02 (Configuration Descriptor)<br />
wTotalLength : 0x0019 (25 bytes)<br />
bNumInterfaces : 0x01 (1 Interface)<br />
bConfigurationValue : 0x01 (Configuration 1)<br />
iConfiguration : 0x00 (No String Descriptor)<br />
bmAttributes : 0xE0<br />
D7: Reserved, set 1 : 0x01<br />
D6: Self Powered : 0x01 (yes)<br />
D5: Remote Wakeup : 0x01 (yes)<br />
D4..0: Reserved, set 0 : 0x00<br />
MaxPower : 0x32 (100 mA)<br />
Data (HexDump) : 09 02 19 00 01 01 00 E0 32 09 04 00 00 01 09 00 ........2.......<br />
00 00 07 05 81 03 01 00 FF .........
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x00 (Interface 0)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x09 (Hub)<br />
bInterfaceSubClass : 0x00<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 00 00 01 09 00 00 00 .........
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x81 (Direction=IN EndpointID=1)<br />
bmAttributes : 0x03 (TransferType=Interrupt)<br />
wMaxPacketSize : 0x0001 (1 byte)<br />
bInterval : 0xFF (255 ms)<br />
Data (HexDump) : 07 05 81 03 01 00 FF .......
</p>
<p> -------------------- String Descriptors -------------------<br />
------ String Descriptor 0 ------<br />
bLength : 0x04 (4 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language ID[0] : 0x0409 (English - United States)<br />
Data (HexDump) : 04 03 09 04 ....<br />
------ String Descriptor 1 ------<br />
bLength : 0x0C (12 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "ALCOR"<br />
Data (HexDump) : 0C 03 41 00 4C 00 43 00 4F 00 52 00 ..A.L.C.O.R.<br />
------ String Descriptor 2 ------<br />
bLength : 0x20 (32 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "Generic USB Hub"<br />
Data (HexDump) : 20 03 47 00 65 00 6E 00 65 00 72 00 69 00 63 00 .G.e.n.e.r.i.c.<br />
20 00 55 00 53 00 42 00 20 00 48 00 75 00 62 00 .U.S.B. .H.u.b.
</p>
<p>*************************************************************************************************
</p>
<p>|FS-[1-7-1]: SteelSeries Arctis 9 - Audio, HID<br />
=========================== USB Port1 ===========================
</p>
<p>Connection Status : 0x01 (Device is connected)<br />
Port Chain : 1-7-1
</p>
<p> ========================== Summary =========================<br />
Vendor ID : 0x1038 (SteelSeries ApS)<br />
Product ID : 0x12C4<br />
USB Version : 2.0 -> but Device is Full-Speed only<br />
Port maximum Speed : Full-Speed<br />
Device maximum Speed : Full-Speed<br />
Device Connection Speed : Full-Speed<br />
Self powered : yes<br />
Demanded Current : 100 mA<br />
Used Endpoints : 2
</p>
<p> ======================== USB Device ========================
</p>
<p> +++++++++++++++++ Device Information ++++++++++++++++++<br />
Device Description : USB Composite Device<br />
Device Path : \\?\USB#VID_1038&amp;PID_12C4#000000000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)<br />
Kernel Name : \Device\USBPDO-10<br />
Device ID : USB\VID_1038&amp;PID_12C4\000000000000<br />
Hardware IDs : USB\VID_1038&amp;PID_12C4&amp;REV_0003 USB\VID_1038&amp;PID_12C4<br />
Driver KeyName : {36fc9e60-c465-11cf-8056-444553540000}\0017 (GUID_DEVCLASS_USB)<br />
Driver : \SystemRoot\System32\drivers\usbccgp.sys (Version: 10.0.22000.1 Date: 2021-06-05)<br />
Driver Inf : C:\WINDOWS\inf\usb.inf<br />
Legacy BusType : PNPBus<br />
Class : USB<br />
Class GUID : {36fc9e60-c465-11cf-8056-444553540000} (GUID_DEVCLASS_USB)<br />
Service : usbccgp<br />
Enumerator : USB<br />
Location Info : Port_#0001.Hub_#0006<br />
Location IDs : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(1), ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(1)<br />
Container ID : {049dadfa-8eab-5d3f-95a9-93f36cbe0c1c}<br />
Manufacturer Info : (Standard USB Host Controller)<br />
Capabilities : 0x94 (Removable, UniqueID, SurpriseRemovalOK)<br />
Status : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)<br />
Problem Code : 0<br />
Address : 1<br />
HcDisableSelectiveSuspend: 0<br />
EnableSelectiveSuspend : 0<br />
SelectiveSuspendEnabled : 0<br />
EnhancedPowerMgmtEnabled : 0<br />
IdleInWorkingState : 0<br />
WakeFromSleepState : 0<br />
Power State : D0 (supported: D0, D2, D3, wake from D0, wake from D2)<br />
Child Device 1 : SteelSeries Arctis 9 Chat (USB Audio Device)<br />
Device Path 1 : \\?\USB#VID_1038&amp;PID_12C4&amp;MI_00#3&amp;3b8f3f69&amp;0&amp;0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global (AM_KSCATEGORY_CAPTURE)<br />
Device Path 2 : \\?\USB#VID_1038&amp;PID_12C4&amp;MI_00#3&amp;3b8f3f69&amp;0&amp;0000#{65e8773e-8f56-11d0-a3b9-00a0c9223196}\global (AM_KSCATEGORY_RENDER)<br />
Device Path 3 : \\?\USB#VID_1038&amp;PID_12C4&amp;MI_00#3&amp;3b8f3f69&amp;0&amp;0000#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\global (AM_KSCATEGORY_AUDIO)<br />
Kernel Name : \Device\00000129<br />
Device ID : USB\VID_1038&amp;PID_12C4&amp;MI_00\3&amp;3B8F3F69&amp;0&amp;0000<br />
Class : MEDIA<br />
Driver KeyName : {4d36e96c-e325-11ce-bfc1-08002be10318}\0019 (GUID_DEVCLASS_MEDIA)<br />
Service : usbaudio<br />
Location : 0002.0000.0000.007.001.000.000.000.000<br />
LocationPaths : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(1)#USBMI(0) PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(1)#USB(1) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(1)#USBMI(0) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(1)#USB(1)<br />
Child Device 1 : Headset Earphone (SteelSeries Arctis 9 Chat) (Audio Endpoint)<br />
Device ID : SWD\MMDEVAPI\{0.0.0.00000000}.{8B00E2A7-F0FA-48CA-B395-5125E2916AA5}<br />
Class : AudioEndpoint<br />
Driver KeyName : {c166523c-fe0c-4a94-a586-f1a80cfbbf3e}\0040 (AUDIOENDPOINT_CLASS_UUID)<br />
Child Device 2 : Microphone (SteelSeries Arctis 9 Chat) (Audio Endpoint)<br />
Device ID : SWD\MMDEVAPI\{0.0.1.00000000}.{40C85BF6-EF85-49F7-A986-7A2032784917}<br />
Class : AudioEndpoint<br />
Driver KeyName : {c166523c-fe0c-4a94-a586-f1a80cfbbf3e}\0039 (AUDIOENDPOINT_CLASS_UUID)<br />
Child Device 2 : SteelSeries Arctis 9 Game (USB Audio Device)<br />
Device Path 1 : \\?\USB#VID_1038&amp;PID_12C4&amp;MI_03#3&amp;3b8f3f69&amp;0&amp;0003#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\global (AM_KSCATEGORY_AUDIO)<br />
Device Path 2 : \\?\USB#VID_1038&amp;PID_12C4&amp;MI_03#3&amp;3b8f3f69&amp;0&amp;0003#{65e8773e-8f56-11d0-a3b9-00a0c9223196}\global (AM_KSCATEGORY_RENDER)<br />
Kernel Name : \Device\0000012a<br />
Device ID : USB\VID_1038&amp;PID_12C4&amp;MI_03\3&amp;3B8F3F69&amp;0&amp;0003<br />
Class : MEDIA<br />
Driver KeyName : {4d36e96c-e325-11ce-bfc1-08002be10318}\0020 (GUID_DEVCLASS_MEDIA)<br />
Service : usbaudio<br />
Location : 0002.0000.0000.007.001.000.000.000.000<br />
LocationPaths : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(1)#USBMI(3) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(1)#USBMI(3)<br />
Child Device 1 : Headphones (SteelSeries Arctis 9 Game) (Audio Endpoint)<br />
Device ID : SWD\MMDEVAPI\{0.0.0.00000000}.{1744FFF3-BD30-476E-BF79-BB1AA983964E}<br />
Class : AudioEndpoint<br />
Driver KeyName : {c166523c-fe0c-4a94-a586-f1a80cfbbf3e}\0041 (AUDIOENDPOINT_CLASS_UUID)<br />
Child Device 3 : USB Input Device<br />
Device ID : USB\VID_1038&amp;PID_12C4&amp;MI_05\3&amp;3B8F3F69&amp;0&amp;0005<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0049 (GUID_DEVCLASS_HIDCLASS)<br />
Service : HidUsb<br />
Location : 0002.0000.0000.007.001.000.000.000.000<br />
LocationPaths : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(1)#USBMI(5) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(1)#USBMI(5)<br />
Child Device 1 : HID-compliant consumer control device<br />
Device Path : \\?\HID#VID_1038&amp;PID_12C4&amp;MI_05#4&amp;20a7accf&amp;0&amp;0000#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)<br />
Kernel Name : \Device\0000012e<br />
Device ID : HID\VID_1038&amp;PID_12C4&amp;MI_05\4&amp;20A7ACCF&amp;0&amp;0000<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0050 (GUID_DEVCLASS_HIDCLASS)
</p>
<p> +++++++++++++++++ Registry USB Flags +++++++++++++++++<br />
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\103812C40003<br />
osvc : REG_BINARY 00 00
</p>
<p> ---------------- Connection Information ---------------<br />
Connection Index : 0x01 (Port 1)<br />
Connection Status : 0x01 (DeviceConnected)<br />
Current Config Value : 0x01 (Configuration 1)<br />
Device Address : 0x10 (16)<br />
Is Hub : 0x00 (no)<br />
Device Bus Speed : 0x01 (Full-Speed)<br />
Number Of Open Pipes : 0x01 (1 pipe to data endpoints)<br />
Pipe[0] : EndpointID=2 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=64 bInterval=1<br />
Data (HexDump) : 01 00 00 00 12 01 00 02 00 00 00 40 38 10 C4 12 ...........@8...<br />
03 00 01 02 03 01 01 01 00 10 00 01 00 00 00 01 ................<br />
00 00 00 07 05 82 03 40 00 01 00 00 00 00 .......@......
</p>
<p> --------------- Connection Information V2 -------------<br />
Connection Index : 0x01 (1)<br />
Length : 0x10 (16 bytes)<br />
SupportedUsbProtocols : 0x01<br />
Usb110 : 1 (yes, port supports USB 1.1)<br />
Usb200 : 0 (no, port not supports USB 2.0)<br />
Usb300 : 0 (no, port not supports USB 3.0)<br />
ReservedMBZ : 0x00<br />
Flags : 0x00<br />
DevIsOpAtSsOrHigher : 0 (Device is not operating at SuperSpeed or higher)<br />
DevIsSsCapOrHigher : 0 (Device is not SuperSpeed capable or higher)<br />
DevIsOpAtSsPlusOrHigher : 0 (Device is not operating at SuperSpeedPlus or higher)<br />
DevIsSsPlusCapOrHigher : 0 (Device is not SuperSpeedPlus capable or higher)<br />
ReservedMBZ : 0x00<br />
Data (HexDump) : 01 00 00 00 10 00 00 00 01 00 00 00 00 00 00 00 ................
</p>
<p> ---------------------- Device Descriptor ----------------------<br />
bLength : 0x12 (18 bytes)<br />
bDescriptorType : 0x01 (Device Descriptor)<br />
bcdUSB : 0x200 (USB Version 2.0) -> but device is Full-Speed only<br />
bDeviceClass : 0x00 (defined by the interface descriptors)<br />
bDeviceSubClass : 0x00<br />
bDeviceProtocol : 0x00<br />
bMaxPacketSize0 : 0x40 (64 bytes)<br />
idVendor : 0x1038 (SteelSeries ApS)<br />
idProduct : 0x12C4<br />
bcdDevice : 0x0003<br />
iManufacturer : 0x01 (String Descriptor 1)<br />
Language 0x0409 : "SteelSeries"<br />
iProduct : 0x02 (String Descriptor 2)<br />
Language 0x0409 : "SteelSeries Arctis 9"<br />
iSerialNumber : 0x03 (String Descriptor 3)<br />
Language 0x0409 : "000000000000"<br />
bNumConfigurations : 0x01 (1 Configuration)<br />
Data (HexDump) : 12 01 00 02 00 00 00 40 38 10 C4 12 03 00 01 02 .......@8.......<br />
03 01 ..
</p>
<p> ------------------ Configuration Descriptor -------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x02 (Configuration Descriptor)<br />
wTotalLength : 0x014C (332 bytes)<br />
bNumInterfaces : 0x06 (6 Interfaces)<br />
bConfigurationValue : 0x01 (Configuration 1)<br />
iConfiguration : 0x00 (No String Descriptor)<br />
bmAttributes : 0xC0<br />
D7: Reserved, set 1 : 0x01<br />
D6: Self Powered : 0x01 (yes)<br />
D5: Remote Wakeup : 0x00 (no)<br />
D4..0: Reserved, set 0 : 0x00<br />
MaxPower : 0x32 (100 mA)<br />
Data (HexDump) : 09 02 4C 01 06 01 00 C0 32 09 04 00 00 00 01 01 ..L.....2.......<br />
00 0B 0A 24 01 00 01 4E 00 02 01 02 0C 24 02 01 ...$...N.....$..<br />
01 01 00 02 03 00 00 00 0A 24 06 02 01 01 01 02 .........$......<br />
02 00 09 24 03 03 06 03 00 02 00 09 24 03 04 01 ...$........$...<br />
01 00 05 00 07 24 05 05 01 06 00 09 24 06 06 07 .....$......$...<br />
01 03 00 00 0C 24 02 07 01 02 00 02 01 00 00 00 .....$..........<br />
09 04 01 00 00 01 02 00 00 09 04 01 01 01 01 02 ................<br />
00 00 07 24 01 04 03 01 00 0B 24 02 01 01 02 10 ...$......$.....<br />
01 80 BB 00 09 05 81 09 62 00 01 00 00 07 25 01 ........b.....%.<br />
00 01 04 00 09 04 02 00 00 01 02 00 00 09 04 02 ................<br />
01 01 01 02 00 00 07 24 01 01 03 01 00 0E 24 02 .......$......$.<br />
01 02 02 10 02 44 AC 00 80 BB 00 09 05 01 09 C0 .....D..........<br />
00 01 00 00 07 25 01 00 01 04 00 09 04 03 00 00 .....%..........<br />
01 01 00 0A 09 24 01 00 01 28 00 01 04 0C 24 02 .....$...(....$.<br />
0B 01 01 00 02 03 00 00 00 0A 24 06 0C 0B 01 01 ..........$.....<br />
02 02 00 09 24 03 0D 02 03 00 0C 00 09 04 04 00 ....$...........<br />
00 01 02 00 00 09 04 04 01 01 01 02 00 00 07 24 ...............$<br />
01 0B 03 01 00 0E 24 02 01 02 02 10 02 44 AC 00 ......$......D..<br />
80 BB 00 09 05 02 09 C0 00 01 00 00 07 25 01 00 .............%..<br />
01 04 00 09 04 05 00 01 03 00 00 00 09 21 11 01 .............!..<br />
00 01 22 1A 00 07 05 82 03 40 00 01 .."......@..
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x00 (Interface 0)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x00 (Default Control Pipe only)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x01 (Audio Control)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x0B (String Descriptor 11)<br />
Language 0x0409 : "SteelSeries Arctis 9 Chat"<br />
Data (HexDump) : 09 04 00 00 00 01 01 00 0B .........
</p>
<p> ------ Audio Control Interface Header Descriptor ------<br />
bLength : 0x0A (10 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x01 (Header)<br />
bcdADC : 0x0100<br />
wTotalLength : 0x004E (78 bytes)<br />
bInCollection : 0x02<br />
baInterfaceNr[1] : 0x01<br />
baInterfaceNr[2] : 0x02<br />
Data (HexDump) : 0A 24 01 00 01 4E 00 02 01 02 .$...N....
</p>
<p> ------- Audio Control Input Terminal Descriptor -------<br />
bLength : 0x0C (12 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x02 (Input Terminal)<br />
bTerminalID : 0x01<br />
wTerminalType : 0x0101 (USB Streaming)<br />
bAssocTerminal : 0x00<br />
bNrChannels : 0x02 (2 channels)<br />
wChannelConfig : 0x0003 (L, R)<br />
iChannelNames : 0x00 (No String Descriptor)<br />
iTerminal : 0x00 (No String Descriptor)<br />
Data (HexDump) : 0C 24 02 01 01 01 00 02 03 00 00 00 .$..........
</p>
<p> -------- Audio Control Feature Unit Descriptor --------<br />
bLength : 0x0A (10 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x06 (Feature Unit)<br />
bUnitID : 0x02 (2)<br />
bSourceID : 0x01 (1)<br />
bControlSize : 0x01 (1 byte per control)<br />
bmaControls[0] : 0x01<br />
D0: Mute : 1<br />
D1: Volume : 0<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
bmaControls[1] : 0x02<br />
D0: Mute : 0<br />
D1: Volume : 1<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
bmaControls[2] : 0x02<br />
D0: Mute : 0<br />
D1: Volume : 1<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
iFeature : 0x00 (No String Descriptor)<br />
Data (HexDump) : 0A 24 06 02 01 01 01 02 02 00 .$........
</p>
<p> ------- Audio Control Output Terminal Descriptor ------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x03 (Output Terminal)<br />
bTerminalID : 0x03<br />
wTerminalType : 0x0306 (Communication speaker)<br />
bAssocTerminal : 0x00 (0)<br />
bSourceID : 0x02 (2)<br />
iTerminal : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 24 03 03 06 03 00 02 00 .$.......
</p>
<p> ------- Audio Control Output Terminal Descriptor ------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x03 (Output Terminal)<br />
bTerminalID : 0x04<br />
wTerminalType : 0x0101 (USB Streaming)<br />
bAssocTerminal : 0x00 (0)<br />
bSourceID : 0x05 (5)<br />
iTerminal : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 24 03 04 01 01 00 05 00 .$.......
</p>
<p> ------- Audio Control Selector Unit Descriptor --------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x05 (Selector Unit)<br />
bUnitID : 0x05<br />
bNrInPins : 0x01 (1 Input Pin)<br />
baSourceID[1] : 0x06 (6)<br />
iSelector : 0x00 (No String Descriptor)<br />
Data (HexDump) : 07 24 05 05 01 06 00 .$.....
</p>
<p> -------- Audio Control Feature Unit Descriptor --------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x06 (Feature Unit)<br />
bUnitID : 0x06 (6)<br />
bSourceID : 0x07 (7)<br />
bControlSize : 0x01 (1 byte per control)<br />
bmaControls[0] : 0x03<br />
D0: Mute : 1<br />
D1: Volume : 1<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
bmaControls[1] : 0x00<br />
D0: Mute : 0<br />
D1: Volume : 0<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
iFeature : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 24 06 06 07 01 03 00 00 .$.......
</p>
<p> ------- Audio Control Input Terminal Descriptor -------<br />
bLength : 0x0C (12 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x02 (Input Terminal)<br />
bTerminalID : 0x07<br />
wTerminalType : 0x0201 (Microphone)<br />
bAssocTerminal : 0x00<br />
bNrChannels : 0x02 (2 channels)<br />
wChannelConfig : 0x0001 (L)<br />
iChannelNames : 0x00 (No String Descriptor)<br />
iTerminal : 0x00 (No String Descriptor)<br />
Data (HexDump) : 0C 24 02 07 01 02 00 02 01 00 00 00 .$..........
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x01 (Interface 1)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x00 (Default Control Pipe only)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x02 (Audio Streaming)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 01 00 00 01 02 00 00 .........
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x01 (Interface 1)<br />
bAlternateSetting : 0x01<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x02 (Audio Streaming)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 01 01 01 01 02 00 00 .........
</p>
<p> -------- Audio Streaming Interface Descriptor ---------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x01 (AS_GENERAL)<br />
bTerminalLink : 0x04 (Terminal ID 4)<br />
bDelay : 0x03 (3 frames)<br />
wFormatTag : 0x0001 (PCM)<br />
Data (HexDump) : 07 24 01 04 03 01 00 .$.....
</p>
<p> ------- Audio Streaming Format Type Descriptor --------<br />
bLength : 0x0B (11 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x02 (Format Type)<br />
bFormatType : 0x01 (FORMAT_TYPE_I)<br />
bNrChannels : 0x01 (1 channel)<br />
bSubframeSize : 0x02 (2 bytes per subframe)<br />
bBitResolution : 0x10 (16 bits per sample)<br />
bSamFreqType : 0x01 (supports 1 sample frequence)<br />
tSamFreq[1] : 0x0BB80 (48000 Hz)<br />
Data (HexDump) : 0B 24 02 01 01 02 10 01 80 BB 00 .$.........
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x81 (Direction=IN EndpointID=1)<br />
bmAttributes : 0x09 (TransferType=Isochronous SyncType=Adaptive EndpointType=Data)<br />
wMaxPacketSize : 0x0062 (98 bytes)<br />
bInterval : 0x01 (1 ms)<br />
bRefresh : 0x00<br />
bSynchAddress : 0x00<br />
Data (HexDump) : 09 05 81 09 62 00 01 00 00 ....b....
</p>
<p> ----------- Audio Data Endpoint Descriptor ------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x25 (Audio Endpoint Descriptor)<br />
bDescriptorSubtype : 0x01 (General)<br />
bmAttributes : 0x00<br />
D0 : Sampling Freq : 0x00 (not supported)<br />
D1 : Pitch : 0x00 (not supported)<br />
D6..2: Reserved : 0x00<br />
D7 : MaxPacketsOnly : 0x00 (no)<br />
bLockDelayUnits : 0x01 (Milliseconds)<br />
wLockDelay : 0x0004 (4 ms)<br />
Data (HexDump) : 07 25 01 00 01 04 00 .%.....
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x02 (Interface 2)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x00 (Default Control Pipe only)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x02 (Audio Streaming)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 02 00 00 01 02 00 00 .........
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x02 (Interface 2)<br />
bAlternateSetting : 0x01<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x02 (Audio Streaming)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 02 01 01 01 02 00 00 .........
</p>
<p> -------- Audio Streaming Interface Descriptor ---------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x01 (AS_GENERAL)<br />
bTerminalLink : 0x01 (Terminal ID 1)<br />
bDelay : 0x03 (3 frames)<br />
wFormatTag : 0x0001 (PCM)<br />
Data (HexDump) : 07 24 01 01 03 01 00 .$.....
</p>
<p> ------- Audio Streaming Format Type Descriptor --------<br />
bLength : 0x0E (14 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x02 (Format Type)<br />
bFormatType : 0x01 (FORMAT_TYPE_I)<br />
bNrChannels : 0x02 (2 channels)<br />
bSubframeSize : 0x02 (2 bytes per subframe)<br />
bBitResolution : 0x10 (16 bits per sample)<br />
bSamFreqType : 0x02 (supports 2 sample frequencies)<br />
tSamFreq[1] : 0x0AC44 (44100 Hz)<br />
tSamFreq[2] : 0x0BB80 (48000 Hz)<br />
Data (HexDump) : 0E 24 02 01 02 02 10 02 44 AC 00 80 BB 00 .$......D.....
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x01 (Direction=OUT EndpointID=1)<br />
bmAttributes : 0x09 (TransferType=Isochronous SyncType=Adaptive EndpointType=Data)<br />
wMaxPacketSize : 0x00C0 (192 bytes)<br />
bInterval : 0x01 (1 ms)<br />
bRefresh : 0x00<br />
bSynchAddress : 0x00<br />
Data (HexDump) : 09 05 01 09 C0 00 01 00 00 .........
</p>
<p> ----------- Audio Data Endpoint Descriptor ------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x25 (Audio Endpoint Descriptor)<br />
bDescriptorSubtype : 0x01 (General)<br />
bmAttributes : 0x00<br />
D0 : Sampling Freq : 0x00 (not supported)<br />
D1 : Pitch : 0x00 (not supported)<br />
D6..2: Reserved : 0x00<br />
D7 : MaxPacketsOnly : 0x00 (no)<br />
bLockDelayUnits : 0x01 (Milliseconds)<br />
wLockDelay : 0x0004 (4 ms)<br />
Data (HexDump) : 07 25 01 00 01 04 00 .%.....
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x03 (Interface 3)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x00 (Default Control Pipe only)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x01 (Audio Control)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x0A (String Descriptor 10)<br />
Language 0x0409 : "SteelSeries Arctis 9 Game"<br />
Data (HexDump) : 09 04 03 00 00 01 01 00 0A .........
</p>
<p> ------ Audio Control Interface Header Descriptor ------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x01 (Header)<br />
bcdADC : 0x0100<br />
wTotalLength : 0x0028 (40 bytes)<br />
bInCollection : 0x01<br />
baInterfaceNr[1] : 0x04<br />
Data (HexDump) : 09 24 01 00 01 28 00 01 04 .$...(...
</p>
<p> ------- Audio Control Input Terminal Descriptor -------<br />
bLength : 0x0C (12 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x02 (Input Terminal)<br />
bTerminalID : 0x0B<br />
wTerminalType : 0x0101 (USB Streaming)<br />
bAssocTerminal : 0x00<br />
bNrChannels : 0x02 (2 channels)<br />
wChannelConfig : 0x0003 (L, R)<br />
iChannelNames : 0x00 (No String Descriptor)<br />
iTerminal : 0x00 (No String Descriptor)<br />
Data (HexDump) : 0C 24 02 0B 01 01 00 02 03 00 00 00 .$..........
</p>
<p> -------- Audio Control Feature Unit Descriptor --------<br />
bLength : 0x0A (10 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x06 (Feature Unit)<br />
bUnitID : 0x0C (12)<br />
bSourceID : 0x0B (11)<br />
bControlSize : 0x01 (1 byte per control)<br />
bmaControls[0] : 0x01<br />
D0: Mute : 1<br />
D1: Volume : 0<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
bmaControls[1] : 0x02<br />
D0: Mute : 0<br />
D1: Volume : 1<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
bmaControls[2] : 0x02<br />
D0: Mute : 0<br />
D1: Volume : 1<br />
D2: Bass : 0<br />
D3: Mid : 0<br />
D4: Treble : 0<br />
D5: Graphic Equalizer : 0<br />
D6: Automatic Gain : 0<br />
D7: Delay : 0<br />
iFeature : 0x00 (No String Descriptor)<br />
Data (HexDump) : 0A 24 06 0C 0B 01 01 02 02 00 .$........
</p>
<p> ------- Audio Control Output Terminal Descriptor ------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x03 (Output Terminal)<br />
bTerminalID : 0x0D<br />
wTerminalType : 0x0302 (Headphones)<br />
bAssocTerminal : 0x00 (0)<br />
bSourceID : 0x0C (12)<br />
iTerminal : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 24 03 0D 02 03 00 0C 00 .$.......
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x04 (Interface 4)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x00 (Default Control Pipe only)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x02 (Audio Streaming)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 04 00 00 01 02 00 00 .........
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x04 (Interface 4)<br />
bAlternateSetting : 0x01<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x01 (Audio)<br />
bInterfaceSubClass : 0x02 (Audio Streaming)<br />
bInterfaceProtocol : 0x00<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 04 01 01 01 02 00 00 .........
</p>
<p> -------- Audio Streaming Interface Descriptor ---------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x01 (AS_GENERAL)<br />
bTerminalLink : 0x0B (Terminal ID 11)<br />
bDelay : 0x03 (3 frames)<br />
wFormatTag : 0x0001 (PCM)<br />
Data (HexDump) : 07 24 01 0B 03 01 00 .$.....
</p>
<p> ------- Audio Streaming Format Type Descriptor --------<br />
bLength : 0x0E (14 bytes)<br />
bDescriptorType : 0x24 (Audio Interface Descriptor)<br />
bDescriptorSubtype : 0x02 (Format Type)<br />
bFormatType : 0x01 (FORMAT_TYPE_I)<br />
bNrChannels : 0x02 (2 channels)<br />
bSubframeSize : 0x02 (2 bytes per subframe)<br />
bBitResolution : 0x10 (16 bits per sample)<br />
bSamFreqType : 0x02 (supports 2 sample frequencies)<br />
tSamFreq[1] : 0x0AC44 (44100 Hz)<br />
tSamFreq[2] : 0x0BB80 (48000 Hz)<br />
Data (HexDump) : 0E 24 02 01 02 02 10 02 44 AC 00 80 BB 00 .$......D.....
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x02 (Direction=OUT EndpointID=2)<br />
bmAttributes : 0x09 (TransferType=Isochronous SyncType=Adaptive EndpointType=Data)<br />
wMaxPacketSize : 0x00C0 (192 bytes)<br />
bInterval : 0x01 (1 ms)<br />
bRefresh : 0x00<br />
bSynchAddress : 0x00<br />
Data (HexDump) : 09 05 02 09 C0 00 01 00 00 .........
</p>
<p> ----------- Audio Data Endpoint Descriptor ------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x25 (Audio Endpoint Descriptor)<br />
bDescriptorSubtype : 0x01 (General)<br />
bmAttributes : 0x00<br />
D0 : Sampling Freq : 0x00 (not supported)<br />
D1 : Pitch : 0x00 (not supported)<br />
D6..2: Reserved : 0x00<br />
D7 : MaxPacketsOnly : 0x00 (no)<br />
bLockDelayUnits : 0x01 (Milliseconds)<br />
wLockDelay : 0x0004 (4 ms)<br />
Data (HexDump) : 07 25 01 00 01 04 00 .%.....
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x05 (Interface 5)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x03 (HID - Human Interface Device)<br />
bInterfaceSubClass : 0x00 (None)<br />
bInterfaceProtocol : 0x00 (None)<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 05 00 01 03 00 00 00 .........
</p>
<p> ------------------- HID Descriptor --------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x21 (HID Descriptor)<br />
bcdHID : 0x0111 (HID Version 1.11)<br />
bCountryCode : 0x00 (00 = not localized)<br />
bNumDescriptors : 0x01<br />
Data (HexDump) : 09 21 11 01 00 01 22 1A 00 .!...."..<br />
Descriptor 1:<br />
bDescriptorType : 0x22 (Class=Report)<br />
wDescriptorLength : 0x001A (26 bytes)<br />
Error reading descriptor : ERROR_INVALID_PARAMETER (due to a obscure limitation of the Win32 USB API, see UsbTreeView.txt)
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x82 (Direction=IN EndpointID=2)<br />
bmAttributes : 0x03 (TransferType=Interrupt)<br />
wMaxPacketSize : 0x0040 (64 bytes)<br />
bInterval : 0x01 (1 ms)<br />
Data (HexDump) : 07 05 82 03 40 00 01 ....@..
</p>
<p> ----------------- Device Qualifier Descriptor -----------------<br />
Error : ERROR_GEN_FAILURE (because the device is Full-Speed only)
</p>
<p> -------------------- String Descriptors -------------------<br />
------ String Descriptor 0 ------<br />
bLength : 0x04 (4 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language ID[0] : 0x0409 (English - United States)<br />
Data (HexDump) : 04 03 09 04 ....<br />
------ String Descriptor 1 ------<br />
bLength : 0x18 (24 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "SteelSeries"<br />
Data (HexDump) : 18 03 53 00 74 00 65 00 65 00 6C 00 53 00 65 00 ..S.t.e.e.l.S.e.<br />
72 00 69 00 65 00 73 00 r.i.e.s.<br />
------ String Descriptor 2 ------<br />
bLength : 0x2A (42 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "SteelSeries Arctis 9"<br />
Data (HexDump) : 2A 03 53 00 74 00 65 00 65 00 6C 00 53 00 65 00 *.S.t.e.e.l.S.e.<br />
72 00 69 00 65 00 73 00 20 00 41 00 72 00 63 00 r.i.e.s. .A.r.c.<br />
74 00 69 00 73 00 20 00 39 00 t.i.s. .9.<br />
------ String Descriptor 3 ------<br />
bLength : 0x1A (26 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "000000000000"<br />
Data (HexDump) : 1A 03 30 00 30 00 30 00 30 00 30 00 30 00 30 00 ..0.0.0.0.0.0.0.<br />
30 00 30 00 30 00 30 00 30 00 0.0.0.0.0.<br />
------ String Descriptor 10 ------<br />
bLength : 0x34 (52 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "SteelSeries Arctis 9 Game"<br />
Data (HexDump) : 34 03 53 00 74 00 65 00 65 00 6C 00 53 00 65 00 4.S.t.e.e.l.S.e.<br />
72 00 69 00 65 00 73 00 20 00 41 00 72 00 63 00 r.i.e.s. .A.r.c.<br />
74 00 69 00 73 00 20 00 39 00 20 00 47 00 61 00 t.i.s. .9. .G.a.<br />
6D 00 65 00 m.e.<br />
------ String Descriptor 11 ------<br />
bLength : 0x34 (52 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "SteelSeries Arctis 9 Chat"<br />
Data (HexDump) : 34 03 53 00 74 00 65 00 65 00 6C 00 53 00 65 00 4.S.t.e.e.l.S.e.<br />
72 00 69 00 65 00 73 00 20 00 41 00 72 00 63 00 r.i.e.s. .A.r.c.<br />
74 00 69 00 73 00 20 00 39 00 20 00 43 00 68 00 t.i.s. .9. .C.h.<br />
61 00 74 00 a.t.
</p>
<p>*************************************************************************************************
</p>
<p>|FS-[1-7-2]: SteelSeries Arctis 9 - 2× HID
</p>
<p> =========================== USB Port2 ===========================
</p>
<p>Connection Status : 0x01 (Device is connected)<br />
Port Chain : 1-7-2
</p>
<p> ========================== Summary =========================<br />
Vendor ID : 0x1038 (SteelSeries ApS)<br />
Product ID : 0x12C2<br />
USB Version : 2.0 -> but Device is Full-Speed only<br />
Port maximum Speed : Full-Speed<br />
Device maximum Speed : Full-Speed<br />
Device Connection Speed : Full-Speed<br />
Self powered : no<br />
Demanded Current : 100 mA<br />
Used Endpoints : 4
</p>
<p> ======================== USB Device ========================
</p>
<p> +++++++++++++++++ Device Information ++++++++++++++++++<br />
Device Description : USB Composite Device<br />
Device Path : \\?\USB#VID_1038&amp;PID_12C2#7&amp;2f41ea49&amp;0&amp;2#{a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)<br />
Kernel Name : \Device\USBPDO-11<br />
Device ID : USB\VID_1038&amp;PID_12C2\7&amp;2F41EA49&amp;0&amp;2<br />
Hardware IDs : USB\VID_1038&amp;PID_12C2&amp;REV_0074 USB\VID_1038&amp;PID_12C2<br />
Driver KeyName : {36fc9e60-c465-11cf-8056-444553540000}\0020 (GUID_DEVCLASS_USB)<br />
Driver : \SystemRoot\System32\drivers\usbccgp.sys (Version: 10.0.22000.1 Date: 2021-06-05)<br />
Driver Inf : C:\WINDOWS\inf\usb.inf<br />
Legacy BusType : PNPBus<br />
Class : USB<br />
Class GUID : {36fc9e60-c465-11cf-8056-444553540000} (GUID_DEVCLASS_USB)<br />
Service : usbccgp<br />
Enumerator : USB<br />
Location Info : Port_#0002.Hub_#0006<br />
Location IDs : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(2), ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(2)<br />
Container ID : {2ce3dda4-03b3-11ed-9820-a38eb0593fba}<br />
Manufacturer Info : (Standard USB Host Controller)<br />
Capabilities : 0x84 (Removable, SurpriseRemovalOK)<br />
Status : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)<br />
Problem Code : 0<br />
Address : 2<br />
HcDisableSelectiveSuspend: 0<br />
EnableSelectiveSuspend : 0<br />
SelectiveSuspendEnabled : 0<br />
EnhancedPowerMgmtEnabled : 0<br />
IdleInWorkingState : 0<br />
WakeFromSleepState : 0<br />
Power State : D0 (supported: D0, D2, D3, wake from D0, wake from D2)<br />
Child Device 1 : SteelSeries GG Component (SteelSeries GG Component Device)<br />
Device ID : SWD\DRIVERENUM\{19F2E83E-4150-4CFE-AECD-1F4E17825139}#STEELSERIES_GG_INSTALL_COMPONENT&amp;8&amp;1D329E23&amp;0<br />
Class : SoftwareComponent<br />
Driver KeyName : {5c4c3332-344d-483c-8739-259e934c9cc8}\0009 (GUID_DEVCLASS_SOFTWARECOMPONENT)<br />
Child Device 2 : USB Input Device<br />
Device ID : USB\VID_1038&amp;PID_12C2&amp;MI_00\8&amp;1D329E23&amp;0&amp;0000<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0051 (GUID_DEVCLASS_HIDCLASS)<br />
Service : HidUsb<br />
Location : 0002.0000.0000.007.002.000.000.000.000<br />
LocationPaths : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(2)#USBMI(0) PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(2)#USB(2) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(2)#USBMI(0) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(2)#USB(2)<br />
Child Device 1 : HID-compliant vendor-defined device<br />
Device Path : \\?\HID#VID_1038&amp;PID_12C2&amp;MI_00#9&amp;221c7a2d&amp;0&amp;0000#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)<br />
Kernel Name : \Device\00000136<br />
Device ID : HID\VID_1038&amp;PID_12C2&amp;MI_00\9&amp;221C7A2D&amp;0&amp;0000<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0054 (GUID_DEVCLASS_HIDCLASS)<br />
Child Device 3 : USB Input Device<br />
Device ID : USB\VID_1038&amp;PID_12C2&amp;MI_01\8&amp;1D329E23&amp;0&amp;0001<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0052 (GUID_DEVCLASS_HIDCLASS)<br />
Service : HidUsb<br />
Location : 0002.0000.0000.007.002.000.000.000.000<br />
LocationPaths : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(2)#USBMI(1) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(2)#USBMI(1)<br />
Child Device 1 : HID-compliant consumer control device<br />
Device Path : \\?\HID#VID_1038&amp;PID_12C2&amp;MI_01#9&amp;39e00672&amp;0&amp;0000#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)<br />
Kernel Name : \Device\00000137<br />
Device ID : HID\VID_1038&amp;PID_12C2&amp;MI_01\9&amp;39E00672&amp;0&amp;0000<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0055 (GUID_DEVCLASS_HIDCLASS)<br />
Child Device 4 : USB Input Device<br />
Device ID : USB\VID_1038&amp;PID_12C2&amp;MI_02\8&amp;1D329E23&amp;0&amp;0002<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0053 (GUID_DEVCLASS_HIDCLASS)<br />
Service : HidUsb<br />
Location : 0002.0000.0000.007.002.000.000.000.000<br />
LocationPaths : PCIROOT(0)#PCI(0103)#PCI(0000)#USBROOT(0)#USB(7)#USB(2)#USBMI(2) ACPI(_SB_)#ACPI(PCI0)#ACPI(GPP2)#ACPI(PTXH)#ACPI(RHUB)#ACPI(POT7)#USB(2)#USBMI(2)<br />
Child Device 1 : HID-compliant vendor-defined device<br />
Device Path : \\?\HID#VID_1038&amp;PID_12C2&amp;MI_02#9&amp;1608c8b0&amp;0&amp;0000#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)<br />
Kernel Name : \Device\00000138<br />
Device ID : HID\VID_1038&amp;PID_12C2&amp;MI_02\9&amp;1608C8B0&amp;0&amp;0000<br />
Class : HIDClass<br />
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0056 (GUID_DEVCLASS_HIDCLASS)
</p>
<p> +++++++++++++++++ Registry USB Flags +++++++++++++++++<br />
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\103812C20074<br />
osvc : REG_BINARY 00 00
</p>
<p> ---------------- Connection Information ---------------<br />
Connection Index : 0x02 (Port 2)<br />
Connection Status : 0x01 (DeviceConnected)<br />
Current Config Value : 0x01 (Configuration 1)<br />
Device Address : 0x11 (17)<br />
Is Hub : 0x00 (no)<br />
Device Bus Speed : 0x01 (Full-Speed)<br />
Number Of Open Pipes : 0x03 (3 pipes to data endpoints)<br />
Pipe[0] : EndpointID=1 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=64 bInterval=1<br />
Pipe[1] : EndpointID=2 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=4 bInterval=1<br />
Pipe[2] : EndpointID=3 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=32 bInterval=1<br />
Data (HexDump) : 02 00 00 00 12 01 00 02 00 00 00 40 38 10 C2 12 ...........@8...<br />
74 00 01 02 00 01 01 01 00 11 00 03 00 00 00 01 t...............<br />
00 00 00 07 05 81 03 40 00 01 00 00 00 00 07 05 .......@........<br />
82 03 04 00 01 00 00 00 00 07 05 83 03 20 00 01 ............. ..<br />
00 00 00 00 ....
</p>
<p> --------------- Connection Information V2 -------------<br />
Connection Index : 0x02 (2)<br />
Length : 0x10 (16 bytes)<br />
SupportedUsbProtocols : 0x01<br />
Usb110 : 1 (yes, port supports USB 1.1)<br />
Usb200 : 0 (no, port not supports USB 2.0)<br />
Usb300 : 0 (no, port not supports USB 3.0)<br />
ReservedMBZ : 0x00<br />
Flags : 0x00<br />
DevIsOpAtSsOrHigher : 0 (Device is not operating at SuperSpeed or higher)<br />
DevIsSsCapOrHigher : 0 (Device is not SuperSpeed capable or higher)<br />
DevIsOpAtSsPlusOrHigher : 0 (Device is not operating at SuperSpeedPlus or higher)<br />
DevIsSsPlusCapOrHigher : 0 (Device is not SuperSpeedPlus capable or higher)<br />
ReservedMBZ : 0x00<br />
Data (HexDump) : 02 00 00 00 10 00 00 00 01 00 00 00 00 00 00 00 ................
</p>
<p> ---------------------- Device Descriptor ----------------------<br />
bLength : 0x12 (18 bytes)<br />
bDescriptorType : 0x01 (Device Descriptor)<br />
bcdUSB : 0x200 (USB Version 2.0) -> but device is Full-Speed only<br />
bDeviceClass : 0x00 (defined by the interface descriptors)<br />
bDeviceSubClass : 0x00<br />
bDeviceProtocol : 0x00<br />
bMaxPacketSize0 : 0x40 (64 bytes)<br />
idVendor : 0x1038 (SteelSeries ApS)<br />
idProduct : 0x12C2<br />
bcdDevice : 0x0074<br />
iManufacturer : 0x01 (String Descriptor 1)<br />
Language 0x0409 : "SteelSeries"<br />
iProduct : 0x02 (String Descriptor 2)<br />
Language 0x0409 : "SteelSeries Arctis 9"<br />
iSerialNumber : 0x00 (No String Descriptor)<br />
bNumConfigurations : 0x01 (1 Configuration)<br />
Data (HexDump) : 12 01 00 02 00 00 00 40 38 10 C2 12 74 00 01 02 .......@8...t...<br />
00 01 ..
</p>
<p> ------------------ Configuration Descriptor -------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x02 (Configuration Descriptor)<br />
wTotalLength : 0x0054 (84 bytes)<br />
bNumInterfaces : 0x03 (3 Interfaces)<br />
bConfigurationValue : 0x01 (Configuration 1)<br />
iConfiguration : 0x00 (No String Descriptor)<br />
bmAttributes : 0x80<br />
D7: Reserved, set 1 : 0x01<br />
D6: Self Powered : 0x00 (no)<br />
D5: Remote Wakeup : 0x00 (no)<br />
D4..0: Reserved, set 0 : 0x00<br />
MaxPower : 0x32 (100 mA)<br />
Data (HexDump) : 09 02 54 00 03 01 00 80 32 09 04 00 00 01 03 00 ..T.....2.......<br />
00 00 09 21 11 01 00 01 22 25 00 07 05 81 03 40 ...!...."%.....@<br />
00 01 09 04 01 00 01 03 00 00 00 09 21 11 01 00 ............!...<br />
01 22 19 00 07 05 82 03 04 00 01 09 04 02 00 01 ."..............<br />
03 00 00 00 09 21 11 01 00 01 22 1E 00 07 05 83 .....!....".....<br />
03 20 00 01 . ..
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x00 (Interface 0)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x03 (HID - Human Interface Device)<br />
bInterfaceSubClass : 0x00 (None)<br />
bInterfaceProtocol : 0x00 (None)<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 00 00 01 03 00 00 00 .........
</p>
<p> ------------------- HID Descriptor --------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x21 (HID Descriptor)<br />
bcdHID : 0x0111 (HID Version 1.11)<br />
bCountryCode : 0x00 (00 = not localized)<br />
bNumDescriptors : 0x01<br />
Data (HexDump) : 09 21 11 01 00 01 22 25 00 .!...."%.<br />
Descriptor 1:<br />
bDescriptorType : 0x22 (Class=Report)<br />
wDescriptorLength : 0x0025 (37 bytes)<br />
Error reading descriptor : ERROR_INVALID_PARAMETER (due to a obscure limitation of the Win32 USB API, see UsbTreeView.txt)
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x81 (Direction=IN EndpointID=1)<br />
bmAttributes : 0x03 (TransferType=Interrupt)<br />
wMaxPacketSize : 0x0040 (64 bytes)<br />
bInterval : 0x01 (1 ms)<br />
Data (HexDump) : 07 05 81 03 40 00 01 ....@..
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x01 (Interface 1)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x03 (HID - Human Interface Device)<br />
bInterfaceSubClass : 0x00 (None)<br />
bInterfaceProtocol : 0x00 (None)<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 01 00 01 03 00 00 00 .........
</p>
<p> ------------------- HID Descriptor --------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x21 (HID Descriptor)<br />
bcdHID : 0x0111 (HID Version 1.11)<br />
bCountryCode : 0x00 (00 = not localized)<br />
bNumDescriptors : 0x01<br />
Data (HexDump) : 09 21 11 01 00 01 22 19 00 .!...."..<br />
Descriptor 1:<br />
bDescriptorType : 0x22 (Class=Report)<br />
wDescriptorLength : 0x0019 (25 bytes)<br />
Error reading descriptor : ERROR_INVALID_PARAMETER (due to a obscure limitation of the Win32 USB API, see UsbTreeView.txt)
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x82 (Direction=IN EndpointID=2)<br />
bmAttributes : 0x03 (TransferType=Interrupt)<br />
wMaxPacketSize : 0x0004 (4 bytes)<br />
bInterval : 0x01 (1 ms)<br />
Data (HexDump) : 07 05 82 03 04 00 01 .......
</p>
<p> ---------------- Interface Descriptor -----------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x04 (Interface Descriptor)<br />
bInterfaceNumber : 0x02 (Interface 2)<br />
bAlternateSetting : 0x00<br />
bNumEndpoints : 0x01 (1 Endpoint)<br />
bInterfaceClass : 0x03 (HID - Human Interface Device)<br />
bInterfaceSubClass : 0x00 (None)<br />
bInterfaceProtocol : 0x00 (None)<br />
iInterface : 0x00 (No String Descriptor)<br />
Data (HexDump) : 09 04 02 00 01 03 00 00 00 .........
</p>
<p> ------------------- HID Descriptor --------------------<br />
bLength : 0x09 (9 bytes)<br />
bDescriptorType : 0x21 (HID Descriptor)<br />
bcdHID : 0x0111 (HID Version 1.11)<br />
bCountryCode : 0x00 (00 = not localized)<br />
bNumDescriptors : 0x01<br />
Data (HexDump) : 09 21 11 01 00 01 22 1E 00 .!...."..<br />
Descriptor 1:<br />
bDescriptorType : 0x22 (Class=Report)<br />
wDescriptorLength : 0x001E (30 bytes)<br />
Error reading descriptor : ERROR_INVALID_PARAMETER (due to a obscure limitation of the Win32 USB API, see UsbTreeView.txt)
</p>
<p> ----------------- Endpoint Descriptor -----------------<br />
bLength : 0x07 (7 bytes)<br />
bDescriptorType : 0x05 (Endpoint Descriptor)<br />
bEndpointAddress : 0x83 (Direction=IN EndpointID=3)<br />
bmAttributes : 0x03 (TransferType=Interrupt)<br />
wMaxPacketSize : 0x0020 (32 bytes)<br />
bInterval : 0x01 (1 ms)<br />
Data (HexDump) : 07 05 83 03 20 00 01 .... ..
</p>
<p> ----------------- Device Qualifier Descriptor -----------------<br />
Error : ERROR_GEN_FAILURE (because the device is Full-Speed only)
</p>
<p> -------------------- String Descriptors -------------------<br />
------ String Descriptor 0 ------<br />
bLength : 0x04 (4 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language ID[0] : 0x0409 (English - United States)<br />
Data (HexDump) : 04 03 09 04 ....<br />
------ String Descriptor 1 ------<br />
bLength : 0x18 (24 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "SteelSeries"<br />
Data (HexDump) : 18 03 53 00 74 00 65 00 65 00 6C 00 53 00 65 00 ..S.t.e.e.l.S.e.<br />
72 00 69 00 65 00 73 00 r.i.e.s.<br />
------ String Descriptor 2 ------<br />
bLength : 0x2A (42 bytes)<br />
bDescriptorType : 0x03 (String Descriptor)<br />
Language 0x0409 : "SteelSeries Arctis 9"<br />
Data (HexDump) : 2A 03 53 00 74 00 65 00 65 00 6C 00 53 00 65 00 *.S.t.e.e.l.S.e.<br />
72 00 69 00 65 00 73 00 20 00 41 00 72 00 63 00 r.i.e.s. .A.r.c.<br />
74 00 69 00 73 00 20 00 39 00 t.i.s. .9.
</p>

#16

OK thanks, yes it shows the headset has a very high sample rate for the microphone (48khz) and is sending raw data every 1ms . Im pretty sure this is the problem because the slightest jitter in the network will cause it to missample. The USB protocol cannot buffer data to work around this so via virtualhere its not going to be able to be clear for the microphone unfortunately.

#17

I was investigating this microphone issue further over the last few days, and i made some changes.

Could you try this beta build of the VirtualHere client to see if it improves the audio and microphone (exit the existing VirtualHere client first if it currently running)

https://www.virtualhere.com/sites/default/files/usbclient/test/vhui64.e…

Can you let me know if it helps or does not help the audio/mic issue.

Thanks!

#18

I forgot to say before, thanks for the replies, totally makes sense!

Huge extra thanks for looking into it further. I'll try the beta client over the weekend.

#19

I again had a little trouble getting it to connect. Once I did, I'd say the microphone was slightly improved, but still not usable, enough jitter that entire words were dropped when I tried recording.

Also, I did go get a Bluetooth dongle, and that works much more stably, including through my original Android version of VirtualHere on the Shield. I'm not sure how often I'll end up using it that way (as I was hoping to connect the headset to another device with Bluetooth) but glad to know it's there as an option.

#20

OK thanks for trying it, i guess you need to stick with the bluetooth passthrough.