Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Asus ROG Strix Impact 3 #3379

Open
HugoMSFT opened this issue Nov 15, 2024 · 3 comments
Open

Support for Asus ROG Strix Impact 3 #3379

HugoMSFT opened this issue Nov 15, 2024 · 3 comments
Labels
help wanted Extra attention is needed

Comments

@HugoMSFT
Copy link

Mouse / peripheral model and version

Asus ROG Strix Impact 3

Armoury Crate Screenshots

Please add support for Asus ROG Strix Impact 3, currently it is showing as ROG Harpe Ace Aim Lab Edition (OMNI) (Not Connected)

USB Details

=========================== USB Port1 ===========================

Connection Status : 0x01 (Device is connected)
Port Chain : 2-1
Properties : 0x01
IsUserConnectable : yes
PortIsDebugCapable : no
PortHasMultiCompanions : no
PortConnectorIsTypeC : no
ConnectionIndex : 0x01 (Port 1)
CompanionIndex : 0
CompanionHubSymLnk : USB#ROOT_HUB30#5&34c0e95c&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
CompanionPortNumber : 0x06 (Port 6)
-> CompanionPortChain : 2-6

  ========================== Summary =========================

Vendor ID : 0x0B05 (ASUSTek Computer Inc.)
Product ID : 0x1ACE
Manufacturer String : ASUSTeK
Product String : ROG OMNI RECEIVER
Serial : RCMPGDD028LY
USB Version : 2.0 -> but Device is Full-Speed only
Port maximum Speed : High-Speed (Companion Port 2-6 is doing the SuperSpeed)
Device maximum Speed : Full-Speed
Device Connection Speed : Full-Speed
Self powered : yes
Demanded Current : 500 mA
Used Endpoints : 6

  ======================== USB Device ========================

    +++++++++++++++++ Device Information ++++++++++++++++++

Device Description : USB Composite Device
Device Path : \?\USB#VID_0B05&PID_1ACE#RCMPGDD028LY#{a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)
Kernel Name : \Device\USBPDO-3
Device ID : USB\VID_0B05&PID_1ACE\RCMPGDD028LY
Hardware IDs : USB\VID_0B05&PID_1ACE&REV_0623 USB\VID_0B05&PID_1ACE
Driver KeyName : {36fc9e60-c465-11cf-8056-444553540000}\0027 (GUID_DEVCLASS_USB)
Driver : \SystemRoot\System32\drivers\usbccgp.sys (Version: 10.0.26100.1882 Date: 2024-10-20 Company: Microsoft Corporation)
Driver Inf : C:\WINDOWS\inf\usb.inf
Legacy BusType : PNPBus
Class : USB
Class GUID : {36fc9e60-c465-11cf-8056-444553540000} (GUID_DEVCLASS_USB)
Service : usbccgp
Enumerator : USB
Location Info : Port_#0001.Hub_#0001
Address : 1
Location IDs : PCIROOT(0)#PCI(0801)#PCI(0003)#USBROOT(0)#USB(1), ACPI(SB)#ACPI(PCI0)#ACPI(GP17)#ACPI(XHC0)#ACPI(RHUB)#ACPI(PRT1)
Container ID : {f8a10b65-921c-5938-8dd9-4b27578dd087}
Manufacturer Info : (Standard USB Host Controller)
Capabilities : 0x94 (Removable, UniqueID, SurpriseRemovalOK)
Status : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)
Problem Code : 0
Address : 1
EnhancedPowerMgmtEnabled : 0
Power State : D0 (supported: D0, D1, D2, D3, wake from D0, wake from D1, wake from D2)

    +++++++++++++++++ Registry USB Flags +++++++++++++++++

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\0B051ACE0623
osvc : REG_BINARY 00 00
NewInterfaceUsage : REG_DWORD 00000000 (0)

    ---------------- Connection Information ---------------

