diff --git a/data/devices/asus-rog-spatha-x.device b/data/devices/asus-rog-spatha-x.device new file mode 100644 index 00000000..7bd313f7 --- /dev/null +++ b/data/devices/asus-rog-spatha-x.device @@ -0,0 +1,14 @@ +[Device] +Name=ASUS ROG Spatha X +DeviceMatch=usb:0b05:1979 +Driver=asus + +[Driver/asus] +Profiles=5 +Buttons=14 +Leds=3 +Dpis=4 +Wireless=1 +DpiRange=100:19000@50 +Quirks=DOUBLE_DPI +ButtonMapping=f0;f1;f2;e4;e5;e6;e8;e9;ea;eb;ec;ed;ee;ef diff --git a/src/asus.h b/src/asus.h index 0d8386c4..7ef24476 100644 --- a/src/asus.h +++ b/src/asus.h @@ -17,7 +17,7 @@ #define ASUS_STATUS_ERROR 0xffaa /* invalid state/request, disconnected or sleeping */ /* maximum number of buttons across all ASUS devices */ -#define ASUS_MAX_NUM_BUTTON 16 +#define ASUS_MAX_NUM_BUTTON 17 /* maximum number of DPI presets across all ASUS devices */ /* for 4 DPI devices: 0 - red, 1 - purple, 2 - blue (default), 3 - green */ @@ -147,11 +147,12 @@ static struct asus_button ASUS_BUTTON_MAPPING[] = { { 0xe1, RATBAG_BUTTON_ACTION_TYPE_BUTTON, 4, 0 }, /* backward, right side */ { 0xe2, RATBAG_BUTTON_ACTION_TYPE_BUTTON, 5, 0 }, /* forward, right side */ { 0xe7, RATBAG_BUTTON_ACTION_TYPE_SPECIAL, 0, RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_ALTERNATE }, /* DPI target */ - { 0xff, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* placeholder */ - { 0xff, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* placeholder */ - { 0xff, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* placeholder */ - { 0xff, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* placeholder */ - { 0xff, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* placeholder */ + { 0xea, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* side button A */ + { 0xeb, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* side button B */ + { 0xec, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* side button C */ + { 0xed, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* side button D */ + { 0xee, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* side button E */ + { 0xef, RATBAG_BUTTON_ACTION_TYPE_NONE, 0, 0 }, /* side button F */ }; struct asus_button * diff --git a/src/driver-asus.c b/src/driver-asus.c index 3d029bcf..d156867c 100644 --- a/src/driver-asus.c +++ b/src/driver-asus.c @@ -55,6 +55,7 @@ static int8_t ASUS_CONFIG_BUTTON_MAPPING[] = { -1, /* placeholder */ -1, /* placeholder */ -1, /* placeholder */ + -1, /* placeholder */ }; static unsigned int ASUS_LED_MODE[] = {