Skip to content
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

Xbox One Support (Passthrough Dongle Required) #671

Merged
merged 52 commits into from
Dec 20, 2023

Conversation

arntsonl
Copy link
Contributor

Support for the Xbox One (w/ an attached supported dongle).

This adds support to the Xbox One console as well as Windows in Xbox One mode.

GP2040-CE handles the authentication layer as an entirely man-in-the-middle stack and uses a shared authentication buffer to pass up to 1024 bytes back and forth between the console and dongle.

This commit includes an entirely custom, from-scratch XGIP protocol parser.

Currently support dongles: Magicboots Xbox One, Magic-X

Not supported: real controllers, other dongles. We will try to get these working but this is the initial release.

ImgBotApp and others added 30 commits November 21, 2023 03:36
*Total -- 17,269.00kb -> 14,501.79kb (16.02%)

/site/docs/assets/images/gpc-add-ons-input-history.png -- 6.80kb -> 3.09kb (54.57%)
/configs/OpenCore0WASD/assets/Open_Core0_WASD_pinout.png -- 61.94kb -> 29.30kb (52.69%)
/configs/OpenCore0/assets/Open_Core0_WASD_pinout.png -- 61.94kb -> 29.30kb (52.69%)
/configs/RanaTadpole/assets/RanaTadpole_buttons.png -- 173.20kb -> 109.41kb (36.83%)
/configs/ReflexEncodeV2.0/assets/ReflexBoard_V2.png -- 3,498.35kb -> 2,412.30kb (31.04%)
/site/docs/assets/images/gpc-add-ons-keyboard-host-configuration.png -- 62.86kb -> 43.65kb (30.57%)
/site/docs/assets/images/gpc-macros-input-line.png -- 25.08kb -> 17.43kb (30.5%)
/site/docs/assets/images/gpc-keyboard-mapping.png -- 49.17kb -> 34.21kb (30.43%)
/site/docs/assets/images/gpc-backup-and-restore.png -- 13.17kb -> 9.25kb (29.75%)
/site/docs/assets/images/gpc-macros.png -- 88.21kb -> 62.03kb (29.68%)
/site/docs/assets/images/gpc-hotkey-settings.png -- 86.91kb -> 61.12kb (29.67%)
/site/docs/assets/images/gpc-add-ons-focus-mode.png -- 15.88kb -> 11.31kb (28.81%)
/site/docs/assets/images/gpc-restore.png -- 25.15kb -> 17.93kb (28.7%)
/site/docs/assets/images/gpc-home.png -- 58.23kb -> 41.75kb (28.3%)
/site/docs/assets/images/gpc-backup.png -- 24.80kb -> 17.79kb (28.26%)
/site/docs/assets/images/gpc-add-ons-tilt.png -- 49.57kb -> 35.71kb (27.96%)
/site/docs/assets/images/gpc-add-ons-snespad-input-pinout.svg -- 11.18kb -> 8.18kb (26.81%)
/site/docs/assets/images/gpc-profile-settings.png -- 64.89kb -> 47.94kb (26.12%)
/site/docs/assets/images/gpc-add-ons-dual-directional.png -- 16.54kb -> 12.26kb (25.89%)
/site/docs/assets/images/gpc-add-ons-player-number.png -- 22.67kb -> 16.83kb (25.77%)
/site/docs/assets/images/gpc-add-ons-ps4-mode.png -- 44.27kb -> 33.09kb (25.25%)
/site/docs/assets/images/gpc-add-ons-ps-passthrough.png -- 24.37kb -> 18.38kb (24.57%)
/configs/Liatris/assets/Liatris.png -- 759.92kb -> 581.83kb (23.44%)
/site/docs/assets/images/gpc-documentation-current-version.png -- 4.06kb -> 3.11kb (23.36%)
/site/docs/assets/images/gpc-add-ons-joystick-slider.png -- 20.35kb -> 15.63kb (23.23%)
/site/docs/assets/images/wii-extension-controllers/turntable.svg -- 19.46kb -> 15.65kb (19.59%)
/site/docs/assets/images/gpc-documentation-next-version.png -- 4.68kb -> 3.78kb (19.34%)
/site/docs/assets/gp2040-ce-placeholder.png -- 36.97kb -> 30.24kb (18.22%)
/site/docs/assets/images/wii-extension-controllers/taiko.svg -- 12.77kb -> 10.73kb (15.93%)
/site/docs/assets/boards/PicoW.jpg -- 71.43kb -> 60.90kb (14.74%)
/site/docs/assets/images/wii-extension-controllers/classic.svg -- 30.16kb -> 25.95kb (13.94%)
/site/static/img/gp2040-ce-logo.svg -- 1,228.80kb -> 1,059.02kb (13.82%)
/site/docs/assets/images/wii-extension-controllers/guitar.svg -- 25.92kb -> 22.51kb (13.15%)
/site/docs/assets/images/wii-extension-controllers/nunchuck.svg -- 25.25kb -> 22.32kb (11.64%)
/site/docs/assets/images/gpc-add-ons-wii-extensions.png -- 85.62kb -> 76.22kb (10.98%)
/configs/RP2040AdvancedBreakoutBoardUSBPassthrough/assets/RP2040 Advanced Breakout Board - Passthrough.jpg -- 3,150.54kb -> 2,827.79kb (10.24%)
/configs/OpenCore0/assets/Open_Core0_WASD.jpg -- 3,533.08kb -> 3,219.62kb (8.87%)
/configs/OpenCore0WASD/assets/Open_Core0_WASD.jpg -- 3,533.08kb -> 3,219.62kb (8.87%)
/site/docs/assets/boards/Liatris.jpg -- 10.05kb -> 9.22kb (8.31%)
/site/docs/assets/images/wii-extension-controllers/drums.svg -- 46.31kb -> 43.46kb (6.16%)
/site/docs/assets/boards/ReflexCtrlSNES.jpg -- 14.82kb -> 14.03kb (5.37%)
/site/docs/assets/boards/OpenCore0.jpg -- 22.83kb -> 21.86kb (4.25%)
/site/docs/assets/boards/FlatboxRev5Southpaw.jpg -- 20.13kb -> 19.39kb (3.71%)
/site/docs/assets/boards/KeyboardConverter.jpg -- 18.39kb -> 17.99kb (2.2%)
/site/docs/assets/boards/SGFDevices.jpg -- 14.18kb -> 13.87kb (2.2%)
/site/docs/assets/boards/OpenCore0WASD.jpg -- 11.63kb -> 11.45kb (1.59%)
/site/docs/assets/boards/ReflexEncode_v2.0.jpg -- 37.80kb -> 37.80kb (0.01%)
/site/docs/assets/boards/RP2040AdvancedBreakoutBoardUSBPassthrough.jpg -- 45.57kb -> 45.57kb (0.01%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
[ImgBot] Optimize images
… a hack to give direct access to the xbox auth passthrough which will need to be cleaned. Some other hacks and what not, getting closer but VERY much a PoC do not use.
… lots of hacks but we are auth'ing in Windows
*Total -- 7,719.41kb -> 5,978.77kb (22.55%)

/configs/Haute42/assets/Haute42_logo.png -- 11.96kb -> 3.55kb (70.33%)
/configs/Haute42/assets/Haute42_T16.png -- 50.72kb -> 19.89kb (60.78%)
/configs/SGFBridget/assets/SGF_Logo.png -- 14.39kb -> 6.05kb (57.92%)
/configs/SGFFaust/assets/SGF_Logo.png -- 14.39kb -> 6.05kb (57.92%)
/configs/SGFFaust/assets/SGF_Faust_Layout.png -- 154.32kb -> 70.79kb (54.13%)
/configs/Haute42/assets/Haute42_Mini.png -- 29.51kb -> 14.34kb (51.41%)
/configs/Haute42/assets/Haute42_G16.png -- 44.83kb -> 28.07kb (37.39%)
/configs/Haute42/assets/Haute42_G13.png -- 39.38kb -> 24.97kb (36.58%)
/configs/Haute42/assets/Haute42_G12.png -- 36.26kb -> 23.24kb (35.91%)
/configs/Haute42/assets/Haute42_T13.png -- 44.24kb -> 29.54kb (33.24%)
/configs/SGFBridget/assets/SGF_Bridget.png -- 2,455.65kb -> 1,787.95kb (27.19%)
/configs/SGFFaust/assets/SGF_Faust.png -- 3,513.55kb -> 2,742.10kb (21.96%)
/configs/Haute42/assets/Haute42_Mini_series.png -- 512.67kb -> 436.98kb (14.76%)
/configs/Haute42/assets/Haute42_G_series.png -- 356.78kb -> 350.79kb (1.68%)
/configs/Haute42/assets/Haute42_T_series.png -- 440.77kb -> 434.46kb (1.43%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
[ImgBot] Optimize images
@arntsonl arntsonl marked this pull request as ready for review December 18, 2023 01:15
Copy link
Contributor Author

@arntsonl arntsonl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looked everything over, looking awesome!

@arntsonl arntsonl merged commit feae683 into OpenStickCommunity:main Dec 20, 2023
67 checks passed
@arntsonl arntsonl deleted the xbone_support branch January 20, 2024 21:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants