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 Razer Orochi V2 #1553

Closed
lrprawira opened this issue Jul 8, 2021 · 16 comments · Fixed by #1555
Closed

Support for Razer Orochi V2 #1553

lrprawira opened this issue Jul 8, 2021 · 16 comments · Fixed by #1555

Comments

@lrprawira
Copy link

Device Info

  • Name: Orochi v2
    Razer Synapse shows this as Razer Orochi v2 White Edition
  • Product Number: RZ01-03730400
  • Model Number: RZ01-0373

Device Information

Please post the output of
lsusb -d 1532: -v

Bus 001 Device 012: ID 1532:0094 Razer USA, Ltd Orochi V2
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x1532 Razer USA, Ltd
  idProduct          0x0094 
  bcdDevice            1.00
  iManufacturer           1 Razer
  iProduct                2 Orochi V2
  iSerial                 3 000000000000
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0086
    bNumInterfaces          5
    bConfigurationValue     1
    iConfiguration          4 
    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      2 Mouse
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      94
         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     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      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     314
         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
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      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      61
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 
      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     325
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 
      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     348
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1  

Please post the output of
ls -lah /dev/input/by-id/

lrwxrwxrwx    10 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-event-if01 -> ../event24
lrwxrwxrwx    10 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-event-if03 -> ../event26
lrwxrwxrwx    10 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-event-mouse -> ../event21
lrwxrwxrwx    10 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-if01-event-kbd -> ../event22
lrwxrwxrwx    10 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-if01-event-mouse -> ../event23
lrwxrwxrwx     9 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-if01-mouse -> ../mouse5
lrwxrwxrwx    10 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-if02-event-kbd -> ../event25
lrwxrwxrwx     9 root  8 Jul 17:51  usb-Razer_Orochi_V2_000000000000-mouse -> ../mouse4

Packet Captures

I am unsure about how I should do it on a non-RGB mouse, but here is a gdrive folder with pcapng for each click. Let me know if anything is missing.
https://drive.google.com/drive/folders/1Wyp4oh7uGKeWJxqleWIrSJSlTdyD7NYX?usp=sharing

Synapse Screenshots

Screenshot_win10_2021-07-08_18:47:45
Screenshot_win10_2021-07-08_19:18:44
Screenshot_win10_2021-07-08_19:19:30
Screenshot_win10_2021-07-08_19:19:44

@z3ntu z3ntu changed the title Support for Razer Orochi v2 Support for Razer Orochi V2 Jul 11, 2021
@z3ntu
Copy link
Member

z3ntu commented Jul 11, 2021

@ccxex29 As this device is fairly trivial, I've implemented support for it in #1555, please test!

Also according to the product page you can connect this device via both the USB dongle and via Bluetooth. I'm guessing you had it connected via the dongle, so please also provide the lsusb output when connected via Bluetooth.

Regarding the "White edition" variant, there is some indication in the pcaps what logic Synapse is using for that but so far we don't have any support for device variants (basically just a name change) in openrazer so it'll just show up as Orochi V2 which should be good enough.

@lrprawira
Copy link
Author

lrprawira commented Jul 12, 2021

@z3ntu I'm not really familiar with razer peripherals but, when checked with evhz, the average polling rate is always 500Hz with some spikes to 1000Hz on every option, 125Hz, 500Hz and 1000Hz (probably the behaviour without proper driver?). E: That's how 1000Hz polling rate behaves in this mouse even with the driver.

I used razercommander gui to test this mouse, but it seems that the device can only be detected. When I applied both the polling rate and dpi, nothing changes.

2021-07-12-192134_1643x945_scrot

This is the error right after applying the polling rate settings from dmesg:

[12764.877099] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 02 Reserved: 00 Command: 81 Params: 00000000000000000000000000000000 .
[12899.209678] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 02 Reserved: 00 Command: 81 Params: 00000000000000000000000000000000 .
[12899.414839] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 85 Params: 00000000000000000000000000000000 .
[12903.495305] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01006400640000000000000000000000 .
[12903.528178] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 01000000000000000000000000000000 .
[12904.361771] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01006400640000000000000000000000 .
[12904.394413] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 01000000000000000000000000000000 .
[12904.657560] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01006400640000000000000000000000 .
[12904.690058] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 01000000000000000000000000000000 .
[12904.842432] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01006400640000000000000000000000 .
[12904.875000] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 01000000000000000000000000000000 .
[12916.709887] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01006400640000000000000000000000 .
[12916.742694] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 02000000000000000000000000000000 .
[12929.367150] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01006400640000000000000000000000 .
[12929.399702] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 08000000000000000000000000000000 .

About the bluetooth mode, inside /sys/devices/virtual/misc/uhid/ the mouse is shown as 0005:1532:0095.0018. Let me know what other informations do I need to gather.

I also got this from dmesg whilst in bluetooth mode which might be useful:

