|
Monado OpenXR Runtime
|
PlayStation Sense controller prober and driver code. More...

Go to the source code of this file.
Data Structures | |
| struct | pssense_input_report_common |
| struct | pssense_usb_input_report |
| struct | pssense_bluetooth_input_report |
| HID input report data packet. More... | |
| struct | pssense_output_adaptive_trigger_settings |
| struct | pssense_led_settings |
| struct | pssense_output_settings |
| struct | pssense_ps5_output_report |
| HID output report data packet matching the PS5 layout, with PCM haptics. More... | |
| struct | pssense_usb_output_report |
| struct | pssense_feature_report |
| HID output report data packet. More... | |
| struct | pssense_calibration_data |
Macros | |
| #define | NS_TO_IMU_TICKS(ns) (((uint64_t)(ns) * 3) / 1000) |
| #define | IMU_TICKS_TO_NS(ticks) (((uint64_t)(ticks) * 1000) / 3) |
| #define | PERIOD_ID_TO_DURATION_NS(period_id) (time_duration_ns)(IMU_TICKS_TO_NS(150LLU * (uint64_t)period_id)) |
| #define | DURATION_NS_TO_PERIOD_ID(duration_ns) (uint8_t)(((NS_TO_IMU_TICKS(duration_ns + 1)) / 150LLU) & 0xFF) |
| #define | STABLE_MIN_PERIOD_ID 20 |
| #define | MIN_PERIOD_ID 1 |
| #define | MAX_PERIOD_ID 42 |
| #define | PCM_SAMPLE_RATE 3000 |
| #define | PCM_HAPTIC_BUF_SIZE 32 |
| #define | INPUT_REPORT_ID_USB 0x01 |
| #define | INPUT_REPORT_ID_BLUETOOTH 0x31 |
| #define | OUTPUT_REPORT_ID_BLUETOOTH 0x31 |
| #define | OUTPUT_REPORT_TAG 0x10 |
| #define | CALIBRATION_DATA_FEATURE_REPORT_ID 0x05 |
| #define | CALIBRATION_DATA_PART_ID_1 0 |
| #define | CALIBRATION_DATA_PART_ID_2 0x81 |
| #define | INPUT_REPORT_BLUETOOTH_LENGTH 78 |
| #define | INPUT_REPORT_USB_LENGTH 64 |
| #define | OUTPUT_SETTINGS_ENABLE_VIBRATION_BITS (PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK0 | PSSENSE_OUTPUT_SETTINGS_FLAG1_RUMBLE_EMULATION) |
| #define | OUTPUT_SETTINGS_VIBRATE_MODE_HIGH_120HZ 0x00 |
| #define | OUTPUT_SETTINGS_VIBRATE_MODE_LOW_60HZ (PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK5) |
| #define | OUTPUT_SETTINGS_VIBRATE_MODE_CLASSIC_RUMBLE (PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK6) |
| #define | OUTPUT_SETTINGS_VIBRATE_MODE_DIET_RUMBLE (PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK5 | PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK6) |
| #define | OUTPUT_REPORT_LENGTH_PS5 78 |
| #define | OUTPUT_REPORT_LENGTH_USB 39 |
| #define | FEATURE_REPORT_LENGTH 64 |
| #define | CALIBRATION_DATA_LENGTH 116 |
Enumerations | |
| enum | pssense_output_settings_flag1 { PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK0 = 1 << 0 , PSSENSE_OUTPUT_SETTINGS_FLAG1_RUMBLE_EMULATION = 1 << 1 , PSSENSE_OUTPUT_SETTINGS_FLAG1_ADAPTIVE_TRIGGER_ENABLE = 1 << 2 , PSSENSE_OUTPUT_SETTINGS_FLAG1_INTENSITY_INCREASE_SET_ENABLE = 1 << 3 , PSSENSE_OUTPUT_SETTINGS_FLAG1_INTENSITY_REDUCTION_SET_ENABLE = 1 << 4 , PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK5 = 1 << 5 , PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK6 = 1 << 6 , PSSENSE_OUTPUT_SETTINGS_FLAG1_UNK7 = 1 << 7 } |
| enum | pssense_output_settings_flag2 { PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK0 = 1 << 0 , PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK1 = 1 << 1 , PSSENSE_OUTPUT_SETTINGS_FLAG2_STATUS_LED_SET_ENABLE = 1 << 2 , PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK3 = 1 << 3 , PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK4 = 1 << 4 , PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK5 = 1 << 5 , PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK6 = 1 << 6 , PSSENSE_OUTPUT_SETTINGS_FLAG2_UNK7 = 1 << 7 } |
| enum | pssense_adaptive_trigger_mode { TRIGGER_FEEDBACK_MODE_OFF = 0x05 , TRIGGER_FEEDBACK_MODE_SIMPLE_FEEDBACK = 0x01 , TRIGGER_FEEDBACK_MODE_SIMPLE_WEAPON = 0x02 , TRIGGER_FEEDBACK_MODE_SIMPLE_VIBRATION = 0x06 , TRIGGER_FEEDBACK_MODE_LIMITED_FEEDBACK = 0x11 , TRIGGER_FEEDBACK_MODE_LIMITED_WEAPON = 0x12 , TRIGGER_FEEDBACK_MODE_FEEDBACK = 0x21 , TRIGGER_FEEDBACK_MODE_SLOPE_FEEDBACK = 0x22 , TRIGGER_FEEDBACK_MODE_WEAPON = 0x25 , TRIGGER_FEEDBACK_MODE_VIBRATION = 0x26 , TRIGGER_FEEDBACK_MODE_GALLOPING = 0x23 , TRIGGER_FEEDBACK_MODE_MACHINE = 0x27 } |
| enum | pssense_led_sync_phase { LED_SYNC_PHASE_INIT = 0 , LED_SYNC_PHASE_PRESCAN = 1 , LED_SYNC_PHASE_BROAD = 2 , LED_SYNC_PHASE_BG = 3 , LED_SYNC_PHASE_STABLE = 4 , LED_SYNC_PHASE_LED_ALL_OFF = 5 , LED_SYNC_PHASE_LED_ALL_ON = 6 , LED_SYNC_PHASE_DEBUG = 7 } |
PlayStation Sense controller prober and driver code.