-
Notifications
You must be signed in to change notification settings - Fork 353
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Add-On: Rotate Input + Tilt Input = Analog Modification Input #558
Conversation
I want to add that Rotate feature only works when DPad mode is either set as L Stick or R Stick. If DPad is set to function as a DPad, the Rotate feature will have no impact, as expected. By using both Rotate 1 & 2, users will have access to a total of 24 different angles on their sticks, a meaningful improvement from the 8-way stick. |
Could you possibly elaborate on use cases for this? Seems like this would be better covered by the Analog addon that already exists with improvements to Invert options. |
Edit: Hide the old post Old post## Analog Modification Input ![settings](https://github.com/OpenStickCommunity/GP2040-CE/assets/16070158/82b5cef2-309f-4341-8872-f6edbe1a00bf) ### Tilt Tilt 1 and Tilt 2 buttons, when pressed with directional buttons, adjust the analog values. Default settings tilt the Left stick at 65% for Tilt 1 and 35% for Tilt 2. The Right stick shifts down for Tilt 1 and up for Tilt 2 by default. Tilt 1 has priority over Tilt 2 when modifying Left Stick. Pressing Tilt 1 and Tilt 2 simultaneously with Right Stick will function as the D-Pad. Tilt has priority over Rotate. * `Tilt 1 Pin` - The GPIO pin used for the Tilt 1 direction. * `Tilt 2 Pin` - The GPIO pin used for the Tilt 2 direction. * `Tilt 1 X-Axis Factor for Left Stick` * `Tilt 1 Y-Axis Factor for Left Stick` * `Tilt 1 X-Axis Factor for Right Stick` * `Tilt 1 Y-Axis Factor for Right Stick` * `Tilt 2 X-Axis Factor for Left Stick` * `Tilt 2 Y-Axis Factor for Left Stick` * `Tilt 2 X-Axis Factor for Right Stick` * `Tilt 2 Y-Axis Factor for Right Stick`RotateRotate 1 and Rotate 2 buttons, when pressed with directional buttons, adjust the analog values.
Analog Stick PinsUser can also set dedicated analog stick pins to work with Tilt and Rotate features.
SOCD
|
* Fixes Macro type Press and Loop issue (OpenStickCommunity#587) * Fix looping macro first input line duration error * Fix Press macro interruptible check with debounce * Remove onboard LED pin definition from devices without an onboard LED (OpenStickCommunity#590) --------- Co-authored-by: deeebug <[email protected]> Co-authored-by: TheTrain <[email protected]>
So far, my biggest concern with all of this is the unrequested changing of names on things that do not need to be changed just to make the desired adjustments. It muddies the waters for the sake of semantics. I see more commits here that change what exists in name only than I do things that actually improve or modify functionality. My advice would be to step back, reincorporate your actual changes from this PR into the existing addon as a new PR, and leave the structural and semantic concepts for the team to decide. |
Updated proto in commit 3dbb341. Just want to note that following fields are left untouched but no longer used. Legacy pronto fieldsoptional int32 tiltFunctionPin = 4;optional int32 tiltLeftAnalogUpPin = 5; optional int32 tiltLeftAnalogDownPin = 6; optional int32 tiltLeftAnalogLeftPin = 7; optional int32 tiltLeftAnalogRightPin = 8; optional int32 tiltRightAnalogUpPin = 9; optional int32 tiltRightAnalogDownPin = 10; optional int32 tiltRightAnalogLeftPin = 11; optional int32 tiltRightAnalogRightPin = 12; optional SOCDMode tiltSOCDMode = 13; |
Let me first say thank you for adding onto the tilt add-on! After some thought, I'm going to close this PR and have you submit a new one with just the rotation changes with the following requests:
|
Edit: Hide the old post
Old post
## Rotate InputRotate 1 Pin
- The GPIO pin used for the Rotate 1 (Clockwise Rotation).Rotate 1 Degree for Left Stick
Rotate 1 Degree for Right Stick
Rotate 2 Pin
- The GPIO pin used for the Rotate 2 (Counter Clockwise Rotation).Rotate 2 Degree for Left Stick
Rotate 2 Degree for Right Stick
Rotate SOCD Mode
- Choose the default SOCD Cleaning Mode (Neutral, Last Win, Up Priority).The Rotate feature in this add-on allows users to control analog stick values on both Left and Right Analogs.
Rotate 1 and Rotate 2 buttons, when pressed with directional buttons, adjust the analog values, with Rotate 1 makes your sticks rotate clockwise and Rotate 2 makes them rotate counter clockwise.
The angle can be adjusted in the web configurator. If you set the rotation angle to be 180, you will effectively swap your Up&Down and Left&Right for your sticks.
Additionally, pressing Rotate 1 and Rotate 2 simultaneously allows the Right stick to function as the D-Pad directions.