Connection Index : 0x01 (Port 1)
Connection Status : 0x01 (DeviceConnected)
Current Config Value : 0x01 (Configuration 1)
Device Address : 0x01 (1)
Is Hub : 0x00 (no)
Device Bus Speed : 0x01 (Full-Speed)
Number of open Pipes : 0x05 (5 pipes to data endpoints)
Pipe[0] : EndpointID=1 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=0x40 bInterval=1 -> 718 Bits/ms = 89750 Bytes/s
Pipe[1] : EndpointID=2 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=0x40 bInterval=1 -> 718 Bits/ms = 89750 Bytes/s
Pipe[2] : EndpointID=3 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=0x40 bInterval=1 -> 718 Bits/ms = 89750 Bytes/s
Pipe[3] : EndpointID=3 Direction=OUT ScheduleOffset=0 Type=Interrupt wMaxPacketSize=0x40 bInterval=1 -> 718 Bits/ms = 89750 Bytes/s
Pipe[4] : EndpointID=4 Direction=IN ScheduleOffset=0 Type=Interrupt wMaxPacketSize=0x40 bInterval=1 -> 718 Bits/ms = 89750 Bytes/s
Data (HexDump) : 01 00 00 00 12 01 00 02 00 00 00 40 05 0B CE 1A ...........@....
23 06 01 02 03 01 01 01 00 01 00 05 00 00 00 01 #...............
00 00 00 07 05 81 03 40 00 01 00 00 00 00 07 05 .......@........
82 03 40 00 01 00 00 00 00 07 05 83 03 40 00 01 ..@..........@..
00 00 00 00 07 05 03 03 40 00 01 00 00 00 00 07 ........@.......
05 84 03 40 00 01 00 00 00 00 ...@......

    --------------- Connection Information V2 -------------

Connection Index : 0x01 (1)
Length : 0x10 (16 bytes)
SupportedUsbProtocols : 0x03
Usb110 : 1 (yes, port supports USB 1.1)
Usb200 : 1 (yes, port supports USB 2.0)
Usb300 : 0 (no, port not supports USB 3.0) -> but Companion Port 2-6 does
ReservedMBZ : 0x00
Flags : 0x00
DevIsOpAtSsOrHigher : 0 (Device is not operating at SuperSpeed or higher)
DevIsSsCapOrHigher : 0 (Device is not SuperSpeed capable or higher)
DevIsOpAtSsPlusOrHigher : 0 (Device is not operating at SuperSpeedPlus or higher)
DevIsSsPlusCapOrHigher : 0 (Device is not SuperSpeedPlus capable or higher)
ReservedMBZ : 0x00
Data (HexDump) : 01 00 00 00 10 00 00 00 03 00 00 00 00 00 00 00 ................

---------------------- Device Descriptor ----------------------

bLength : 0x12 (18 bytes)
bDescriptorType : 0x01 (Device Descriptor)
bcdUSB : 0x200 (USB Version 2.0) -> but device is Full-Speed only
bDeviceClass : 0x00 (defined by the interface descriptors)
bDeviceSubClass : 0x00
bDeviceProtocol : 0x00
bMaxPacketSize0 : 0x40 (64 bytes)
idVendor : 0x0B05 (ASUSTek Computer Inc.)
idProduct : 0x1ACE
bcdDevice : 0x0623
iManufacturer : 0x01 (String Descriptor 1)
Language 0x0409 : "ASUSTeK"
iProduct : 0x02 (String Descriptor 2)
Language 0x0409 : "ROG OMNI RECEIVER"
iSerialNumber : 0x03 (String Descriptor 3)
Language 0x0409 : "RCMPGDD028LY"
bNumConfigurations : 0x01 (1 Configuration)
Data (HexDump) : 12 01 00 02 00 00 00 40 05 0B CE 1A 23 06 01 02 .......@....#...
03 01 ..