[ 6818.110674] hid-generic 0005:1532:0095.001C: input,hidraw1: BLUETOOTH HID v0.01 Mouse [Orochi V2] on 18:56:80:29:62:64
[ 6818.140984] elogind-daemon[1378]: Watching system buttons on /dev/input/event9 (Orochi V2 Consumer Control)
[ 6818.147656] elogind-daemon[1378]: Watching system buttons on /dev/input/event11 (Orochi V2 System Control)
[ 6818.147732] elogind-daemon[1378]: Watching system buttons on /dev/input/event23 (Orochi V2 Keyboard)
[ 7463.581348] input: Orochi V2 Mouse as /devices/virtual/misc/uhid/0005:1532:0095.001D/input/input88
[ 7463.581437] input: Orochi V2 Consumer Control as /devices/virtual/misc/uhid/0005:1532:0095.001D/input/input89
[ 7463.581474] input: Orochi V2 System Control as /devices/virtual/misc/uhid/0005:1532:0095.001D/input/input90
[ 7463.581501] input: Orochi V2 as /devices/virtual/misc/uhid/0005:1532:0095.001D/input/input91
[ 7463.581571] input: Orochi V2 Keyboard as /devices/virtual/misc/uhid/0005:1532:0095.001D/input/input92

@notsukamto
Copy link

Any update on this?

@z3ntu
Copy link
Member

z3ntu commented Aug 1, 2021

@notsukamto Please test #1555

@luiszimmermann
Copy link

@notsukamto Please test #1555

Hello @z3ntu , I tried your branch and the mouse is now detected but the changes in openrazer (using razergenie) dont get applied.

@whitewillow
Copy link

whitewillow commented Oct 5, 2021

Same for me - @z3ntu - I also testet using Polychromatic - and changes where not saved to the mouse.
The poll rate is saved, but not sleep mode

@z3ntu
Copy link
Member

z3ntu commented Oct 6, 2021

Does the serial number get displayed properly? Try cat /sys/bus/hid/drivers/razermouse/0*/device_serial

@luiszimmermann
Copy link

Does the serial number get displayed properly? Try cat /sys/bus/hid/drivers/razermouse/0*/device_serial

The device_serial is empty

@whitewillow
Copy link

whitewillow commented Oct 7, 2021

cat /sys/bus/hid/drivers/razermouse/0*/device_serial

Same for me - also empty

@z3ntu
Copy link
Member

z3ntu commented Oct 9, 2021

Any error in dmesg from razermouse? I don't see anything obviously wrong in the patch so not sure what's wrong right now..

@luiszimmermann
Copy link

Any error in dmesg from razermouse? I don't see anything obviously wrong in the patch so not sure what's wrong right now..

Is this Command timed out an error?

❯ dmesg | grep razer
[   19.285485] razermouse 0003:1532:0094.0008: input,hidraw7: USB HID v1.11 Mouse [Razer Orochi V2] on usb-0000:00:14.0-3.3/input0
[   19.729148] razermouse 0003:1532:0094.000A: input,hidraw9: USB HID v1.11 Keyboard [Razer Orochi V2] on usb-0000:00:14.0-3.3/input2
[   19.729368] razermouse 0003:1532:0094.000B: hiddev3,hidraw10: USB HID v1.11 Device [Razer Orochi V2] on usb-0000:00:14.0-3.3/input4
[   19.929225] razermouse 0003:1532:0094.0009: input,hidraw8: USB HID v1.11 Keyboard [Razer Orochi V2] on usb-0000:00:14.0-3.3/input1
[   19.989041] razermouse 0003:1532:0094.000C: input,hiddev4,hidraw11: USB HID v1.11 Device [Razer Orochi V2] on usb-0000:00:14.0-3.3/input3
[27557.425903] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 16 Reserved: 00 Command: 82 Params: 00000000000000000000000000000000 .
[27557.927141] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 16 Reserved: 00 Command: 82 Params: 00000000000000000000000000000000 .
[27558.428351] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 16 Reserved: 00 Command: 82 Params: 00000000000000000000000000000000 .
[27558.929872] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 16 Reserved: 00 Command: 82 Params: 00000000000000000000000000000000 .
[27559.431356] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 16 Reserved: 00 Command: 82 Params: 00000000000000000000000000000000 .
[27559.933981] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 07 Reserved: 04 Command: 05 Params: 01070807080000000000000000000000 .
[27560.335263] razermouse: Command timed out. Start Marker: 04 id: ff Num Params: 01 Reserved: 00 Command: 05 Params: 02000000000000000000000000000000 .

@z3ntu
Copy link
Member

z3ntu commented Oct 23, 2021

@luiszimmermann Please rebuild with the latest commit 887a2c1 (and reboot) and check the device_serial again. I haven't touched the rest, just the serial one.

@luiszimmermann
Copy link

luiszimmermann commented Nov 1, 2021

@luiszimmermann Please rebuild with the latest commit 887a2c1 (and reboot) and check the device_serial again. I haven't touched the rest, just the serial one.

@z3ntu Now the device_serial it's with the right string (the same that it's in the mouse), but the dmesg has the exact same output. And the razergenie still doesn't works as expected.

@z3ntu
Copy link
Member

z3ntu commented Nov 14, 2021

@luiszimmermann I've added the change to the other methods, so most things should work now, but I'm unsure if charge_low_threshold and device_idle_time work. Please build from latest commit in #1555 again (49a4187)

@luiszimmermann
Copy link

@z3ntu Tested again with razergenie and your commit (49a4187), and now the Polling rate setting works! But the DPI does nothing. I'm using the 2.4 mode with the dongle, didn't tried in BT mode.
This mouse has 4 profiles in memory with the DPI settings, don't know if this affects openrazer, I don't have any other Razer mouse, this is my first.
dmesg still outputs the same Command timed out.

@z3ntu
Copy link
Member

z3ntu commented Dec 4, 2021

@luiszimmermann Let's please move the testing discussion to the PR #1555

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

5 participants