-
Notifications
You must be signed in to change notification settings - Fork 515
Add manual calibration feature for analog sticks #1528
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
Conversation
Features: - Add independent manual calibration for analog sticks 1 and 2 - Implement 4-step calibration process (top-left, top-right, bottom-left, bottom-right) - Add complete i18n support (English/Chinese) for calibration messages - Support parameterized messages for dynamic content Technical changes: - Add joystick_center_x/y/x2/y2 fields to config proto - Add manual calibration API endpoints (/api/getJoystickCenter, /api/getJoystickCenter2) - Update analog input logic to support manual calibration values - Add comprehensive frontend calibration interface with step-by-step guidance - All code comments written in English as per project standards - Clean code without duplicate comments or code blocks
|
Thank you for submitting this!! I'm going to wait on reviewing/merging until after our release. |
|
It looks like its working but I want to touch up the UI a bit. I'll see if I can mock up a modal so you can just rotate the stick like Microsoft or any of the calibration software does and real-time feed it using an adc_read. |
|
Thank you for making it even better. |
arntsonl
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm going to merge this in and clean up as a new PR. I really like this feature but I've been slacking on adding the web revisions
* 🇫🇷 Add French translation of the web interface. (#1518) * Ajout de la traduction française * Maj Traductions * MAJ language ko-KR * Corrections mineures et màj v.0.7.12 * Mise à jour de la traduction avant import de la traduction Turque * Updated after the integration of the Turkish translation --------- Co-authored-by: Luke A <arntsonl@gmail.com> * Simplify build process for alternate configs (#1551) * Updated CMakeLists.txt to include PICO_BOARD specific configs into the build process. * Removed PicoW and RP2350 rule exceptions from CMake actions. Introduced cmake files for PicoW and FlatboxRev8 configs. * Changed PicoW build not use Pico2 config. * Add new languages to checklocale (#1550) * add tr-TR to checklocale * add fr-FR to checklocale * Make profile label render consistently when enabled switch is present (#1568) Make profile render consistently when enabled switch is present * Bump actions, inline pico-sdk build step, fix GCC MD5 mismatch issue (#1563) * Add keyboard mappings to export/import (#1564) * add more display macros (#1570) Add more display macros for board configs. * add display settings for osumgp-rp2040 (#1574) * add more display macros Add more display macros for board configs. * add display settings for osumgp-rp2040 Add display settings for osumgp-rp2040 for use with SparkFun LCD-22495 which is non-standard size * Add manual calibration feature for analog sticks (#1528) feat: Add manual calibration feature for analog sticks Features: - Add independent manual calibration for analog sticks 1 and 2 - Implement 4-step calibration process (top-left, top-right, bottom-left, bottom-right) - Add complete i18n support (English/Chinese) for calibration messages - Support parameterized messages for dynamic content Technical changes: - Add joystick_center_x/y/x2/y2 fields to config proto - Add manual calibration API endpoints (/api/getJoystickCenter, /api/getJoystickCenter2) - Update analog input logic to support manual calibration values - Add comprehensive frontend calibration interface with step-by-step guidance - All code comments written in English as per project standards - Clean code without duplicate comments or code blocks Co-authored-by: Leonxis <leonxis@example.com> * Change lock hotkeys switch to just be enabled similar to other toggles (#1558) * Update PXPGamepad BoardConfig.h (#1567) This fixes the default config for the second analog stick. This is needed because of this change: #1401 * Add config for Haute42}COSMOX C-AT (#1579) This PR adds a config for the Haute42}COSMOX C-AT * update osumgp board config (#1582) add FN button * Add Switch Pro and XInput (Xbox 360) support to Gamepad USB Host add-on (#1573) * Switch Pro USB Host implementation Add support for the Switch Pro controller in the Gamepad USB host add-on. Rumble, player LEDs work. * Improve analog trigger driver consistency Treat analog triggers >0 as digital enabled everywhere. * Fix xinput host driver endpoint detection Previously it did not indentify endpoint buffer sizes correctly. Refactor the endpoint detection logic. Add `tuh_xinput_wait_for_tx` function for blocking until report is sent off completely. * XInput (Xbox 360) USB Host implementation Add support for generic XInput controllers in the gamepad usb host add-on. Rumble and player LED works. * Move driver reports to appropriate descriptor files Move rumble, LED, init reports to descriptor headers. * TinyUSB host include hot-fix for main --------- Co-authored-by: MM Workshop <mikael@mmwork.shop> Co-authored-by: Mike Parks <mikepparks@gmail.com> Co-authored-by: mizma <omoikane@path-works.net> Co-authored-by: Pelsin <ian@vidales.se> Co-authored-by: NickGuyver <akaguy@gmail.com> Co-authored-by: leonxis <31850137+leonxis@users.noreply.github.com> Co-authored-by: Leonxis <leonxis@example.com> Co-authored-by: MegaBitmap <93689649+MegaBitmap@users.noreply.github.com> Co-authored-by: TheTrain <32771064+TheTrainGoes@users.noreply.github.com> Co-authored-by: grialion <48643945+grialion@users.noreply.github.com>
Features:
Technical changes: