Deckpad
Use your SteamDeck as a wireless PC controller
Install / Use
/learn @HelloThisIsFlo/DeckpadREADME
Deckpad
❌ This project is broken at the moment, see #23 for more details
❌ You can still try it out, maybe it works for you, but no guarantees...
⚠️ WARNING: This is a alpha prototype!
It may work, it may break. Install at your own risks and make sure you understand what you are doing.
⚠️ After every Steam OS update, make sure to run
~/Deckpad/initialize_after_os_update.sh
⚠️ WARNING: If you quit Deckpad without pressing on the screen (or if it doesn't work on your device), it won't clean up and will prevent sleep and brightness changes!
- The easiest way way to fix it is to run Deckpad again, and quit it by clicking on the target in the middle of the screen
- Alternatively, you can restore the SteamDeck to its original state by running these 2 commands:
sudo chmod 666 /sys/class/backlight/amdgpu_bl0/brightness sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target >/dev/null 2>&1
What is Deckpad?
Deckpad allows you to use your SteamDeck as a gamepad on your Windows PC.
Once setup, all you have to do is to launch Deckpad, enter your password, and it will:
- Connect automatically to your Windows PC and act as a gamepad
- You can use all the Steam input config you already configured on the SteamDeck
- Reduce the brightness to the minimum
- Also prevents Steam from raising it while the app is running
- Disable sleep mode while the app is running
- Show the live battery percentage
Welcome Screen | Running Screen
:-------------------------:|:-------------------------:
| 
Setup Instructions
Update Instructions
cd ~/Deckpad/ && git pull
On Steam Deck
-
Initialize Everything
-
Set a
sudopassword: SteamDeckTips Tutorial -
Clone repo
cd ~ && git clone https://github.com/HelloThisIsFlo/Deckpad.git -
Run
./initialize_after_os_update.shThis will:
- Disable
readonlymode on SteamOS - Initialize
pacman - Install
xorg-xinputandfiglet
- Disable
-
Put in
~/Deckpad/virtualhere/ -
Make executable:
chmod +x vhusbdx86_64
-
-
Create the launcher for Deckpad
-
Add a “fake” game to the steam library (shortcut will be updated, so the app doesn’t matter, pick whichever)
-
Select “fake” game and click
Properties -
Replace with these values
| Title | Deckpad | | --- | --- | | Target |
env| | Start |"/home/deck/Deckpad"(don’t remove " symbols) | | Launch Opts |-u LD_PRELOAD konsole --fullscreen -e ./deckpad.sh|-
and this icon

-
-
-
Enable touchscreen <- Do this in Game Mode
Thank you Jeoshua for figuring this one out!- Open the Deckpad launcher page
- Tap on the controler icon
- Click:
Edit Layout - Click:
Action Sets - Click the Gear icon next to
Default - Click:
Add Always-On command - Click:
Add command(on the newly added 'Always On Command') - Click:
System(tab, at the top) - Click:
Touchscreen Native Support - Back out until you're back on the Deckpad launcher page
-
Launch Deckpad once, and you're all done for the SteamDeck side of things 🎉
On Windows Gaming PC
- Download VirtualHere Client for Windows (64-Bit Win10,Win11/Server 2016/2019/2022
- Place
.exeat the root ofC:drive - Configure it
- Launch Deckpad on the Steam Deck
- Run
vhui64.exe - Steam Controller should show (it can take a bit before it shows)
- Right click on
USB Hubsand selectStart minimizedAlways On Top- (can’t use
Install Client as a Service, it requires the paid version)
- Right click on
Steam Controllerand selectAuto-Use Device
- Place a shortcut of
vhui64.exeinshell:startup
Related Skills
node-connect
341.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.6kCommit, push, and open a PR