------------------ Configuration Descriptor -------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x02 (Configuration Descriptor)
wTotalLength : 0x0074 (116 bytes)
bNumInterfaces : 0x04 (4 Interfaces)
bConfigurationValue : 0x01 (Configuration 1)
iConfiguration : 0x04 (String Descriptor 4)
Language 0x0409 : "Default configuration"
bmAttributes : 0xE0
D7: Reserved, set 1 : 0x01
D6: Self Powered : 0x01 (yes)
D5: Remote Wakeup : 0x01 (yes)
D4..0: Reserved, set 0 : 0x00
MaxPower : 0xFA (500 mA)
Data (HexDump) : 09 02 74 00 04 01 04 E0 FA 09 04 00 00 01 03 00 ..t.............
01 00 09 21 11 01 00 01 22 5F 00 07 05 81 03 40 ...!...."_.....@
00 01 09 04 01 00 01 03 01 02 00 09 21 11 01 00 ............!...
01 22 52 00 07 05 82 03 40 00 01 09 04 02 00 02 ."R.....@.......
03 00 00 00 09 21 11 01 00 01 22 6C 00 07 05 83 .....!...."l....
03 40 00 01 07 05 03 03 40 00 01 09 04 03 00 01 .@......@.......
03 00 00 00 09 21 11 01 00 01 22 B2 00 07 05 84 .....!....".....
03 40 00 01 .@..

    ---------------- Interface Descriptor -----------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x00 (Interface 0)
bAlternateSetting : 0x00
bNumEndpoints : 0x01 (1 Endpoint)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x00 (None)
bInterfaceProtocol : 0x01 (Keyboard)
iInterface : 0x00 (No String Descriptor)
Data (HexDump) : 09 04 00 00 01 03 00 01 00 .........

    ------------------- HID Descriptor --------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0111 (HID Version 1.11)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Data (HexDump) : 09 21 11 01 00 01 22 5F 00 .!...."_.
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x005F (95 bytes)
Error reading descriptor : ERROR_GEN_FAILURE (due to a obscure limitation of the Win32 USB API, see F1 Help)

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x81 (Direction=IN EndpointID=1)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0040 (64 bytes)
bInterval : 0x01 (1 ms)
Data (HexDump) : 07 05 81 03 40 00 01 ....@..

    ---------------- Interface Descriptor -----------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x01 (Interface 1)
bAlternateSetting : 0x00
bNumEndpoints : 0x01 (1 Endpoint)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x01 (Boot Interface)
bInterfaceProtocol : 0x02 (Mouse)
iInterface : 0x00 (No String Descriptor)
Data (HexDump) : 09 04 01 00 01 03 01 02 00 .........

    ------------------- HID Descriptor --------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0111 (HID Version 1.11)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Data (HexDump) : 09 21 11 01 00 01 22 52 00 .!...."R.
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x0052 (82 bytes)
Error reading descriptor : ERROR_GEN_FAILURE (due to a obscure limitation of the Win32 USB API, see F1 Help)

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x82 (Direction=IN EndpointID=2)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0040 (64 bytes)
bInterval : 0x01 (1 ms)
Data (HexDump) : 07 05 82 03 40 00 01 ....@..

    ---------------- Interface Descriptor -----------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x02 (Interface 2)
bAlternateSetting : 0x00
bNumEndpoints : 0x02 (2 Endpoints)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x00 (None)
bInterfaceProtocol : 0x00 (None)
iInterface : 0x00 (No String Descriptor)
Data (HexDump) : 09 04 02 00 02 03 00 00 00 .........

    ------------------- HID Descriptor --------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0111 (HID Version 1.11)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Data (HexDump) : 09 21 11 01 00 01 22 6C 00 .!...."l.
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x006C (108 bytes)
Error reading descriptor : ERROR_GEN_FAILURE (due to a obscure limitation of the Win32 USB API, see F1 Help)

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x83 (Direction=IN EndpointID=3)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0040 (64 bytes)
bInterval : 0x01 (1 ms)
Data (HexDump) : 07 05 83 03 40 00 01 ....@..

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x03 (Direction=OUT EndpointID=3)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0040 (64 bytes)
bInterval : 0x01 (1 ms)
Data (HexDump) : 07 05 03 03 40 00 01 ....@..

    ---------------- Interface Descriptor -----------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x03 (Interface 3)
