跳到正文
Gbatemp· komabear·· 1 天前AI 评分25

[发布] rp2350-switch-pad:用于 Switch 2 远程同玩(Parsec)的有线手柄模拟器

[Release] rp2350-switch-pad: wired-controller emulator for Switch 2 remote play (Parsec)

AI 导读

开源项目 rp2350-switch-pad 用 Waveshare RP2350-USB-C 板模拟 Switch 2 有线 PowerA 手柄,借 Parsec 让好友用 PC 手柄远程同玩。需 Switch 2 底座、Windows 10/11 PC 与 HDMI 采集卡,目前仅 Windows、每板一柄,已实测 1080p60 采集与 57 分钟无掉线。

正文

komabear

Play your Switch 2 remotely with friends over Parsec, using an RP2350 board as the controller

I have a Nintendo Switch 2. My online friends don't. So I thought - what if I streamed the Switch 2 screen to them through Parsec, and they could use their gamepads on the Switch 2?

Here's how the project works : a cheap Waveshare RP2350-USB-C board pretends to be a wired PowerA controller on the Switch 2 dock. A small Windows app sends it whatever gamepad is on your PC, including the virtual Xbox pad Parsec creates for your guests. A built-in capture window shows the Switch screen (video and sound) from an HDMI capture card, ready to share. No Mayflash, no Bluetooth, no console modding. Open source, MIT license.

How it works

Code:

Friend's pad --Parsec--> your PC (virtual Xbox 360 pad)
        |  rp2350-switch-pad app (reads the pad)
        |  USB
        v
RP2350-USB-C board --USB--> Switch 2 dock (sees a wired PowerA pad)
Switch 2 dock --HDMI--> capture card --USB--> your PC --> "Switch Capture" window --> Parsec / Discord / OBS

The Switch sees an ordinary licensed wired controller, so nothing on the console is modified.

What you need

  • Waveshare RP2350-USB-C board (the one with two USB-C ports): AliExpress (not an affiliate link)
  • An HDMI capture card. I used a UGREEN HDMI Capture at 1080p60: AliExpress (not an affiliate link)
  • Two good quality USB-C data cables for the board. Some cables only charge and fail silently, so if you're unsure, test the cable by plugging your phone into your PC and copying a file.
  • A Switch 2 dock and a Windows 10/11 PC. Tested with both the original Switch 2 dock and this : MEUYAG Switch 2 Dock (not an affiliate link)

Features

  • Works with any XInput pad on the PC: Xbox controllers or the virtual pads Parsec creates for your guests. The app lists each controller by its real Windows name and USB ID, and shows which one is active.
  • Auto mode (first connected pad) or pick a specific one
  • Optional A/B and X/Y swap, so an Xbox pad feels like a Switch pad (on by default)
  • HOME and CAPTURE buttons; the Xbox Guide button works as HOME (I didn't implement this as buttons because I'm usually playing with friends, so I can just control the HOME button myself).
  • Survives the console sleeping and waking
  • Capture window: 1080p60 video and audio, low latency, drawn on the GPU with vsync (no tearing), volume slider, fullscreen, mute
  • The capture window recovers by itself when the card hiccups, and tells you what to do when the card gets stuck

Setup in short

  1. Download the latest release zip from github. It contains the Windows app and the firmware file (bridge.uf2).
  2. Flash the board once: plug the board's programming USB-C port into your PC (this is the USB-C port that has the 2 buttons on the board closes to it), hold BOOT, tap RST once, copy bridge.uf2 onto the drive that appears.
  3. Plug the board's programming port into a dock USB port and wait 10 seconds, then plug its other USB-C port (the PIO-USB one, the port thats farthest from the 2 buttons on the board) into your PC.
  4. Run the app. When the lights go green, the Switch sees a controller.

The connection order matters, and the README has the full routine and troubleshooting.

Tested
Switch 2 dock, 1080p60 capture with sound, long play sessions (57 minutes in one stretch without a dropout), console sleep and wake, and real Parsec guests playing through it.

Known limits

  • Windows only for now. The board firmware is portable, but the PC app uses Windows gamepad and capture APIs, so a Linux port would need real work. The exe is unsigned, so SmartScreen may warn on first run.
  • One controller per board. The Switch counts one controller per USB device, so a second player needs a second board.
  • The link between the PC and the board can go idle and stop responding, for example after closing the app for a while. The fix is unplugging the USB cable that goes on your PC (the PIO USB-C out cable) and plugging it back in, the app reconnects by itself.
  • Capture cards can wedge after sitting idle. Replugging the card's USB cable fixes it. Might be an issue with my capture card itself, or the unofficial switch 2 dock i listed here (I bought that one so I wouldn't have to keep moving my dock around)
  • I tested on a Switch 2 dock only; I haven't tried a Switch 1, but theorically it should work.
  • Input delay is not very bad at all on my setup - played Mario Kart, Mario Wonder and more with friends, 0 issues or complaints. But keep in mind that this relies not only on your internet connection to your friends, but also the capture card delay. I've used Parsec to play with friends because the delay is extremely low on it - if you use Discord or whatever app, the delay will become much worse. Basically the Switch 2 is sending it's screen to the capture card and the capture card to your PC, which adds input delay, then you're sending that image to your friend over parsec, which also adds input delay. Lower resolutions also lower the input delay even more - at 720p the game looks awful, but you can feel the input delay drop even further.

Download and source
Github Link (the release zip includes the app, firmware, README, changelog and license notices)

Questions, bug reports and ideas are welcome. If you try it, tell me which capture card you used and whether it worked.

来源:Gbatemp · gbatemp.net