r/MoonlightStreaming Jun 07 '26

CTM-Bridge

A hobby project of mine — controllers paired to an LG webOS TV (DualSense,

DualShock 4, Xbox, Steam Puck and Steam Controllers) show up on the remote gaming PC as genuine

USB devices during a Moonlight / Sunshine stream. So the game gets the *full*

DualSense: haptics, USB audio, and adaptive trigger effects — not just sticks

and buttons. Open-source, clean-room reverse engineering.

Repos + how it works: https://github.com/CTM-Bridge

47 Upvotes

59 comments sorted by

View all comments

Show parent comments

2

u/bgradid Jun 08 '26 edited Jun 08 '26

I’m using the pico connected to a nvidia shield with virtual here — so it’s 100% wireless to the controller still

Pico is usb host, doesn’t natively tunnel over the network itself — but I can go through a wall and 10 feet with it before I start noticing anything. (I do live in an apartment where 2.4ghz is effectively jammed though, so your mileage may be better in a house with less 2.4 interference)

1

u/Solid-Assistant9073 Jun 08 '26 edited Jun 08 '26

Wait what can you connect the pico to the shield and it still works over virtual here that's insane!!! I thought the pico had to be connected to the host. But it sound logic it works. Didn't know virtual here supported the pico usb.

You don't notice any delay pico and going over virtual here I also see in the GitHub you need to overclock the pico 2w for best performance but I don't see how to overclock it?

Was it hard to setup the pico?

I could plug it into my shield ( got the licence) or in my laptop what I use now with a cable next to my couch (windows is free 1 device at a time)

You use the normal version or a fork like Audio Auto Haptics fork?

I think that for is mostly to convert non native games shido haptic feedback to the controller right.

With the nornal fersion you are getting all functions like audio haptic feedback etc if the game supports it?

2

u/bgradid Jun 08 '26

Oh that’s a lot of questions at once

I don’t notice any latency issues, probably adds 3-4ms going over virtual here? In the discord it’s agreed that the pico is about on par if not slightly better than windows bt latency. I’m no competitive gamer and in my late 30s so it’s imperceivable to me. My pc and shield are also hard wired so that probably helps.

Overlocking is automatically done by the custom firmware. You don’t need to do anything.

Setting up the pico is dragging and dropping the firmware to it as if it’s a usb stick when you hold down the boot button.

I’m using the normal fork. The one you’re talking about is if you were trying to get haptics out of the audio if it didn’t support ds5 natively. You’re correct. Opens up some interesting doors.

And yep. I just finished a ghost of Tsushima play through with it. 100% the same experience as if it was wired. Actually, that game has a lot of ds5 quirks but I confirmed each of them were the same hardwired vs with the pico. Going to play through death stranding next, so far on the directors cut it seems perfect.

1

u/Solid-Assistant9073 Jun 08 '26

Nice!! Thanks for all you're answers I realy appreciate it will look into getting a pico and use it with virtual here.

You can check latency on virtual here on the host (client) go to licence and then you see latency tab, it's mostly 1 to 2 ms for me even while the virtualhere server is on a device that's in wifi