/*---------------------------------------------------------*\ | SteelSeriesDevices.h | | | | Device list for SteelSeries devices | | | | This file is part of the OpenRGB project | | SPDX-License-Identifier: GPL-2.0-or-later | \*---------------------------------------------------------*/ #pragma once /*---------------------------------------------------------*\ | Vendor ID | \*---------------------------------------------------------*/ #define STEELSERIES_VID 0x1038 /*---------------------------------------------------------*\ | Mouse product IDs | \*---------------------------------------------------------*/ #define STEELSERIES_AEROX_3_PID 0x1836 #define STEELSERIES_AEROX_3_WIRELESS_PID 0x1838 #define STEELSERIES_AEROX_3_WIRELESS_WIRED_PID 0x183A #define STEELSERIES_AEROX_3_CS2_WIRELESS_PID 0x1878 #define STEELSERIES_AEROX_3_CS2_WIRELESS_WIRED_PID 0x187A #define STEELSERIES_AEROX_3_GEN2_WIRELESS_PID 0x1890 #define STEELSERIES_AEROX_5_WIRELESS_PID 0x1852 #define STEELSERIES_AEROX_5_WIRELESS_WIRED_PID 0x1854 #define STEELSERIES_AEROX_5_DESTINY_WIRELESS_PID 0x185C #define STEELSERIES_AEROX_5_DESTINY_WIRELESS_WIRED_PID 0x185E #define STEELSERIES_AEROX_5_DIABLO_WIRELESS_PID 0x1860 #define STEELSERIES_AEROX_5_DIABLO_WIRELESS_WIRED_PID 0x1862 #define STEELSERIES_AEROX_9_WIRELESS_PID 0x1858 #define STEELSERIES_AEROX_9_WIRELESS_WIRED_PID 0x185A #define STEELSERIES_AEROX_5_PID 0x1850 #define STEELSERIES_AEROX_9_PID 0x185A #define STEELSERIES_RIVAL_100_PID 0x1702 #define STEELSERIES_RIVAL_100_DOTA_PID 0x170C #define STEELSERIES_RIVAL_105_PID 0x1814 #define STEELSERIES_RIVAL_106_PID 0x1816 #define STEELSERIES_RIVAL_110_PID 0x1729 #define STEELSERIES_RIVAL_300_PID 0x1710 #define ACER_PREDATOR_RIVAL_300_PID 0x1714 #define STEELSERIES_RIVAL_300_CSGO_PID 0x1394 #define STEELSERIES_RIVAL_300_CSGO_STM32_PID 0x1716 #define STEELSERIES_RIVAL_300_CSGO_HYPERBEAST_PID 0x171A #define STEELSERIES_RIVAL_300_DOTA_PID 0x1392 #define STEELSERIES_RIVAL_300_HP_PID 0x1718 #define STEELSERIES_RIVAL_300_BLACKOPS_PID 0x1710 #define STEELSERIES_RIVAL_310_PID 0x1720 #define STEELSERIES_RIVAL_310_CSGO_HOWL_PID 0x171E #define STEELSERIES_RIVAL_310_PUBG_PID 0x1736 #define STEELSERIES_RIVAL_5_PID 0x183C #define STEELSERIES_RIVAL_600_PID 0x1724 #define STEELSERIES_RIVAL_600_DOTA_2_PID 0x172E #define STEELSERIES_RIVAL_650_PID 0x172B #define STEELSERIES_RIVAL_650_WIRELESS_PID 0x1726 #define STEELSERIES_RIVAL_700_PID 0x1700 #define STEELSERIES_RIVAL_710_PID 0x1730 #define STEELSERIES_RIVAL_3_OLD_PID 0x1824 #define STEELSERIES_RIVAL_3_PID 0x184C #define STEELSERIES_SENSEI_TEN_PID 0x1832 #define STEELSERIES_SENSEI_TEN_CSGO_NEON_RIDER_PID 0x1834 #define STEELSERIES_SENSEI_310_PID 0x1722 /*---------------------------------------------------------*\ | Headset product IDs | \*---------------------------------------------------------*/ #define STEELSERIES_SIBERIA_350_PID 0x1229 #define STEELSERIES_ARCTIS_NOVA_3_PID 0x12EC #define STEELSERIES_ARCTIS_5_PID 0x1250 #define STEELSERIES_ARCTIS_5_V2_PID 0x12AA /*--------------------------------------------------------------------*\ | Mousemat product IDs | \*--------------------------------------------------------------------*/ #define STEELSERIES_QCK_PRISM_CLOTH_MED_PID 0x150A #define STEELSERIES_QCK_PRISM_CLOTH_XL_PID 0x150D #define STEELSERIES_QCK_PRISM_CLOTH_XL_DESTINY_PID 0x151E #define STEELSERIES_QCK_PRISM_CLOTH_XL_CSGO_NEON_RIDER_PID 0x1514 #define STEELSERIES_QCK_PRISM_CLOTH_XL_CSGO_NEO_NOIR_PID 0x151C #define STEELSERIES_QCK_PRISM_CLOTH_3XL_PID 0x1516 #define STEELSERIES_QCK_PRISM_CLOTH_4XL_PID 0x1518 #define STEELSERIES_QCK_PRISM_CLOTH_5XL_PID 0x151A #define STEELSERIES_QCK_PRISM_CLOTH_XL_DESTINY_2_LIGHTFALL_ED_PID 0x1520 /*---------------------------------------------------------*\ | Keyboard product IDs | \*---------------------------------------------------------*/ #define STEELSERIES_APEX_3_PID 0x161A #define STEELSERIES_APEX_3_TKL_PID 0x1622 #define STEELSERIES_APEX_5_PID 0x161C #define STEELSERIES_APEX_7_PID 0x1612 #define STEELSERIES_APEX_7_TKL_PID 0x1618 #define STEELSERIES_APEX_9_TKL_PID 0x1634 #define STEELSERIES_APEX_9_MINI_PID 0x1620 #define STEELSERIES_APEX_PRO_PID 0x1610 #define STEELSERIES_APEX_PRO_TKL_PID 0x1614 #define STEELSERIES_APEX_PRO_TKL_2023_PID 0x1628 #define STEELSERIES_APEX_PRO_TKL_2023_WL_PID_1 0x1630 #define STEELSERIES_APEX_PRO_TKL_2023_WL_PID_2 0x1632 #define STEELSERIES_APEX_PRO_TKL_GEN3_PID 0x1642 #define STEELSERIES_APEX_PRO_TKL_GEN3_WL_PID_1 0x1644 #define STEELSERIES_APEX_PRO_TKL_GEN3_WL_PID_2 0x1646 #define STEELSERIES_APEX_M750_PID 0x0616 #define STEELSERIES_APEX_OG_PID 0x1202 #define STEELSERIES_APEX_350_PID 0x1206 #define STEELSERIES_APEX_PRO3_PID 0x1640 /*--------------------------------------------------------*\ | Allows us to handle variation in the protocol. | | Defined in a single enum so we can keep the device_list | | struct the same for every possible device. | \*--------------------------------------------------------*/ typedef enum { RIVAL_100 = 0x00, RIVAL_300 = 0x01, RIVAL_650 = 0x02, SIBERIA_350 = 0x03, APEX = 0x04, APEX_M = 0x05, APEX_OLD = 0x06, SENSEI = 0x07, RIVAL_600 = 0x08, RIVAL_3 = 0x09, APEX_TZONE = 0x0A, RIVAL_700 = 0x0B, AEROX_3 = 0x0C, APEX_8ZONE = 0x0D, AEROX_3_WIRELESS = 0x0E, AEROX_3_WIRELESS_WIRED = 0x0F, AEROX_5_WIRELESS = 0x10, AEROX_5_WIRELESS_WIRED = 0x11, AEROX_5_DESTINY_WIRELESS = 0x12, AEROX_5_DESTINY_WIRELESS_WIRED = 0x13, AEROX_5_DIABLO_WIRELESS = 0x14, AEROX_5_DIABLO_WIRELESS_WIRED = 0x15, AEROX_9_WIRELESS = 0x16, AEROX_9_WIRELESS_WIRED = 0x17, AEROX_3_GEN2_WIRELESS = 0x18, RIVAL_5 = 0x19 } steelseries_type;