bAlternateSetting : 0x00
bNumEndpoints : 0x01 (1 Endpoint)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x00 (None)
bInterfaceProtocol : 0x00 (None)
iInterface : 0x00 (No String Descriptor)
Data (HexDump) : 09 04 03 00 01 03 00 00 00 .........

    ------------------- HID Descriptor --------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0111 (HID Version 1.11)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Data (HexDump) : 09 21 11 01 00 01 22 B2 00 .!...."..
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x00B2 (178 bytes)
Error reading descriptor : ERROR_GEN_FAILURE (due to a obscure limitation of the Win32 USB API, see F1 Help)

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x84 (Direction=IN EndpointID=4)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0040 (64 bytes)
bInterval : 0x01 (1 ms)
Data (HexDump) : 07 05 84 03 40 00 01 ....@..

----------------- Device Qualifier Descriptor -----------------

Error : ERROR_GEN_FAILURE (because the device is Full-Speed only)

  -------------------- String Descriptors -------------------
         ------ String Descriptor 0 ------

bLength : 0x04 (4 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language ID[0] : 0x0409 (English - United States)
Data (HexDump) : 04 03 09 04 ....
------ String Descriptor 1 ------
bLength : 0x10 (16 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "ASUSTeK"
Data (HexDump) : 10 03 41 00 53 00 55 00 53 00 54 00 65 00 4B 00 ..A.S.U.S.T.e.K.
------ String Descriptor 2 ------
bLength : 0x24 (36 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "ROG OMNI RECEIVER"
Data (HexDump) : 24 03 52 00 4F 00 47 00 20 00 4F 00 4D 00 4E 00 $.R.O.G. .O.M.N.
49 00 20 00 52 00 45 00 43 00 45 00 49 00 56 00 I. .R.E.C.E.I.V.
45 00 52 00 E.R.
------ String Descriptor 3 ------
bLength : 0x1A (26 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "RCMPGDD028LY"
Data (HexDump) : 1A 03 52 00 43 00 4D 00 50 00 47 00 44 00 44 00 ..R.C.M.P.G.D.D.
30 00 32 00 38 00 4C 00 59 00 0.2.8.L.Y.
------ String Descriptor 4 ------
bLength : 0x2C (44 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "Default configuration"
Data (HexDump) : 2C 03 44 00 65 00 66 00 61 00 75 00 6C 00 74 00 ,.D.e.f.a.u.l.t.
20 00 63 00 6F 00 6E 00 66 00 69 00 67 00 75 00 .c.o.n.f.i.g.u.
72 00 61 00 74 00 69 00 6F 00 6E 00 r.a.t.i.o.n.

Additional information.

image

@seerge seerge added the help wanted Extra attention is needed label Nov 15, 2024
@seerge
Copy link
Owner

seerge commented Nov 15, 2024

@HugoMSFT hello, that should be possible to do, but I need to get my hans on actual mouse.

Cause currently G-Helper detects mice by USB device id. And in case of Omni Receiver - all devices connected via it have same ID (receiver’s)

@HugoMSFT
Copy link
Author

@seerge I just noticed that it must use the same APIs, after rebooting the computer it allows me to configure it normally, but it thinks it is the Harpe, so I guess it is all good.

@IceStormNG
Copy link
Contributor

I just noticed that it must use the same APIs, after rebooting the computer it allows me to configure it normally, but it thinks it is the Harpe, so I guess it is all good.

The Harpe Ace was the "first" mouse to use the Omni Receiver and back then it was the only mouse, so it was implemented that way. Asus apparently moved over to add more devices to use the same receiver. Great for them, a pain for us, because I need a few Omni Mice here to find out how to differentiate them.

And all the Omni mice are quite expensive...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants