|
@@ -47,6 +47,8 @@ enum ValveControllerPID
|
|
|
D0G_BLE_PID = 0x1105,
|
|
|
D0G_BLE2_PID = 0x1106,
|
|
|
D0GGLE_PID = 0x1142,
|
|
|
+
|
|
|
+ JUPITER_PID = 0x1205,
|
|
|
};
|
|
|
|
|
|
// This enum contains all of the messages exchanged between the host and the target (only add to this enum and never change the order)
|
|
@@ -68,10 +70,11 @@ enum FeatureReportMessageIDs
|
|
|
ID_SET_CONTROLLER_MODE = 0x8D,
|
|
|
ID_LOAD_DEFAULT_SETTINGS = 0x8E,
|
|
|
ID_TRIGGER_HAPTIC_PULSE = 0x8F,
|
|
|
+
|
|
|
ID_TURN_OFF_CONTROLLER = 0x9F,
|
|
|
|
|
|
ID_GET_DEVICE_INFO = 0xA1,
|
|
|
-
|
|
|
+
|
|
|
ID_CALIBRATE_TRACKPADS = 0xA7,
|
|
|
ID_RESERVED_0 = 0xA8,
|
|
|
ID_SET_SERIAL_NUMBER = 0xA9,
|
|
@@ -99,6 +102,12 @@ enum FeatureReportMessageIDs
|
|
|
ID_CHECK_GYRO_FW_LOAD = 0xC2,
|
|
|
ID_CALIBRATE_ANALOG = 0xC3,
|
|
|
ID_DONGLE_GET_CONNECTED_SLOTS = 0xC4,
|
|
|
+
|
|
|
+ ID_RESET_IMU = 0xCE,
|
|
|
+
|
|
|
+ // Deck only
|
|
|
+ ID_TRIGGER_HAPTIC_CMD = 0xEA,
|
|
|
+ ID_TRIGGER_RUMBLE_CMD = 0xEB,
|
|
|
};
|
|
|
|
|
|
|
|
@@ -215,6 +224,32 @@ typedef enum
|
|
|
IO_RAW_JOYSTICK_X,
|
|
|
IO_RAW_JOYSTICK_Y,
|
|
|
IO_GYRO_TILT_VEC,
|
|
|
+ IO_PRESSURE_LEFT_PAD,
|
|
|
+ IO_PRESSURE_RIGHT_PAD,
|
|
|
+ IO_PRESSURE_LEFT_BUMPER,
|
|
|
+ IO_PRESSURE_RIGHT_BUMPER,
|
|
|
+ IO_PRESSURE_LEFT_GRIP,
|
|
|
+ IO_PRESSURE_RIGHT_GRIP,
|
|
|
+ IO_ANALOG_LEFT_TRIGGER_THRESHOLD,
|
|
|
+ IO_ANALOG_RIGHT_TRIGGER_THRESHOLD,
|
|
|
+ IO_PRESSURE_RIGHT_PAD_THRESHOLD,
|
|
|
+ IO_PRESSURE_LEFT_PAD_THRESHOLD,
|
|
|
+ IO_PRESSURE_RIGHT_BUMPER_THRESHOLD,
|
|
|
+ IO_PRESSURE_LEFT_BUMPER_THRESHOLD,
|
|
|
+ IO_PRESSURE_RIGHT_GRIP_THRESHOLD,
|
|
|
+ IO_PRESSURE_LEFT_GRIP_THRESHOLD,
|
|
|
+ IO_PRESSURE_RIGHT_PAD_RAW,
|
|
|
+ IO_PRESSURE_LEFT_PAD_RAW,
|
|
|
+ IO_PRESSURE_RIGHT_BUMPER_RAW,
|
|
|
+ IO_PRESSURE_LEFT_BUMPER_RAW,
|
|
|
+ IO_PRESSURE_RIGHT_GRIP_RAW,
|
|
|
+ IO_PRESSURE_LEFT_GRIP_RAW,
|
|
|
+ IO_PRESSURE_RIGHT_GRIP2_THRESHOLD,
|
|
|
+ IO_PRESSURE_LEFT_GRIP2_THRESHOLD,
|
|
|
+ IO_PRESSURE_LEFT_GRIP2,
|
|
|
+ IO_PRESSURE_RIGHT_GRIP2,
|
|
|
+ IO_PRESSURE_RIGHT_GRIP2_RAW,
|
|
|
+ IO_PRESSURE_LEFT_GRIP2_RAW,
|
|
|
IO_ANALOG_COUNT
|
|
|
} AnalogIO;
|
|
|
|
|
@@ -315,37 +350,6 @@ enum GamepadButtons
|
|
|
GAMEPAD_BTN_COUNT
|
|
|
};
|
|
|
|
|
|
-typedef enum
|
|
|
-{
|
|
|
- // Low word button bits
|
|
|
- STEAMDECK_LBUTTON_RT2 = (1 << 0),
|
|
|
- STEAMDECK_LBUTTON_LT2 = (1 << 1),
|
|
|
- STEAMDECK_LBUTTON_RT = (1 << 2),
|
|
|
- STEAMDECK_LBUTTON_LT = (1 << 3),
|
|
|
- STEAMDECK_LBUTTON_Y = (1 << 4),
|
|
|
- STEAMDECK_LBUTTON_B = (1 << 5),
|
|
|
- STEAMDECK_LBUTTON_X = (1 << 6),
|
|
|
- STEAMDECK_LBUTTON_A = (1 << 7),
|
|
|
- STEAMDECK_LBUTTON_DPAD_UP = (1 << 8),
|
|
|
- STEAMDECK_LBUTTON_DPAD_RIGHT = (1 << 9),
|
|
|
- STEAMDECK_LBUTTON_DPAD_LEFT = (1 << 10),
|
|
|
- STEAMDECK_LBUTTON_DPAD_DOWN = (1 << 11),
|
|
|
- STEAMDECK_LBUTTON_SELECT = (1 << 12),
|
|
|
- STEAMDECK_LBUTTON_MODE = (1 << 13),
|
|
|
- STEAMDECK_LBUTTON_START = (1 << 14),
|
|
|
- STEAMDECK_LBUTTON_PADDLE3 = (1 << 15),
|
|
|
- STEAMDECK_LBUTTON_PADDLE4 = (1 << 16),
|
|
|
- STEAMDECK_LBUTTON_PADL = (1 << 17),
|
|
|
- STEAMDECK_LBUTTON_PADR = (1 << 18),
|
|
|
- STEAMDECK_LBUTTON_STICKL = (1 << 22),
|
|
|
- STEAMDECK_LBUTTON_STICKR = (1 << 26),
|
|
|
-
|
|
|
- // High word button bits
|
|
|
- STEAMDECK_HBUTTON_PADDLE1 = (1 << 9),
|
|
|
- STEAMDECK_HBUTTON_PADDLE2 = (1 << 10),
|
|
|
- STEAMDECK_HBUTTON_BASE = (1 << 18)
|
|
|
-} DeckButtons;
|
|
|
-
|
|
|
// Mode adjust
|
|
|
enum ModeAdjustModes
|
|
|
{
|
|
@@ -413,13 +417,15 @@ typedef enum
|
|
|
SETTING_MOUSE_SENSITIVITY,
|
|
|
SETTING_MOUSE_ACCELERATION,
|
|
|
SETTING_TRACKBALL_ROTATION_ANGLE,
|
|
|
- SETTING_HAPTIC_INTENSITY,
|
|
|
+ SETTING_HAPTIC_INTENSITY_UNUSED,
|
|
|
SETTING_LEFT_GAMEPAD_STICK_ENABLED,
|
|
|
SETTING_RIGHT_GAMEPAD_STICK_ENABLED,
|
|
|
SETTING_USB_DEBUG_MODE,
|
|
|
SETTING_LEFT_TRACKPAD_MODE,
|
|
|
SETTING_RIGHT_TRACKPAD_MODE,
|
|
|
SETTING_MOUSE_POINTER_ENABLED,
|
|
|
+
|
|
|
+ // 10
|
|
|
SETTING_DPAD_DEADZONE,
|
|
|
SETTING_MINIMUM_MOMENTUM_VEL,
|
|
|
SETTING_MOMENTUM_DECAY_AMMOUNT,
|
|
@@ -430,6 +436,8 @@ typedef enum
|
|
|
SETTING_MOMENTUM_VERTICAL_DIVISOR,
|
|
|
SETTING_MOMENTUM_MAXIMUM_VELOCITY,
|
|
|
SETTING_TRACKPAD_Z_ON,
|
|
|
+
|
|
|
+ // 20
|
|
|
SETTING_TRACKPAD_Z_OFF,
|
|
|
SETTING_SENSITIVY_SCALE_AMMOUNT,
|
|
|
SETTING_LEFT_TRACKPAD_SECONDARY_MODE,
|
|
@@ -440,6 +448,8 @@ typedef enum
|
|
|
SETTING_TRACKPAD_OUTER_RADIUS,
|
|
|
SETTING_TRACKPAD_Z_ON_LEFT,
|
|
|
SETTING_TRACKPAD_Z_OFF_LEFT,
|
|
|
+
|
|
|
+ // 30
|
|
|
SETTING_TRACKPAD_OUTER_SPIN_VEL,
|
|
|
SETTING_TRACKPAD_OUTER_SPIN_RADIUS,
|
|
|
SETTING_TRACKPAD_OUTER_SPIN_HORIZONTAL_ONLY,
|
|
@@ -450,6 +460,8 @@ typedef enum
|
|
|
SETTING_TRACKPAD_DOUBLE_TAP_BEEP_PERIOD,
|
|
|
SETTING_TRACKPAD_DOUBLE_TAP_BEEP_COUNT,
|
|
|
SETTING_TRACKPAD_OUTER_RADIUS_RELEASE_ON_TRANSITION,
|
|
|
+
|
|
|
+ // 40
|
|
|
SETTING_RADIAL_MODE_ANGLE,
|
|
|
SETTING_HAPTIC_INTENSITY_MOUSE_MODE,
|
|
|
SETTING_LEFT_DPAD_REQUIRES_CLICK,
|
|
@@ -458,24 +470,54 @@ typedef enum
|
|
|
SETTING_LED_USER_BRIGHTNESS,
|
|
|
SETTING_ENABLE_RAW_JOYSTICK,
|
|
|
SETTING_ENABLE_FAST_SCAN,
|
|
|
- SETTING_GYRO_MODE,
|
|
|
+ SETTING_IMU_MODE,
|
|
|
SETTING_WIRELESS_PACKET_VERSION,
|
|
|
+
|
|
|
+ // 50
|
|
|
SETTING_SLEEP_INACTIVITY_TIMEOUT,
|
|
|
+ SETTING_TRACKPAD_NOISE_THRESHOLD,
|
|
|
+ SETTING_LEFT_TRACKPAD_CLICK_PRESSURE,
|
|
|
+ SETTING_RIGHT_TRACKPAD_CLICK_PRESSURE,
|
|
|
+ SETTING_LEFT_BUMPER_CLICK_PRESSURE,
|
|
|
+ SETTING_RIGHT_BUMPER_CLICK_PRESSURE,
|
|
|
+ SETTING_LEFT_GRIP_CLICK_PRESSURE,
|
|
|
+ SETTING_RIGHT_GRIP_CLICK_PRESSURE,
|
|
|
+ SETTING_LEFT_GRIP2_CLICK_PRESSURE,
|
|
|
+ SETTING_RIGHT_GRIP2_CLICK_PRESSURE,
|
|
|
+
|
|
|
+ // 60
|
|
|
+ SETTING_PRESSURE_MODE,
|
|
|
+ SETTING_CONTROLLER_TEST_MODE,
|
|
|
+ SETTING_TRIGGER_MODE,
|
|
|
+ SETTING_TRACKPAD_Z_THRESHOLD,
|
|
|
+ SETTING_FRAME_RATE,
|
|
|
+ SETTING_TRACKPAD_FILT_CTRL,
|
|
|
+ SETTING_TRACKPAD_CLIP,
|
|
|
+ SETTING_DEBUG_OUTPUT_SELECT,
|
|
|
+ SETTING_TRIGGER_THRESHOLD_PERCENT,
|
|
|
+ SETTING_TRACKPAD_FREQUENCY_HOPPING,
|
|
|
+
|
|
|
+ // 70
|
|
|
+ SETTING_HAPTICS_ENABLED,
|
|
|
+ SETTING_STEAM_WATCHDOG_ENABLE,
|
|
|
+ SETTING_TIMP_TOUCH_THRESHOLD_ON,
|
|
|
+ SETTING_TIMP_TOUCH_THRESHOLD_OFF,
|
|
|
+ SETTING_FREQ_HOPPING,
|
|
|
+ SETTING_TEST_CONTROL,
|
|
|
+ SETTING_HAPTIC_MASTER_GAIN_DB,
|
|
|
+ SETTING_THUMB_TOUCH_THRESH,
|
|
|
+ SETTING_DEVICE_POWER_STATUS,
|
|
|
+ SETTING_HAPTIC_INTENSITY,
|
|
|
+
|
|
|
+ // 80
|
|
|
+ SETTING_STABILIZER_ENABLED,
|
|
|
+ SETTING_TIMP_MODE_MTE,
|
|
|
SETTING_COUNT,
|
|
|
|
|
|
// This is a special setting value use for callbacks and should not be set/get explicitly.
|
|
|
SETTING_ALL=0xFF
|
|
|
} ControllerSettings;
|
|
|
|
|
|
-typedef enum
|
|
|
-{
|
|
|
- SETTING_DECK_LPAD_MODE = 0x07,
|
|
|
- SETTING_DECK_RPAD_MODE = 0x08,
|
|
|
- SETTING_DECK_RPAD_MARGIN = 0x18,
|
|
|
- SETTING_DECK_LPAD_CLICK_PRESSURE = 0x34,
|
|
|
- SETTING_DECK_RPAD_CLICK_PRESSURE = 0x35
|
|
|
-} DeckSettings;
|
|
|
-
|
|
|
typedef enum
|
|
|
{
|
|
|
SETTING_DEFAULT,
|
|
@@ -501,6 +543,7 @@ typedef enum
|
|
|
HAPTIC_PULSE_NORMAL = 0x0000,
|
|
|
HAPTIC_PULSE_HIGH_PRIORITY = 0x0001,
|
|
|
HAPTIC_PULSE_VERY_HIGH_PRIORITY = 0x0002,
|
|
|
+ HAPTIC_PULSE_IGNORE_USER_PREFS = 0x0003,
|
|
|
} SettingHapticPulseFlags;
|
|
|
|
|
|
typedef struct
|