forked from OpenStickCommunity/GP2040-CE
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
GamepadAuxState functionality (OpenStickCommunity#1084)
* Started implementation of GamepadAuxState to store values that are outside of normal Gamepad button/analog functions, such as IMU (accelerometer, gyroscope) and rumble state. * Added gyroscope values for future Wii Motion Plus implementation. * Reduced additional PS sensor fields until necessary. Renamed PS gyro_accel_misc to sensor_data. Changed sensor fields to u16. * Refactored Wii data handler & added Motion Plus support * Implemented rumble, gyro, and accelerometer data structure usage if enabled * Refactor how Motion Plus and standard Extensions are detected. Prioritize Motion Plus if both are available. * Added missing report types and OUT report endpoint to PS4. * Added UDraw Wii Tablet support to WiiExtension library * Implemented touch counter for PS4 touchpad usage. * Added "active" state to Aux sensors to be used when a sensor is enabled, but not actively sending data. * Added sensor types for relative values * Added A3 & A4 button bindings to keyboard host Keyboard host now implements mouse bindings for left, middle, right buttons Relative mouse movements stored in the GamepadAux mouse sensor for later usage Added exclusion list for KeyboardMapper control to filter out unused entries * Temporarily removed GamepadAuxState from gamepad.h to resolve conflict * Removed blank space for resolving merge * Reimplemented GamepadAuxState in gamepad.h * Changed length checks on PS4 get reports to return max of request value and array size. * Replaced GamepadRumbleState with GamepadAuxHaptics structures. Implemented haptics control in PS4 and OGXbox modes. * Fix indentation on PS4 descriptors. Comment out debug outputs. * Added WiiExtension wrapper for new I2C interface Fixed initial states for MotionPlus gyro * Added PS4 accelerometer and gyrometer known range values * DS3 additions * Removed HID report repeating as this could cause incorrect report parsing to occur * Removed old quirks mode PS3 descriptors in favor of DS3 specific ones. This change would make PS3 mode specifically PS3, and standard HID/"DInput" should no longer use this mode. Still to do: better define and explain what each report blob is used for. * Updated PS3/PS4 device constants to not conflict with HID defines. Included state checking for Aux gyro and accel sensors. * Remove USB report repeat sample code * Added haptic enable state checks on most modes supporting it * Clean up debug code for PS4 expansion * Fix tabs for keyboard host mouse definitions * Started cleaning up naming of PS3 report IDs for documentation. Removed btaddr values for actual PS3 devices. * Removed hard-coded data for BT device details (0xF2) in favor of a data struct. Randomized BT addresses on start for 0xF2 and 0xF5 reports. * Update all drivers to remove feature data parameter in process(). Added player ID & LED data to main Aux structure. Set default values of zero on integer Aux values. Deprecated Storage::*FeatureData methods in favor of Aux values. * Updated DRV8833 to validate left/right motor pins and enable the Aux haptics if valid. * Aligned forced player number to new Aux storage, but functionally still not working as expected. * Updated XInput, PS3 & PS4 feature outputs to store LED & rumble status on processed gamepad. * Added new speed settings and a custom blink timing mode to PlayerLEDs. Added on/off blink timing to DS4 lightbar usage in RGB PLEDs. * Added PS4 configuration switch between Console and Emulation modes * Added PS4 ID mode help text and included option in PS5 mode. * Removed XInput reference from Player LED as other modes now make use of it. * Set active state to true when Wii gyro/accel sensors are being fed data
- Loading branch information
1 parent
1848523
commit 32be222
Showing
75 changed files
with
2,603 additions
and
727 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.