aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWrathofthePast <[email protected]>2022-02-24 12:27:57 -0500
committerWrathofthePast <[email protected]>2022-02-26 16:50:27 -0500
commit6cdb3c5c7b8af1911d08794ca1e8e725f13bec01 (patch)
treef33dd5c823b0383ee4b57008bd436c5b54200f46
parent03d09ece2b5b74e6d8bbffaaaafc231c6a708fb7 (diff)
downloadlibrazermacos-6cdb3c5c7b8af1911d08794ca1e8e725f13bec01.tar.xz
librazermacos-6cdb3c5c7b8af1911d08794ca1e8e725f13bec01.zip
Orochi V2 Support
Adds support for both Bluetooth and Receiver connections DPI Stage support was excluded as librazermacos does not yet support the feature. I'm working on it though :)
-rw-r--r--src/include/razermouse_driver.h2
-rwxr-xr-xsrc/lib/razerdevice.c2
-rw-r--r--src/lib/razermouse_driver.c10
3 files changed, 14 insertions, 0 deletions
diff --git a/src/include/razermouse_driver.h b/src/include/razermouse_driver.h
index f80345b..ac3dc7a 100644
--- a/src/include/razermouse_driver.h
+++ b/src/include/razermouse_driver.h
@@ -76,6 +76,8 @@
#define USB_DEVICE_ID_RAZER_NAGA_LEFT_HANDED_2020 0x008D
#define USB_DEVICE_ID_RAZER_DEATHADDER_ESSENTIAL_2021 0x0098
#define USB_DEVICE_ID_RAZER_BASILISK_V3 0x0099
+#define USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER 0x0094
+#define USB_DEVICE_ID_RAZER_OROCHI_V2 0x0095
/* Each keyboard report has 90 bytes*/
#define RAZER_REPORT_LEN 0x5A
diff --git a/src/lib/razerdevice.c b/src/lib/razerdevice.c
index 3f0896b..d2d9bdd 100755
--- a/src/lib/razerdevice.c
+++ b/src/lib/razerdevice.c
@@ -138,6 +138,8 @@ bool is_mouse(IOUSBDeviceInterface **usb_dev)
case USB_DEVICE_ID_RAZER_DEATHADDER_ESSENTIAL_2021:
case USB_DEVICE_ID_RAZER_BASILISK_V3:
case USB_DEVICE_ID_RAZER_BASILISK_ESSENTIAL:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_BLUETOOTH:
return true;
}
diff --git a/src/lib/razermouse_driver.c b/src/lib/razermouse_driver.c
index 336f2af..847a3df 100644
--- a/src/lib/razermouse_driver.c
+++ b/src/lib/razermouse_driver.c
@@ -65,6 +65,8 @@ static int razer_get_report(IOUSBDeviceInterface **usb_dev, struct razer_report
break;
case USB_DEVICE_ID_RAZER_ATHERIS_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_BLUETOOTH:
return razer_get_usb_response(usb_dev, 0x00, request_report, 0x00, response_report, RAZER_ATHERIS_RECEIVER_WAIT_MIN_US);
break;
@@ -1706,6 +1708,8 @@ ssize_t razer_attr_read_get_battery(IOUSBDeviceInterface **usb_dev, char *buf)
case USB_DEVICE_ID_RAZER_ATHERIS_RECEIVER:
case USB_DEVICE_ID_RAZER_LANCEHEAD_WIRELESS_RECEIVER:
case USB_DEVICE_ID_RAZER_LANCEHEAD_WIRELESS_WIRED:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_BLUETOOTH:
report.transaction_id.id = 0x1f;
break;
}
@@ -1729,6 +1733,8 @@ ssize_t razer_attr_read_is_charging(IOUSBDeviceInterface **usb_dev, char *buf)
// Wireless mice that don't support is_charging
// Use AA batteries
case USB_DEVICE_ID_RAZER_ATHERIS_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_BLUETOOTH:
return sprintf(buf, "0\n");
break;
@@ -1803,6 +1809,8 @@ ushort razer_attr_read_poll_rate(IOUSBDeviceInterface **usb_dev)
case USB_DEVICE_ID_RAZER_ATHERIS_RECEIVER:
case USB_DEVICE_ID_RAZER_BASILISK_V2:
case USB_DEVICE_ID_RAZER_BASILISK_V3:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_BLUETOOTH:
report.transaction_id.id = 0x1f;
break;
}
@@ -1894,6 +1902,8 @@ void razer_attr_write_poll_rate(IOUSBDeviceInterface **usb_dev, ushort polling_r
case USB_DEVICE_ID_RAZER_ATHERIS_RECEIVER:
case USB_DEVICE_ID_RAZER_BASILISK_V2:
case USB_DEVICE_ID_RAZER_BASILISK_V3:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_RECEIVER:
+ case USB_DEVICE_ID_RAZER_OROCHI_V2_BLUETOOTH:
report.transaction_id.id = 0x1f;
break;
}