diff --git a/README.md b/README.md index d30659c..f65dc59 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ ## Links -[Downloads](https://gp2040-ce.info/downloads/download-page) | [Installation](https://gp2040-ce.info/installation) | [Wiring](https://gp2040-ce.info/controller-build/wiring) | [Usage](https://gp2040-ce.info/usage) | [FAQ](https://gp2040-ce.info/faq/faq-general) | [GitHub](https://github.com/OpenStickCommunity/GP2040-CE) +[Downloads](https://gp2040-ce.info/downloads) | [Installation](https://gp2040-ce.info/installation) | [Wiring](https://gp2040-ce.info/controller-build/wiring) | [Usage](https://gp2040-ce.info/usage) | [FAQ](https://gp2040-ce.info/faq/faq-general) | [GitHub](https://github.com/OpenStickCommunity/GP2040-CE) Full documentation can be found at [https://gp2040-ce.info](https://gp2040-ce.info) diff --git a/docs/add-ons/ps-passthrough.mdx b/docs/add-ons/ps-passthrough.mdx deleted file mode 100644 index bb47acd..0000000 --- a/docs/add-ons/ps-passthrough.mdx +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: PS Passthrough -tags: - - PS4 - - PS5 -pagination_next: null -pagination_prev: null -description: "Add-on to provide Playstation 4 and select Playstation 5 games on a GP2040 controller through the use of a passthrough authentication device attached to a USB host port" ---- - -import InstallUSBHostPort from "../snippets/_add-usb-host-port.mdx"; - -# PS Passthrough - -Purpose: This add-on is intended to allow you to use a licensed 3rd party, "categorized" device to authenticate with a Playstation 4 or Playstation 5. - -![GP2040-CE Configurator - PS Passthrough](../assets/images/gpc-add-ons-ps-passthrough.png) - -## Web Configurator Options - -:::info GPIO Pin Assignment - -The Data, 5V Enable, and Pin Orientation options for USB host ports are now configured in [`Configuration > Peripheral Mapping - USB Host`](../web-configurator/menu-pages/03-peripheral-mapping.mdx#usb-host). - -::: - -:::caution - -If you have PS Passthrough enabled, you must turn off the `PS4 Mode` add-on as the two will not work together. - -Ensure that, under the `Settings` section, you have set the input mode as `PS4` and the `Controller Mode` as `Arcade Stick`. The PS Passthrough add-on will not work otherwise. - -::: - -## Hardware - -### Requirements - -This add-on requires that you have a USB host port available on your device connected to GPIO pins on the RP2040 board. There are a number of methods to do so. - -See [USB Host Port Installation](../controller-build/usb-host.mdx) for more information on the requirements for adding a USB host port to your controller. - -A passthrough authentication device is also required for authentication of the controller by the console. See [FAQ: Console Compatibility](../faq/faq-console-compatibility.mdx#what-controller-or-dongle-do-i-use-for-ps-passthrough) for more information on which passthrough authentication devices will work for this add-on. - -### Installation - - - -## Miscellaneous Notes - -This add-on is not compatible with the [PS4 Mode](./ps-passthrough.mdx) add-on. In order to use one, the other must be disabled. diff --git a/docs/add-ons/ps4-mode.mdx b/docs/add-ons/ps4-mode.mdx deleted file mode 100644 index 91a1999..0000000 --- a/docs/add-ons/ps4-mode.mdx +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: PS4 Mode -tags: - - PS4 -pagination_next: null -pagination_prev: null -description: "Add-on to use GP2040-CE as native PS4 device" ---- - -# PS4 Mode - -Purpose: This add-on is intended to allow you to use your GP2040 device on a Playstation 4 and avoid the 8 minute timeout without the need for converters or passthrough authentication. - -![GP2040-CE Configurator - PS4 Mode](../assets/images/gpc-add-ons-ps4-mode.png) - -## Web Configurator Options - -- `Private Key (PEM)` - Choose your PEM file. -- `Serial Number (16 Bytes in Hex Ascii)` - Choose your serial number file. -- `Signature (256 Bytes in Binary)` - Choose your signature file. - -:::danger Warning - -The GP2040-CE project will not provide any files or information related to acquiring these keys and files under any circumstances. - -Do not ask via any of communication channels (e.g. social media, direct messages, Github Issues, GP2040-CE Discord) as this will result in a permanent blacklist/ban. - -::: - -## Hardware - -### Requirements - -None. - -### Installation - -None. - -## Miscellaneous Notes - -This add-on is not compatible with the [PS Passthrough](./ps-passthrough.mdx) add-on. In order to use one, the other must be disabled. - -When using the device in PS4 mode with this PS4 Mode add-on to avoid the 8 minute timeout on PS4, the authentication process on Core 1 will result in occasional freezing of the OLED screen or the RGB LEDs. diff --git a/docs/add-ons/xbox-one-passthrough.mdx b/docs/add-ons/xbox-one-passthrough.mdx deleted file mode 100644 index dc85603..0000000 --- a/docs/add-ons/xbox-one-passthrough.mdx +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: Xbox One Passthrough -# tags: -# - -pagination_next: null -pagination_prev: null -description: "Add-on to provide support for Xbox One and Xbox Series consoles on a GP2040 controller through the use of a passthrough authentication device attached to a USB host port" ---- - -import InstallUSBHostPort from "../snippets/_add-usb-host-port.mdx"; - -# Xbox One Passthrough - -Purpose: This add-on is intended to provide support for Xbox One and Xbox Series consoles on a GP2040 controller through the use of a passthrough authentication device attached to a USB host port. - -![GP2040-CE Configurator - PS Passthrough](../assets/images/gpc-add-ons-xbox-one-passthrough.png) - -## Web Configurator Options - -:::info GPIO Pin Assignment - -The Data, 5V Enable, and Pin Orientation options for USB host ports are now configured in [`Configuration > Peripheral Mapping - USB Host`](../web-configurator/menu-pages/03-peripheral-mapping.mdx#usb-host). - -::: - -:::caution - -If you have Xbox One Passthrough enabled, you use the [`Xbox One`](../usage.mdx#input-modes) input mode in order to utilize this add-on. - -::: - -## Hardware - -### Requirements - -This add-on requires that you have a USB host port available on your device connected to GPIO pins on the RP2040 board. There are a number of methods to do so. - -See [USB Host Port Installation](../controller-build/usb-host.mdx) for more information on the requirements for adding a USB host port to your controller. - -### Installation - - - -## Miscellaneous Notes - -None. diff --git a/docs/assets/images/gpc-hotkey-settings.png b/docs/assets/images/gpc-hotkey-settings.png deleted file mode 100644 index 1c942b8..0000000 Binary files a/docs/assets/images/gpc-hotkey-settings.png and /dev/null differ diff --git a/docs/assets/images/gpc-input-boot-modes.png b/docs/assets/images/gpc-input-boot-modes.png deleted file mode 100644 index 06c9935..0000000 Binary files a/docs/assets/images/gpc-input-boot-modes.png and /dev/null differ diff --git a/docs/assets/images/gpc-keyboard-mapping.png b/docs/assets/images/gpc-keyboard-mapping.png deleted file mode 100644 index 621387a..0000000 Binary files a/docs/assets/images/gpc-keyboard-mapping.png and /dev/null differ diff --git a/docs/assets/images/gpc-settings-boot-input-modes.png b/docs/assets/images/gpc-settings-boot-input-modes.png new file mode 100644 index 0000000..a51c507 Binary files /dev/null and b/docs/assets/images/gpc-settings-boot-input-modes.png differ diff --git a/docs/assets/images/gpc-settings-gamepad.png b/docs/assets/images/gpc-settings-gamepad.png new file mode 100644 index 0000000..9cfa64a Binary files /dev/null and b/docs/assets/images/gpc-settings-gamepad.png differ diff --git a/docs/assets/images/gpc-settings-hotkey.png b/docs/assets/images/gpc-settings-hotkey.png new file mode 100644 index 0000000..08b32c9 Binary files /dev/null and b/docs/assets/images/gpc-settings-hotkey.png differ diff --git a/docs/assets/images/gpc-settings-input-mode.png b/docs/assets/images/gpc-settings-input-mode.png new file mode 100644 index 0000000..255b55c Binary files /dev/null and b/docs/assets/images/gpc-settings-input-mode.png differ diff --git a/docs/assets/images/gpc-settings-keyboard-mapping.png b/docs/assets/images/gpc-settings-keyboard-mapping.png new file mode 100644 index 0000000..2827bf0 Binary files /dev/null and b/docs/assets/images/gpc-settings-keyboard-mapping.png differ diff --git a/docs/assets/images/gpc-settings-ps4-host-usb.png b/docs/assets/images/gpc-settings-ps4-host-usb.png new file mode 100644 index 0000000..9a98d4b Binary files /dev/null and b/docs/assets/images/gpc-settings-ps4-host-usb.png differ diff --git a/docs/assets/images/gpc-settings-ps4-upload-key-files.png b/docs/assets/images/gpc-settings-ps4-upload-key-files.png new file mode 100644 index 0000000..56997f0 Binary files /dev/null and b/docs/assets/images/gpc-settings-ps4-upload-key-files.png differ diff --git a/docs/assets/images/gpc-settings-ps4.png b/docs/assets/images/gpc-settings-ps4.png index 5e3a7a3..29220e8 100644 Binary files a/docs/assets/images/gpc-settings-ps4.png and b/docs/assets/images/gpc-settings-ps4.png differ diff --git a/docs/assets/images/gpc-settings-ps5-host-usb.png b/docs/assets/images/gpc-settings-ps5-host-usb.png new file mode 100644 index 0000000..6d23325 Binary files /dev/null and b/docs/assets/images/gpc-settings-ps5-host-usb.png differ diff --git a/docs/assets/images/gpc-settings-ps5.png b/docs/assets/images/gpc-settings-ps5.png new file mode 100644 index 0000000..6d23325 Binary files /dev/null and b/docs/assets/images/gpc-settings-ps5.png differ diff --git a/docs/assets/images/gpc-settings-xbox-one.png b/docs/assets/images/gpc-settings-xbox-one.png new file mode 100644 index 0000000..40386f4 Binary files /dev/null and b/docs/assets/images/gpc-settings-xbox-one.png differ diff --git a/docs/faq/faq-console-compatibility.mdx b/docs/faq/faq-console-compatibility.mdx index a5ae3f0..7101027 100644 --- a/docs/faq/faq-console-compatibility.mdx +++ b/docs/faq/faq-console-compatibility.mdx @@ -9,19 +9,22 @@ toc_max_heading_level: 4 description: "FAQ related to Console Compatibility. Now supports Playstation 4, Playstation 5, Xbox One, Xbox Series S, and Xbox Series S" --- +import Tabs from "@theme/Tabs"; +import TabItem from "@theme/TabItem"; + # FAQ: Console Compatibility GP2040-CE supports a wide variety of consoles and the most common questions regarding console compatibility are listed below. ## General -### Is there additional latency when using the PS Passthrough or Xbox One Passthrough add-ons? +### Is there additional latency when using the Host USB authentication for PS4, PS5, and Xbox One? -As long as PS/Xbox One Passthrough is configured correctly and the passthrough authentication device is properly plugged into the controller, there should be no additional latency. The passthrough authentication device is used solely for authentication without processing inputs and inputs come directly from the GP2040-CE firmware. +As long as Host USB authentication is configured correctly and the passthrough authentication device is properly plugged into the controller, there should be no additional latency. The passthrough authentication device is used solely for authentication without processing inputs and inputs come directly from the GP2040-CE firmware. -### How do I plug in my passthrough authentication device for PS/Xbox One Passthrough? +### How do I plug in my passthrough authentication device for PS4, PS5, and Xbox One Input Modes? -When using converters and adapters with PS/Xbox One Passthrough add-ons, you plug the device directly into the controller through a USB host port. You do not plug anything else into the converter/adapter. +When using converters and adapters with PS4, PS5, and Xbox One Input Modes, you plug the device directly into the controller through a USB host port. You do not plug anything else into the converter/adapter. ```mermaid graph LR @@ -32,7 +35,7 @@ Converter/Adapter/Dongle -- USB Port
on controller --> Controller([Controll :::caution Incorrect Usage of Converters/Adapters with Passthrough Add-ons -Many users incorrectly plug their controllers into the converters/adapters and then plug the converter/adapter into the console. This is not how Passthrough is intended to be used and will result in additional latency as inputs are processed by the converter/adapter. +Many users incorrectly plug their controllers into the converters/adapters and then plug the converter/adapter into the console. This is not how passthrough authentication is intended to be used and will result in additional latency as inputs are processed by the converter/adapter. Do not plug the converter/adapter as shown below. @@ -47,9 +50,9 @@ Controller([Controller]) -- USB Port
on Converter --> Converter/Adapter/Don ### Why does my controller stop responding after a while on PS4 or PS5? -PlayStation 4 and PlayStation 5 use an authentication mechanism to ensure only authorized controllers are used on the console. If a device doesn't implement this authentication mechanism the controller is subject to an 8-minute timeout. +PlayStation 4 and PlayStation 5 use an authentication mechanism to ensure only authorized controllers are used on the console. If a device doesn't implement this authentication mechanism, the controller is subject to an 8-minute timeout. -Using PS4 mode on a PC does not result in any timeout behavior, but note that XInput is the suggested mode on PC for best compatibility. +Using PS4 Input Mode on a PC does not result in any timeout behavior, but note that XInput is the suggested mode on PC for best compatibility. ### What is the 8-Minute Timeout? @@ -66,35 +69,51 @@ The 8-minute timeout works like this: GP2040-CE provides multiple methods for you to avoid the 8-Minute Timeout. The recommended method will depend on whether you are using your controller on Playstation 4 or Playstation 5. -For PS4, you can either use the [PS4 Mode add-on](../add-ons/ps4-mode.mdx) or the [PS Passthrough add-on](../add-ons/ps-passthrough.mdx). +For PS4, you can either use the [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) or the [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings). -For PS5 you can **only** use the [PS Passthrough add-on](../add-ons/ps-passthrough.mdx). +For PS5 you can **only** use the [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings). ### How do I get my GP2040-CE unit to work on a Playstation 4 or Playstation 5? -For Playstation 4 compatibility, you will need to use either the [PS4 Mode add-on](../add-ons/ps4-mode.mdx) or the [PS Passthrough add-on](../add-ons/ps-passthrough.mdx). If you use PS Passthrough, you will need to disable the PS4 Mode add-on and enable the PS Passthrough add-on. You will also need to ensure that under the `Settings` section you have chosen `PS4` as your input mode and either `Controller` or `Arcade Stick`. - -For Playstation 5 compatibility, you **cannot** use the PS4 Mode add-on. You will need to disable the PS4 Mode add-on and then enable the PS Passthrough add-on. You will also need to ensure that under the `Settings` section you have chosen `PS4` as your input mode and picked if you want the GP2040-CE unit to function as a `Arcade Stick`. +For Playstation 4 compatibility, you will need to use either the [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) or the [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings). -:::note +For Playstation 5 compatibility, you **cannot** use the [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings). You will need to use the [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings) -Setting it as `Controller` will not work on Playstation 5 using the PS Passthrough add-on. +### What is the PS4 Input Mode? -::: +The PS4 Input Mode is an input mode that grants GP2040-CE compatibility with the Playstation 4 console. You can either use uploaded key files or a Host USB port with a passthrough authentication device to bypass the 8-minute Timeout. -### What is PS4 Mode? + -PS4 mode is an add-on that grants GP2040-CE compatibility with the Playstation 4 console. Using this add-on requires a few files that can be acquired from a legitimate DualShock 4 controller. + -- Private Key -- Serial Number -- Signature +- `Private Key (PEM)` - Choose your PEM file. +- `Serial Number (16 Bytes in Hex Ascii)` - Choose your serial number file. +- `Signature (256 Bytes in Binary)` - Choose your signature file. It was built using the efforts of another open source firmware project named [Passing Link](https://github.com/passinglink/passinglink). The team behind Passing Link are in no way affiliated with the GP2040-CE project, however the work and information they've made available was greatly appreciated so we could bring this highly-requested feature to our users. -For more information, refer to [PS4 Mode](../add-ons/ps4-mode.mdx) in the `Web Configurator - Add-ons` section of the documentation. +For more information, refer to [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) in the `Web Configurator - Settings` section of the documentation. + + + + + +:::note Additional Hardware Required + +- [USB Host Port](../controller-build/usb-host.mdx) +- PS4/PS5 Authentication Device + +::: + +In order to use this setting, a USB Peripheral must be configured in [Web Configurator > Peripheral Mapping > USB Host](../web-configurator/menu-pages/03-peripheral-mapping.mdx#usb-host). + +Once the USB Peripheral is configured, you need to plug in the dongle, converter, or categorized licensed PS4 controller into the USB A port on your GP2040-CE device. -#### How do I get the necessary keys and files for the PS4 Mode add-on? + + + +#### How do I get the necessary keys and files for the PS4 Input Mode - Uploaded Key File? The GP2040-CE project will not provide **_any_** files or information related to acquiring these keys and files. @@ -104,11 +123,13 @@ The GP2040-CE project will not provide **_any_** files or information related to ::: -#### How do I know the PS4 Mode add-on is working? +### What is the PS5 Input Mode? + +PS5 Input Mode is an input mode that grants GP2040-CE compatibility with the Playstation 4 or Playstation 5 console by using another controller or dongle to answer authentication. -If you're using an OLED display, the input mode will change from `PS4` to `PS4:AS` to indicate your device has successfully authenticated with the PS4/PS5 console. Otherwise the only way to tell is to plug the controller into a PS4 and wait 8 minutes to verify that the controller is still responding afterwards. + -### What is PS Passthrough? + :::note Additional Hardware Required @@ -117,11 +138,16 @@ If you're using an OLED display, the input mode will change from `PS4` to `PS4:A ::: -PS Passthrough is an add-on that grants GP2040-CE compatibility with the Playstation 4 or Playstation 5 console by using another controller or dongle to answer authentication +In order to use this setting, a USB Peripheral must be configured in [Web Configurator > Peripheral Mapping > USB Host](../web-configurator/menu-pages/03-peripheral-mapping.mdx#usb-host). + +Once the USB Peripheral is configured, you need to plug in the dongle, converter, or categorized licensed PS4 controller into the USB A port on your GP2040-CE device. -For more information, refer to [PS Passthrough](../add-ons/ps-passthrough.mdx) in the `Web Configurator - Add-ons` section of the documentation. + + -#### What controller or dongle do I use for PS Passthrough? +For more information, refer to [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings) in the `Web Configurator - Settings` section of the documentation. + +#### What controller or dongle do I use for Host USB with PS4 and PS5 Input Modes? :::note @@ -143,7 +169,7 @@ Because your experience and purchased products may vary, GP2040-CE will not prov :::caution Incompatible Controllers -The following controllers are not supported at all with the PS Passthrough add-on +The following controllers are not supported at all with the PS4 and PS5 Input Modes - DualShock 4 - DualSense @@ -152,13 +178,22 @@ The following controllers are not supported at all with the PS Passthrough add-o ::: -#### How do I know the PS Passthrough add-on is working? +#### How do I know the PS4 or PS5 Input Mode is working? + +If you're using an OLED display, + +- **PS4 Input Mode** - The displayed input mode will change from `PS4` to `PS4:AS` to indicate your device has successfully authenticated with the PS4 console +- **PS5 Input Mode**- the input mode will change from `PS5` to `PS5:AS` to indicate your device has successfully authenticated with the PS4 console -Because of the numerous devices to be used for passthrough authentication, there is not just one way to verify that the add-on is working without plugging the controller into a PS4 or PS5 and waiting 8 minutes to verify that the controller is still responding afterwards. +Otherwise the common option is to plug the controller into a PS4 or PS5 and wait 8 minutes to verify that the controller is still responding afterwards. + +:::info For the MagicBoots Adapter and N5 listed above, there is an indicator light on the dongle that should flash on boot and then become solid after a moment. If the indicator light is on and solid, your controllers _should_ be compatible with PS5 at that point and not time out. -#### Can I remove the PS Passthrough authentication device once I have plugged in my controller? +::: + +#### Can I remove the PS4/PS5 authentication device once I have plugged in my controller? Playstation consoles repeatedly send authorization requests every 30 seconds or so. If the request fails (i.e. there is no passthrough authentication device plugged in), in about 8 minutes, the controller will stop responding. Once this happens, the only option is to either reset the controller or unplug and then plug the controller back into the console. @@ -166,9 +201,9 @@ Playstation consoles repeatedly send authorization requests every 30 seconds or ### How do I get my GP2040-CE unit to work on a Xbox One, Xbox Series S, or Xbox Series X? -For Xbox One, Xbox Series S, or Xbox Series X compatibility, you will need to use the [Xbox One Passthrough add-on](../add-ons/xbox-one-passthrough.mdx). +For Xbox One, Xbox Series S, or Xbox Series X compatibility, you will need to use the [Xbox One Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-xbox-one-settings) -### What is Xbox One Passthrough? +### What is the Xbox One Input Mode? :::caution Additional Hardware Required @@ -177,13 +212,13 @@ For Xbox One, Xbox Series S, or Xbox Series X compatibility, you will need to us ::: -Xbox One Passthrough is an add-on that grants GP2040-CE compatibility with the Xbox One, Xbox Series S, or Xbox Series X by using another controller or dongle to answer authentication +Xbox One Input Mode grants GP2040-CE compatibility with the Xbox One, Xbox Series S, or Xbox Series X by using another controller or dongle to answer authentication -For more information, refer to [Xbox One add-on](../add-ons/xbox-one-passthrough.mdx) in the `Web Configurator - Add-ons` section of the documentation. +For more information, refer to [Xbox One Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-xbox-one-settings) in the `Web Configurator - Add-ons` section of the documentation. -### What controller or dongle do I use for Xbox One Passthrough? +### What controller or dongle do I use for Xbox One Input Mode? -Some devices that do work for Xbox One Passthrough are currently limited to the following; +Some devices that do work for Xbox One Input Mode are currently limited to the following; - [MagicBoots FPS Adapter Joystick Converter for Xbox One](https://www.mayflash.com/product/MAGONE.html) - [Magic-X Wireless Bluetooth USB Adapter](https://www.mayflash.com/product/magic_x.html) @@ -196,14 +231,14 @@ Xbox Wireless Controllers, Xbox One Elite Controllers, and other licensed Xbox O ::: -### How do I know the Xbox One Passthrough add-on is working? +### How do I know the Xbox One Input Mode add-on is working? -Because of the numerous devices to be used for passthrough authentication, there is not just one way to verify that the add-on is working without plugging the controller into a console and attempting to use it. +Because of the numerous devices to be used for passthrough authentication, there is not just one way to verify that the input mode is working without plugging the controller into a console and attempting to use it. For the MagicBoots Adapter listed above, there is an indicator light on the dongle that should flash on boot and then become solid after a moment. If the indicator light is on and solid, your controllers _should_ be compatible and you may use your controller as intended. For the Magic-X Adapter listed above, there is an indicator light on the dongle that will continue flashing after the controller boots, unlike the MagicBoots Adapter. -### Can I remove the Xbox One Passthrough authentication device once I have plugged in my controller? +### Can I remove the Xbox One authentication device once I have plugged in my controller? Xbox One, Xbox Series S, and Xbox Series X consoles only perform the authentication process once when the controller is plugged into the console. Once this occurs, the passthrough authentication device can be removed. However, it is still recommended to keep the device plugged in. diff --git a/docs/faq/faq-general.mdx b/docs/faq/faq-general.mdx index 8510f3e..c1883cb 100644 --- a/docs/faq/faq-general.mdx +++ b/docs/faq/faq-general.mdx @@ -23,8 +23,8 @@ This will depend on the platform you will be playing on: If you have a configured USB Host port, Passthrough enabled, and an appropriate authentication device, you can use a GP2040-CE controller in the following situations. -- Use `PS4 Mode` with [PS Passthrough](../add-ons/ps-passthrough.mdx) on PS5 games on PS5 systems that support "categorized" controller (e.g. arcade stick, racing wheel, flight sim joystick, etc.) -- Use `Xbox One Mode` with [Xbox One Passthrough](../add-ons/xbox-one-passthrough.mdx) on Xbox One, Xbox Series X, and Xbox Series S. +- Use [`PS4 Input Mode`](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) on PS5 games on PS5 systems that support "categorized" controller (e.g. arcade stick, racing wheel, flight sim joystick, etc.) +- Use [`Xbox One Input Mode`](../web-configurator/menu-pages/01-settings.mdx#additional-xbox-one-settings) on Xbox One, Xbox Series X, and Xbox Series S. If you are using a Classic or Mini console, there are additional USB input modes to use with these emulated consoles. @@ -37,12 +37,12 @@ If you are using a Classic or Mini console, there are additional USB input modes ### Does GP2040-CE natively support PS5, Xbox One, or Xbox Series consoles? -These consoles implement security measures that prevent unauthorized accessories from being used. The process of cracking or bypassing that security may not be legal everywhere. These consoles are supported in the future if a user-friendly and completely legal implementation method is found, such as the implementation of [PS4 Mode](../add-ons/ps4-mode.mdx). +These consoles implement security measures that prevent unauthorized accessories from being used. The process of cracking or bypassing that security may not be legal everywhere. These consoles are supported in the future if a user-friendly and completely legal implementation method is found, such as the implementation of [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings). Currently PS5, Xbox One, and Xbox Series consoles are supported through passthrough authentication -- PS5 is at present supported using passthrough authentication only; see [PS Passthrough](../add-ons/ps-passthrough.mdx). -- Xbox One, and Xbox Series consoles are supported using passthrough authentication only; see [Xbox One Passthrough](../add-ons/xbox-one-passthrough.mdx) +- PS5 is at present supported using passthrough authentication only; see [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings). +- Xbox One, and Xbox Series consoles are supported using passthrough authentication only; see [Xbox One Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-xbox-one-settings) ### Can I use multiple controllers with GP2040-CE on the same system? diff --git a/docs/faq/faq-troubleshooting.mdx b/docs/faq/faq-troubleshooting.mdx index 700191d..d709d4f 100644 --- a/docs/faq/faq-troubleshooting.mdx +++ b/docs/faq/faq-troubleshooting.mdx @@ -96,9 +96,9 @@ Depending on how your device hardware is designed, it may not be set up to use a ### Why does my controller stop responding on Playstation 4 or Playstation 5? -Regarding PS4 disconnection issues, verify that you have the [PS4 Mode](../add-ons/ps4-mode.mdx) add-on is enabled with valid authentication files or the [PS Passthrough](../add-ons/ps-passthrough.mdx) add-on is enabled with a valid passthrough authentication device. +Regarding PS4 disconnection issues, verify that you have the [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) with uploaded key files or USB Host with a valid passthrough authentication device. -Regarding PS5 disconnection issues. [PS Passthrough](../add-ons/ps-passthrough.mdx) add-on is enabled with a valid passthrough authentication device. +Regarding PS5 disconnection issues. verify that you have the [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings) with USB Host using a valid passthrough authentication device. For more information, refer to the [PS4/PS5 Compatibility FAQ](../faq/faq-console-compatibility.mdx). @@ -125,19 +125,17 @@ Disconnect your computer from your local network (e.g. unplug the ethernet cable ## Configuration Issues -### Why does PS Passthrough not work on my device? +### Why does PS4 or PS5 Input Mode not work on my device? #### Did not press A1 after connecting the controller. -After connecting a controller that is correctly configured for PS Passthrough, you need to press in order to have the PS4 or PS5 register the controller. Once you have done so, the console should now properly receive inputs from the controller. +After connecting a controller that is correctly configured for PS4 or PS5 Input Mode, you need to press in order to have the PS4 or PS5 register the controller. Once you have done so, the console should now properly receive inputs from the controller. #### The controller mode is incorrectly configured. -If you have PS Passthrough enabled, you must turn off the `PS4 Mode` add-on as the two will not work together. +Ensure that, under the `Settings` section, you have uploaded key files for PS4 or selected Host USB for PS4 and PS5. -Ensure that, under the `Settings` section, you have set the input mode as `PS4` and the `Controller Mode` as `Arcade Stick`. The PS Passthrough add-on will not work otherwise. - -For more information, refer to the [PS Passthrough](../add-ons/ps-passthrough.mdx) add-on documentation. +For more information, refer to the [PS4 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) or [PS5 Input Mode](../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings) documentation. #### USB Host Port not configured correctly diff --git a/docs/usage.mdx b/docs/usage.mdx index ac6935a..0bd6722 100644 --- a/docs/usage.mdx +++ b/docs/usage.mdx @@ -52,7 +52,7 @@ If your controller is missing dedicated buttons for any specific inputs, check t :::note -Unlike other controllers, Keyboard gets different keys for directional buttons. You can change the key mappings for Keyboard mode in [Webconfig mode > Configuration > Keyboard Mapping](./web-configurator/menu-pages/04-keyboard-mapping.mdx) +Unlike other controllers, Keyboard gets different keys for directional buttons. You can change the key mappings for Keyboard mode in [Webconfig mode > Configuration > Keyboard Mapping](./web-configurator/menu-pages/01-settings.mdx#keyboard-mapping) ::: @@ -94,7 +94,7 @@ However, there are default input modes assigned in precompiled firmware. To chan | Nintendo Switch | | | XInput | | | PS3/DirectInput | | -| PS4 | | +| PS5 | | | Xbox One | | | Keyboard | | | Original XBox | `Unassigned` | diff --git a/docs/web-configurator/menu-pages/01-settings.mdx b/docs/web-configurator/menu-pages/01-settings.mdx index a9c8676..63e98fe 100644 --- a/docs/web-configurator/menu-pages/01-settings.mdx +++ b/docs/web-configurator/menu-pages/01-settings.mdx @@ -7,39 +7,100 @@ title: Settings description: "Select the input mode, DPad Mode, SOCD Cleaning Mode, etc. and configure Hotkey Shortcuts" --- +import Tabs from "@theme/Tabs"; +import TabItem from "@theme/TabItem"; + # Settings -![GP2040-CE Configurator - Settings](../../assets/images/gpc-settings.png) +## Input Mode Settings -Here you can select the basic settings which are normally available via hotkeys. +![GP2040-CE Configurator - Input Mode Settings](../../assets/images/gpc-settings-input-mode.png) -- `Input Mode` - Choose the main input mode (XINPUT, DINPUT, Switch, PS4, HID-Keyboard) this connected device will boot into when powered on. This selection will persist through unplug and plugging back in the controller. -- `D-Pad Mode` - Choose the default D-Pad mode (D-Pad, Left Stick or Right Stick). -- `SOCD Cleaning Mode` - Choose the default SOCD Cleaning Mode (Neutral, Last Win, First Win, OFF). Please note that PS4, PS3 and Nintendo Switch modes do not support setting SOCD to off and will default to Neutral SOCD. -- `Forced Setup Mode` - Allows you to lock out Input Mode, the ability to enter Web-Config or both. Enabling a web-config lockout will require you to nuke and reload the firmware if you wish to make further changes. -- `4-Way Joystick Mode` - Enables 4-Way Joystick mode which will prevent non-cardinal directions from registering. When a second cardinal direction input is received, the gamepad direction will change to the newest cardinal direction, similar to [SOCD Last Win](../../hotkeys.mdx#socd-last-win). -- `Profile Number` - Enables different GPIO pin mappings per profile. Changeable through the Web-Config or [hotkeys](../../hotkeys.mdx#load-profile-1-4). -- `Debounce Delay in milliseconds` - Timeframe where the firmware will ignore additional inputs to prevent switch noise from accidentally triggering unintended inputs. +- `Current Input Mode` - Choose the main input mode (XINPUT, DINPUT, Switch, PS4, HID-Keyboard, etc.) this connected device will boot into when powered on. This selection will persist through unplug and plugging back in the controller. + +### Keyboard Mapping + +Here you can remap the GP2040-CE buttons to different keyboard keycodes that will be sent to the PC or game console when pressed in Keyboard Mode. + +![GP2040-CE Configurator - Keyboard Mapping](../../assets/images/gpc-settings-keyboard-mapping.png) -## Additional PS4 Settings +### Additional PS4 Settings ![GP2040-CE Configurator - Additional PS4 Settings](../../assets/images/gpc-settings-ps4.png) - `Switch Touchpad and Share` - Share will now be mapped to A2 rather than S1, Touchpad will be now mapped to S1 rather than A2 -- `PS4 Report Speed Hack` - Disables report counters in the PS4/PS5 reports. This decreases PS4/PS5 latency, but is known to have instability in small number of games. Disable this setting if you are encountering stuck inputs. -- ` Controller Mode` - Choose what PS4 mode the device will use, either `Controller` or `Arcade Stick`. - - `Controller` - The device will function as a native PS4 controller. Primarily intended for use with the [PS4 Mode](../../add-ons/ps4-mode.mdx) add-on and will require the various files be uploaded onto the controller to properly function and avoid the [8-Minute Timeout](../../faq/faq-console-compatibility.mdx#what-is-the-8-minute-timeout). - - `Arcade Stick` - The device will function as a licensed PS4 arcade stick, provided that an authentication device is connected and the PS Passthrough add-on is enabled and properly configured. It will also work for the PS5 UI, any PS4 games on the PS5 as well as PS5 titles that support legacy controllers. +- `Authentication Settings` + - `Uploaded Key File` - Upload key files obtained from a Dualshock 4 to authenticate and bypass the PS4's 8-minute time out + - `Host USB` - Use a dongle, converter, or licensed PS4 controller to authenticate your GP2040-CE device -:::info + -If you wish to play compatible PS5 games, you will need to choose `Arcade Stick` and thus have an authentication device connected and the PS Passthrough add-on enabled and properly configured via a USB passthrough port. + + +![GP2040-CE Configurator - Additional PS4 Settings](../../assets/images/gpc-settings-ps4-upload-key-files.png) + +- `Uploaded Key File` + - `Private Key (PEM)` - Choose your PEM file. + - `Serial Number (16 Bytes in Hex Ascii)` - Choose your serial number file. + - `Signature (256 Bytes in Binary)` - Choose your signature file. + +:::danger Warning + +The GP2040-CE project will not provide any files or information related to acquiring these keys and files under any circumstances. + +Do not ask via any of communication channels (e.g. social media, direct messages, Github Issues, GP2040-CE Discord) as this will result in a permanent blacklist/ban. ::: + + + + +![GP2040-CE Configurator - Additional PS4 Settings](../../assets/images/gpc-settings-ps4-host-usb.png) + +In order to use this setting, a USB Peripheral must be configured in [Web Configurator > Peripheral Mapping > USB Host](./03-peripheral-mapping.mdx#usb-host) + + + + +### Additional PS5 Settings + +![GP2040-CE Configurator - Additional PS5 Settings](../../assets/images/gpc-settings-ps5.png) + +- `Switch Touchpad and Share` - Share will now be mapped to A2 rather than S1, Touchpad will be now mapped to S1 rather than A2 +- `Authentication Settings` + - `Host USB` - Use a dongle, converter, or licensed PS4 controller to authenticate your GP2040-CE device + + + + +![GP2040-CE Configurator - Additional PS5 Settings](../../assets/images/gpc-settings-ps5-host-usb.png) + +In order to use this setting, a USB Peripheral must be configured in [Web Configurator > Peripheral Mapping > USB Host](./03-peripheral-mapping.mdx#usb-host) + + + + +### Additional Xbox One Settings + +![GP2040-CE Configurator - Additional PS5 Settings](../../assets/images/gpc-settings-xbox-one.png) + +In order to use this setting, a USB Peripheral must be configured in [Web Configurator > Peripheral Mapping > USB Host](./03-peripheral-mapping.mdx#usb-host) + +## Gamepad Settings + +![GP2040-CE Configurator - Gamepad Settings](../../assets/images/gpc-settings-gamepad.png) + +- `D-Pad Mode` - Choose the default D-Pad mode (D-Pad, Left Stick or Right Stick). +- `SOCD Cleaning Mode` - Choose the default SOCD Cleaning Mode (Neutral, Last Win, First Win, OFF). Please note that PS4, PS3 and Nintendo Switch modes do not support setting SOCD to off and will default to Neutral SOCD. +- `Forced Setup Mode` - Allows you to lock out Input Mode, the ability to enter Web-Config or both. Enabling a web-config lockout will require you to nuke and reload the firmware if you wish to make further changes. +- `4-Way Joystick Mode` - Enables 4-Way Joystick mode which will prevent non-cardinal directions from registering. When a second cardinal direction input is received, the gamepad direction will change to the newest cardinal direction, similar to [SOCD Last Win](../../hotkeys.mdx#socd-last-win). +- `Profile Number` - Enables different GPIO pin mappings per profile. Changeable through the Web-Config or [hotkeys](../../hotkeys.mdx#load-profile-1-4). +- `Debounce Delay in milliseconds` - Timeframe where the firmware will ignore additional inputs to prevent switch noise from accidentally triggering unintended inputs. + ## Boot Input Modes -![GP2040-CE Configurator - Input Boot Modes](../../assets/images/gpc-input-boot-modes.png) +![GP2040-CE Configurator - Boot Input Modes](../../assets/images/gpc-settings-boot-input-modes.png) For each of the buttons listed in the menu, you can assign a different input mode to enter while holding that button during boot (e.g. when plugging in the controller or immediately after resetting the controller). @@ -47,7 +108,7 @@ For the list of input modes to select from, see [Input Modes](../../usage.mdx#in ## Hotkey Settings -![GP2040-CE Configurator - Hotkey Settings](../../assets/images/gpc-hotkey-settings.png) +![GP2040-CE Configurator - Boot Input Modes](../../assets/images/gpc-settings-hotkey.png) An arbitrary number of buttons and directions, plus the optional Function (Fn) button, can be used to define desired hotkey actions. Select `Fn` if desired, plus one or more buttons/directions, and associate them with a hotkey action. The default hotkeys can be modified or removed, and new ones added, up to 12 in total. diff --git a/docs/web-configurator/menu-pages/03-peripheral-mapping.mdx b/docs/web-configurator/menu-pages/03-peripheral-mapping.mdx index 6d16d81..13d9d6c 100644 --- a/docs/web-configurator/menu-pages/03-peripheral-mapping.mdx +++ b/docs/web-configurator/menu-pages/03-peripheral-mapping.mdx @@ -14,12 +14,13 @@ import SPITable from "../../snippets/_spi-block-table.mdx"; ![GP2040-CE Configurator - Peripheral Mapping](../../assets/images/gpc-peripheral-mapping.png) -Here you can assign the GPIO pins necessary for using peripherals and add-ons that require I2C and a USB host port. These include, but are not limited to +Here you can assign the GPIO pins necessary for using input modes, peripherals, and add-ons that require I2C and a USB host port. These include, but are not limited to +- [PS4 Input Mode](./01-settings.mdx#additional-ps4-settings) +- [PS5 Input Mode](./01-settings.mdx#additional-ps5-settings) - [OLED Display](./07-display-configuration.mdx) - [I2C Analog ADS1219](../../add-ons/i2c-analog-ads1219.mdx) -- [PS Passthrough Add-on](../../add-ons/ps-passthrough.mdx) -- [Xbox One Passthrough Add-on](../../add-ons/xbox-one-passthrough.mdx) +- [Xbox One Input Mode](./01-settings.mdx#additional-xbox-one-settings) - [Keyboard Host Add-on](../../add-ons/keyboard-host.mdx) :::info @@ -79,6 +80,6 @@ There are not restrictions on which GPIO pins can be used for setting up a USB h :::note Enable 5V -Most boards do not require this to be set. This is only applicable to a small number of boards (e.g. Adafruit RP2040 Feather USB Host) as they possess pins for enabling and disabling 5V port on the USB host port. +Most boards do not require this to be set. This is only applicable to a small number of boards (e.g. Adafruit RP2040 Feather USB Host) as they possess pins for enabling and disabling 5V port on the USB host port. ::: diff --git a/docs/web-configurator/menu-pages/04-keyboard-mapping.mdx b/docs/web-configurator/menu-pages/04-keyboard-mapping.mdx deleted file mode 100644 index 2ad03c8..0000000 --- a/docs/web-configurator/menu-pages/04-keyboard-mapping.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: Keyboard Mapping -# tags: -# - -# pagination_next: null -# pagination_prev: null -description: "Map gamepad inputs in GP2040-CE to keyboard keycodes for use in Keyboard Input Mode" ---- - -# Keyboard Mapping - -![GP2040-CE Configurator - Keyboard Mapping](../../assets/images/gpc-keyboard-mapping.png) - -Here you can remap the GP2040-CE buttons to different keyboard keycodes that will be sent to the PC or game console when pressed in Keyboard Mode. diff --git a/docs/web-configurator/menu-pages/07-display-configuration.mdx b/docs/web-configurator/menu-pages/07-display-configuration.mdx index a9aca23..8a3bdf6 100644 --- a/docs/web-configurator/menu-pages/07-display-configuration.mdx +++ b/docs/web-configurator/menu-pages/07-display-configuration.mdx @@ -69,10 +69,10 @@ Going from left to right, the display elements are - `DINPUT` - PS3/DirectInput - `HID-KB` - Keyboard - `PS4` - Controller Mode set as `Controller`, will change to `PS4:AS` on successful authentication - - `PS4:AS` - [PS4 Mode](../../add-ons/ps4-mode.mdx) add-on successfully authenticated + - `PS4:AS` - [PS4 Input Mode](../../web-configurator/menu-pages/01-settings.mdx#additional-ps4-settings) add-on successfully authenticated - `PS5` - Controller Mode Set as `Arcade Stick`, will change to `PS5:AS` on successful authentication - - `PS5:AS` - [PS Passthrough](../../add-ons/ps-passthrough.mdx) add-on successfully authenticated - - `XBONE` - Xbox One compatible with [Xbox One Passthrough](../../add-ons/xbox-one-passthrough.mdx) + - `PS5:AS` - [PS5 Input Mode](../../web-configurator/menu-pages/01-settings.mdx#additional-ps5-settings) add-on successfully authenticated + - `XBONE` - Xbox One compatible with [Xbox One Input Mode](./01-settings.mdx#additional-xbox-one-settings) - `OGXBOX` - Original XBox - `GEN/MD` - Sega Genesis/MegaDrive Mini - `NGMINI` - NEOGEO mini diff --git a/docs/web-configurator/menu-pages/08-add-ons-configuration.mdx b/docs/web-configurator/menu-pages/08-add-ons-configuration.mdx index bec35c1..df12483 100644 --- a/docs/web-configurator/menu-pages/08-add-ons-configuration.mdx +++ b/docs/web-configurator/menu-pages/08-add-ons-configuration.mdx @@ -31,15 +31,14 @@ Some of these add-ons are experimental and not all add-ons are interoperable wit - [Keyboard Host Configuration](../../add-ons/keyboard-host.mdx) - [On-board LED Configuration](../../add-ons/on-board-led.mdx) - [Player Number (X-INPUT ONLY)](../../add-ons/player-number.mdx) -- [PS Passthrough](../../add-ons/ps-passthrough.mdx) -- [PS4 Mode](../../add-ons/ps4-mode.mdx) - [SNES Input](../../add-ons/snes-input.mdx) - [SOCD Selection Slider](../../add-ons/socd-selection-slider.mdx) - [Tilt Input](../../add-ons/tilt-input.mdx) - [Turbo](../../add-ons/turbo.mdx) - [Wii Extensions](../../add-ons/wii-extensions.mdx) -- [Xbox One Passthrough](../../add-ons/xbox-one-passthrough.mdx) ## Deprecated Add-ons -- Extra Button Configuration +- PS4 Mode +- PS Passthrough +- Xbox One Passthrough