22 #ifndef _CONTROLLER_CONSTANTS_
23 #define _CONTROLLER_CONSTANTS_
31 #define FEATURE_REPORT_SIZE 64
33 #define VALVE_USB_VID 0x28DE
36 #define FAST_SCAN_INTERVAL 6
37 #define SLOW_SCAN_INTERVAL 9
106 typedef enum WirelessEventTypes
237 KEY_A =
KEY_FIRST,
KEY_B,
KEY_C,
KEY_D,
KEY_E,
KEY_F,
KEY_G,
KEY_H,
KEY_I,
KEY_J,
KEY_K,
KEY_L,
238 KEY_M,
KEY_N,
KEY_O,
KEY_P,
KEY_Q,
KEY_R,
KEY_S,
KEY_T,
KEY_U,
KEY_V,
KEY_W,
KEY_X,
KEY_Y,
KEY_Z,
KEY_1,
KEY_2,
239 KEY_3,
KEY_4,
KEY_5,
KEY_6,
KEY_7,
KEY_8,
KEY_9,
KEY_0,
KEY_RETURN,
KEY_ESCAPE,
KEY_BACKSPACE,
KEY_TAB,
KEY_SPACE,
KEY_DASH,
KEY_EQUALS,
KEY_LEFT_BRACKET,
240 KEY_RIGHT_BRACKET,
KEY_BACKSLASH,
KEY_UNUSED1,
KEY_SEMICOLON,
KEY_SINGLE_QUOTE,
KEY_BACK_TICK,
KEY_COMMA,
KEY_PERIOD,
KEY_FORWARD_SLASH,
KEY_CAPSLOCK,
KEY_F1,
KEY_F2,
KEY_F3,
KEY_F4,
KEY_F5,
KEY_F6,
241 KEY_F7,
KEY_F8,
KEY_F9,
KEY_F10,
KEY_F11,
KEY_F12,
KEY_PRINT_SCREEN,
KEY_SCROLL_LOCK,
KEY_BREAK,
KEY_INSERT,
KEY_HOME,
KEY_PAGE_UP,
KEY_DELETE,
KEY_END,
KEY_PAGE_DOWN,
KEY_RIGHT_ARROW,
242 KEY_LEFT_ARROW,
KEY_DOWN_ARROW,
KEY_UP_ARROW,
KEY_NUM_LOCK,
KEY_KEYPAD_FORWARD_SLASH,
KEY_KEYPAD_ASTERISK,
KEY_KEYPAD_DASH,
KEY_KEYPAD_PLUS,
KEY_KEYPAD_ENTER,
KEY_KEYPAD_1,
KEY_KEYPAD_2,
KEY_KEYPAD_3,
KEY_KEYPAD_4,
KEY_KEYPAD_5,
KEY_KEYPAD_6,
KEY_KEYPAD_7,
@ IO_DIGITAL_RIGHT_TRACKPAD_W
@ IO_DIGITAL_LEFT_TRACKPAD_N
@ IO_DIGITAL_RIGHT_TRACKPAD_SE
@ IO_DIGITAL_RIGHT_TRACKPAD_N
@ IO_DIGITAL_BUTTON_MACRO_1
@ IO_DIGITAL_BUTTON_MACRO_5
@ IO_DIGITAL_LEFT_TRACKPAD_CLICK
@ IO_DIGITAL_LEFT_TRACKPAD_DOUBLE_TAP
@ IO_DIGITAL_RIGHT_TRACKPAD_OUTER_RADIUS
@ IO_DIGITAL_BUTTON_MACRO_1FINGER
@ IO_DIGITAL_LEFT_TRACKPAD_S
@ IO_DIGITAL_BUTTON_RIGHT
@ IO_DIGITAL_BUTTON_LEFT_BUMPER
@ IO_DIGITAL_LEFT_TRIGGER_THRESHOLD
@ IO_DIGITAL_LEFT_TRACKPAD_E
@ IO_DIGITAL_BUTTON_BACK_RIGHT2
@ IO_DIGITAL_RIGHT_TRACKPAD_SW
@ IO_DIGITAL_LEFT_TRACKPAD_NW
@ IO_DIGITAL_BUTTON_LEFT_TRIGGER
@ IO_DIGITAL_BUTTON_BACK_LEFT
@ IO_DIGITAL_BUTTON_MACRO_3
@ IO_DIGITAL_BUTTON_RIGHT_TRIGGER
@ IO_DIGITAL_BUTTON_STEAM
@ IO_DIGITAL_BUTTON_ANCILLARY_1
@ IO_DIGITAL_RIGHT_TRACKPAD_S
@ IO_DIGITAL_BUTTON_BACK_LEFT2
@ IO_DIGITAL_BUTTON_MACRO_7
@ IO_DIGITAL_LEFT_TRACKPAD_W
@ IO_DIGITAL_RIGHT_TRACKPAD_DOUBLE_TAP
@ IO_DIGITAL_RIGHT_TRACKPAD_E
@ IO_DIGITAL_BUTTON_ALWAYS_ON
@ IO_DIGITAL_LEFT_TRACKPAD_OUTER_RADIUS
@ IO_DIGITAL_LEFT_TRACKPAD_SW
@ IO_DIGITAL_LEFT_TRACKPAD_SE
@ IO_DIGITAL_BUTTON_LEFT_JOYSTICK_CLICK
@ IO_DIGITAL_BUTTON_BACK_RIGHT
@ IO_DIGITAL_BUTTON_MACRO_2FINGER
@ IO_DIGITAL_BUTTON_RIGHT_BUMPER
@ IO_DIGITAL_BUTTON_MACRO_6
@ IO_DIGITAL_LEFT_TRACKPAD_NE
@ IO_DIGITAL_BUTTON_MACRO_2
@ IO_DIGITAL_RIGHT_TRIGGER_THRESHOLD
@ IO_DIGITAL_BUTTON_MACRO_0
@ IO_DIGITAL_RIGHT_TRACKPAD_NE
@ IO_DIGITAL_BUTTON_ESCAPE
@ IO_DIGITAL_RIGHT_TRACKPAD_NW
@ IO_DIGITAL_RIGHT_TRACKPAD_CLICK
@ IO_DIGITAL_BUTTON_MACRO_4
@ IO_ANALOG_RIGHT_STICK_Y
@ IO_ANALOG_RIGHT_TRIGGER
@ IO_ANALOG_RIGHT_STICK_X
@ DONGLE_SETTING_MOUSE_KEYBOARD_ENABLED
const SettingValueRange_t g_DefaultSettingValues[SETTING_COUNT]
ControllerStatusEventCodes
@ STATUS_CODE_GYRO_INIT_ERROR
@ STATUS_CODE_CRITICAL_BATTERY
@ ATTRIB_DONGLE_FIRMWARE_BUILD_TIME
@ ATTRIB_RADIO_DEVICE_ID1
@ ATTRIB_FIRMWARE_VERSION
@ ATTRIB_RADIO_DEVICE_ID0
@ ATTRIB_CONNECTION_INTERVAL_IN_US
@ ATTRIB_FIRMWARE_BUILD_TIME
@ ATTRIB_RADIO_FIRMWARE_BUILD_TIME
@ ATTRIB_BOOTLOADER_BUILD_TIME
ControllerStatusStateFlags
@ STATUS_STATE_LOW_BATTERY
@ SETTING_DEFAULTMINMAXCOUNT
@ ID_CALIBRATE_ANALOG_TRIGGERS
@ ID_AUDIO_UPDATE_COMPLETE
@ ID_LOAD_DEFAULT_SETTINGS
@ ID_GET_DIGITAL_MAPPINGS
@ ID_DONGLE_GET_WIRELESS_STATE
@ ID_CLEAR_DIGITAL_MAPPINGS
@ ID_GET_TRACKPAD_FACTORY_CALIBRATION
@ ID_GET_TRACKPAD_CALIBRATION
@ ID_SET_DEFAULT_DIGITAL_MAPPINGS
@ ID_DONGLE_COMMIT_DEVICE
@ ID_GET_STRING_ATTRIBUTE
@ ID_GET_SETTINGS_DEFAULTS
@ ID_TRIGGER_HAPTIC_PULSE
@ ID_GET_ATTRIBUTES_VALUES
@ ID_DONGLE_DISCONNECT_DEVICE
@ ID_SET_DIGITAL_MAPPINGS
@ ID_DONGLE_GET_CONNECTED_SLOTS
@ ID_GET_TRACKPAD_RAW_DATA
@ ID_CLEAR_SETTINGS_VALUES
@ MODE_ADJUST_LEFT_PAD_SECONDARY_MODE
@ MODE_ADJUST_RIGHT_PAD_SECONDARY_MODE
ControllerStringAttributes
@ ATTRIB_STR_BOARD_SERIAL
@ KEY_KEYPAD_FORWARD_SLASH
@ SETTING_TRACKPAD_OUTER_RADIUS_RELEASE_ON_TRANSITION
@ SETTING_MOMENTUM_VERTICAL_DIVISOR
@ SETTING_TRACKPAD_RELATIVE_MODE_TICKS_PER_PIXEL
@ SETTING_MOUSE_ACCELERATION
@ SETTING_TRACKPAD_OUTER_SPIN_RADIUS
@ SETTING_TRACKPAD_DOUBLE_TAP_BEEP_PERIOD
@ SETTING_TRACKPAD_RELATIVE_MODE_DEADZONE
@ SETTING_TRACKPAD_OUTER_SPIN_HORIZONTAL_ONLY
@ SETTING_TRACKBALL_ROTATION_ANGLE
@ SETTING_LEFT_DPAD_REQUIRES_CLICK
@ SETTING_TRACKPAD_DOUBLE_TAP_BEEP_ENABLED
@ SETTING_WIRELESS_PACKET_VERSION
@ SETTING_MINIMUM_MOMENTUM_VEL
@ SETTING_RIGHT_TRACKPAD_SECONDARY_MODE
@ SETTING_ENABLE_FAST_SCAN
@ SETTING_ENABLE_RAW_JOYSTICK
@ SETTING_RIGHT_GAMEPAD_STICK_ENABLED
@ SETTING_MOMENTUM_DECAY_AMMOUNT
@ SETTING_RIGHT_TRACKPAD_MODE
@ SETTING_MOMENTUM_MAXIMUM_VELOCITY
@ SETTING_TRACKPAD_Z_OFF_LEFT
@ SETTING_LEFT_TRACKPAD_MODE
@ SETTING_SENSITIVY_SCALE_AMMOUNT
@ SETTING_RADIAL_MODE_ANGLE
@ SETTING_TRACKPAD_DOUBLE_TAP_BEEP_COUNT
@ SETTING_HAPTIC_INTENSITY
@ SETTING_TRACKPAD_OUTER_SPIN_VEL
@ SETTING_TRACKPAD_RELATIVE_MODE_MAX_VEL
@ SETTING_TRACKPAD_Z_ON_LEFT
@ SETTING_MOUSE_POINTER_ENABLED
@ SETTING_TRACKPAD_OUTER_RADIUS
@ SETTING_LED_BASELINE_BRIGHTNESS
@ SETTING_HAPTIC_INCREMENT
@ SETTING_TRACKPAD_RELATIVE_MODE_INVERT_Y
@ SETTING_SLEEP_INACTIVITY_TIMEOUT
@ SETTING_LEFT_GAMEPAD_STICK_ENABLED
@ SETTING_LED_USER_BRIGHTNESS
@ SETTING_RIGHT_DPAD_REQUIRES_CLICK
@ SETTING_MOUSE_SENSITIVITY
@ SETTING_SMOOTH_ABSOLUTE_MOUSE
@ SETTING_STEAMBUTTON_POWEROFF_TIME
@ SETTING_LEFT_TRACKPAD_SECONDARY_MODE
@ SETTING_HAPTIC_INTENSITY_MOUSE_MODE
@ TRACKPAD_DPAD_FOUR_WAY_OVERLAP
@ TRACKPAD_GESTURE_KEYBOARD
@ TRACKPAD_DPAD_EIGHT_WAY
@ TRACKPAD_DPAD_FOUR_WAY_DISCRETE
@ TRACKPAD_ABSOLUTE_MOUSE
@ TRACKPAD_RELATIVE_MOUSE
@ WIRELESS_EVENT_DISCONNECT
@ SETTING_GYRO_MODE_STEERING
@ SETTING_GYRO_MODE_SEND_RAW_GYRO
@ SETTING_GYRO_MODE_SEND_ORIENTATION
@ SETTING_GYRO_MODE_SEND_RAW_ACCEL
@ GAMEPAD_BTN_RIGHT_JOYSTICK
@ GAMEPAD_BTN_SHOULDER_RIGHT
@ GAMEPAD_BTN_RSTICK_RIGHT
@ GAMEPAD_BTN_TRIGGER_RIGHT
@ GAMEPAD_BTN_RSTICK_LEFT
@ GAMEPAD_BTN_RSTICK_DOWN
@ GAMEPAD_BTN_LEFT_JOYSTICK
@ GAMEPAD_BTN_SHOULDER_LEFT
@ GAMEPAD_BTN_TRIGGER_LEFT
@ GAMEPAD_BTN_LSTICK_LEFT
@ GAMEPAD_BTN_LSTICK_RIGHT
@ GAMEPAD_BTN_LSTICK_DOWN
@ HAPTIC_PULSE_HIGH_PRIORITY
@ HAPTIC_PULSE_VERY_HIGH_PRIORITY