# Steam Controller Steam Controllers are controllers designed by Valve and have native Steam Input support. So far only one Steam Controller has been released the `Steam Controller: Gordon`. **Note these inputs are part of the upcoming 0.8b update.** Steam Input have support for the following controllers: ## Steam Controller - Gordon The first Steam Controller is nicknamed Gordon and also goes by that name in all configurations. #### Linux Kernel Support Yes, since 4.18 - `hid-steam` #### Udev rules ``` # Valve USB devices SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666" # Steam Controller udev write access KERNEL=="uinput", SUBSYSTEM=="misc", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput" # Valve HID devices over USB hidraw KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0666" # Valve HID devices over bluetooth hidraw KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0666" ``` #### Steam Input support Yes ### What is the Official - Steam Controller: Gordon RetroDECK profile called? - Steam Controller - Gordon: `RetroDECK: Steam Controller - Gordon` ### The hotkey button The global hotkeys are activated by pressing and holding the `HKB` aka the `HotKey Button` and pressing the corresponing button togheter for the command you want to do. For the Steam Controller Gordon the `HotKey Button` is both `SELECT` and `L4`, you can press either depending on what you feel is more confortable. ### Global Hotkeys: Steam Controller Gordon Button Combos `Function` Shows what the hotkey does.
`Button / Combination` Shows the input you need to make to trigger the command.
`Command` Shows what is being sent to the emulator.
`Emulator Support` Shows what emulators support the command.
`Comment` Just extra comments.
| Function | Button / Combination| Command | Emulator Support | Comment | | :--- | :---: | :---: | :---: | :---: | | Pause / Resume | `HKB + A` | `CTRL + P` | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `MelonDS` `PCSX2` `Yuzu` | | | Take Screenshot | `HKB + B` | `CTRL + X` | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2` `Yuzu` | | | Fullscreen Toggle | `HKB + X` | `CTRL + ENTER` | `Citra` `Dolphin/Primehack` `Duckstation` `MelonDS` `PCSX2` `Yuzu` | | | Open Menu | `HKB + Y` | `CTRL + M` | `RetroArch` `Duckstation` `PCSX2` `Yuzu` | | Quit Emulator | `HKB + Start` | `CTRL + Q` |`RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2` `Yuzu` | | | | Previous State Slot | `HKB + D-Pad Left` | `CTRL + J` | `RetroArch` `Dolphin/Primehack` `Duckstation` `PCSX2`| | | | Next State Slot | `HKB + D-Pad Right` | `CTRL + K` | `RetroArch` `Dolphin/Primehack` `Duckstation` `PCSX2`| | Increase Emulation Speed | `HKB + D-Pad Up` | `CTRL + 1` | `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`| | | | Decrease Emulation Speed | `HKB + D-Pad Down` | `CTRL + 2` | `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`| | | | Load State | `HKB + L1` | `CTRL + A` | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2` | | | Save State | `HKB + R1` | `CTRL + S` | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2` | | | Rewind | `HKB + L2` | `CTRL + -` | `RetroArch` `Duckstation` | | | Fast forward | `HKB + R2` | `CTRL + +` | `RetroArch` `Duckstation` `MelonDS` `PCSX2` | | | Global Radial Menu | `HKB + Left Joystick` | | Opens the Radial Menu | ### Global Radial Menu The Global Radial Menu is activated by holding `HKB` and by moving the `Left Joystick`, then by pressing `L3` allows you press the selected radial button. Radial Button | Keyboard Command| Emulator Support | Comment | | :--- | :---: | :---: | :---: | | Space | `Space` | `PC-Systems` | | | Escape | `Escape` | `PPSSPP` `PC-Systems` | On PPPSPP it opens the Menu | | Enter | `Enter` | `OpenBOR` `PC-Systems` | | | F1 | `F1` | `PC-Systems` | | | F5 | `F5` | `PC-Systems` | | | F10 | `F10` | `PC-Systems` | | | Wii Sync Button | `ALT + W` | `Dolphin/Primehack` | | | Swap Dual-Screens | `CTRL + TAB` | `RetroArch` `Citra` `MelonDS` `Cemu`| | | Change Dual-Screen Layout | `CTRL + L` | `Citra` | | | Widescreen / Aspect Ratio | `CTRL + W` | `Dolphin/Primehack` `Duckstation` `PCSX2` | | | Fullscreen Toggle | `CTRL + ENTER` | `Citra` `Dolphin/Primehack` `Duckstation` `MelonDS` `PCSX2` `Yuzu` | | | Change Disc / Next Disc | `CTRL + D` | `RetroArch` `Dolphin/Primehack` `Duckstation`| | ### Right Touchpad as Temporary Mouse By holding `HKB` and moving the `Right Touchpad` you can use it as a mouse for various systems that uses mouse input. | Function | Button / Combination| Command | Comment | | :--- | :---: | :---: | :---: | | Touchpad as Mouse | `HKB + Right Touchpad` | | | | Right Click | `HKB + L3` | `Right Click` | | | Left Click | `HKB + R3` | `Left Click` | | ### Right Touchpad: Joystick Mode / Mouse Mode Switch By pressing `R4` and you can switch the right between semi-permanent Joystick Mode or Mouse Mode.
This function is useful for games that the primary input is a mouse as you don't need to hold either of `SELECT` or `L4`.
**Example usecases:** - `ScummVM` for point and click games. - `Dolphin` for `Wiimote` movement. - Lightgun games. - `PC-Systems` type games. **NOTE:** That going into the global hotkeys mode above by pressing `SELECT` or `L4` will switch the Right Touchpad to Joystick Mode again. | Function | Button / Combination| Command | Comment | | :--- | :---: | :---: | :---: | | Touchpad as Mouse / Joystick Switch | `R4` | | | | Left Click - Mouse Mode | `R3` | `Left Click` | | ### RetroArch: Additional Hotkeys These hotkeys also work for RetroArch and are built in. | Function | Button / Combination | Emulator Support | Comment | | :--- | :---: | :---: | :---: | | Open Menu | `L3 + R3` | `RetroArch` | | ### Arcade Systems: Additional Hotkeys This hotkey work for RetroArch, MAME, FBNEO and other arcade systems. | Function | Button / Combination | Emulator Support | Comment | | :--- | :---: | :---: | :---: | | Insert Credit | `HKB` | `RetroArch` `MAME` `FBNeo` | |