[New Device] ORIOS RGB Gaming Mousepad, black
Name of device:
ORIOS RGB Gaming Mousepad, black
Link to manufacturer's product page:
https://www.speedlink.com/en/ORIOS-RGB-Gaming-Mousepad-black/SL-620100-BK
Please select what type of device/interface the device uses:
ID information:
fidor@Fidor-pc:~$ sudo lsusb -v -s 001:004
Bus 001 Device 004: ID 0c45:763d Microdia
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0c45 Microdia
idProduct 0x763d
bcdDevice 1.02
iManufacturer 1 SONiX
iProduct 2 USB DEVICE
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0042
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 79
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 112
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable
Device Status: 0x0000
(Bus Powered)
Please attach screenshots of the device's official control application here:
Please attach device captures here:
orios.pcapng Please note that the pcaps seems to contain unnecessary data in each frame. Since the software is buggy (crashes) this might be just a bug.
Notes
The devices has built in HW RGB modes that are switched via touch button. Those modes cannot be triggered from the software. The software itself puts the mouse pad in "Dumb mode" and programs each lead independently. Each frame send to to /dev/hidrawX device consists 64B of data:
0x04, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
First byte 0x04 is hardcoded. Second and third is a checksum. Fourth and fifth is a mode:
- 0x01 0x00 (begin dumb mode)
- 0x02 0x00 (end dumb mode)
- 0x12 0x21 (config frame) From 12th byte each 3 bytes tuple corresponds to each led on mouse pad. There are 10 leds in total. Color order is RGB
Update frames must be sent at least every one second. Otherwise the mouse pad will reset itself to last HW RGB mode.
The following code in python lights up/down each led (blue color) on mousepad: mousepad_openrgb.py
Above code is heavily based on Ajazz keyboard which is also Sonix based: https://github.com/thanks4opensource/NotLinuxAjazzAK33RGB
Checklist for Step2
-
Name of device -
A link to the vendors product page has been included -
The transport bus has been identified and the appropriate label added to the issue. -
The device ID's have been included for USB or PCI -
Screenshots of the OEM Application are included -
There is either, appropriate code examples linked or suitable device captures attached
