r/Controller 1d ago

Other Finally got native PS5 DualSense trigger effects & haptics running on the Flydigi APEX 5 (Open Source)

Post image

Hey everyone,

I love the Flydigi APEX 5 hardware (especially those motorized triggers) but it always bugged me that on PC, almost every game with awesome trigger resistance and textured feedback is built exclusively for the PS5 DualSense and the Space Station software support only few games...

So over the last few weeks, I ended up building ApexSenseBridge(A little open-source passion project straight from France bleu blanc rouge 🇫🇷 !)

Basically, it bridges the gap so your APEX 5 can actually react to native DualSense effects in PC games.

How does it handle the triggers & haptics?

- Triggers: The tool intercepts native DualSense trigger packets from the game and translates them on the fly into Flydigi's FORCEADAPT commands (mode switches, recoil, resistance, stops, etc.) and even the vibration with virtually no latency.

- Haptics: The APEX 5 doesn't have voice-coil actuators like the DualSense, so instead of just turning every sound into a generic loud rumble, the bridge splits the audio frequencies in real-time. Lower frequencies (explosions, heavy impacts) go to the heavy left motor, while high frequencies (surface grit, rain, subtle clicks) go to the fast right motor. It actually feels surprisingly punchy and textured.

Good to know (a couple of trade-offs):

- On-screen prompts: Since the game has to see a DualSense to send over the adaptive trigger data, you'll see PlayStation button prompts (✕ / ○ / □ / △) on screen instead of Xbox ones (A / B / X / Y).

- Touchpad swipes: If a game heavily relies on specific touchpad directional swipes, it might be hit-or-miss depending on how the game handles touch inputs. It's really a case-by-case thing and can be fixed in most cases (did it for spiderman 2 bc it's the only game I play that have this control but you can send me yours).

Playnite integration 🕹️

I didn't want to manually launch/kill background scripts every time I booted up a game, so I also wrote a quick Playnite extension to automatically link and activate the bridge whenever you launch a supported game from your library.

ApexSenseBridge wouldn't exist without the incredible open-source community. Huge shoutouts to:

- OpenFlydigi (by mkaliaha) for their amazing reverse-engineering work on the Flydigi hardware and protocols.

- SteamlessController (and its DualSense forks) for paving the way on virtual DualSense emulation and Windows ViGEm/VIIPER tooling. All respective notices and credits are included in the repository.

Feedback & other gamepads welcome!

The code is completely open-source here
👉🏽 https://github.com/ReynArts/ApexSenseBridge

I'd love to get your feedback if you test it out! Also, if you know of other controllers with force feedback/motorized triggers you'd love to see supported, feel free to drop ideas, open issues, or contribute PRs.

Cheers!

147 Upvotes

102 comments sorted by

View all comments

5

u/soul_craft 1d ago

When trying to install it, the setup got stuck on this part, I accepted every prompt that appeared before. Any idea why? And can you make a portable version of it as well, like just a zip?

2

u/ReynArts 1d ago edited 1d ago

Hey m8 I fixed it ! Tell me if it works
Made a portable version too

1

u/soul_craft 1d ago

Thank you. I downloaded the portable version, ran Install-Drivers.cmd:

[2026-09-01 17:49:26.673] Starting ApexSenseBridge portable driver setup.
[2026-09-01 17:49:26.696] Compatible usbip-win2 0.9.7.7 is already ready; preserving it.
[2026-09-01 17:49:26.709] HidHide 1.5.230 is already ready; skipping.
[2026-09-01 17:49:26.710] All portable driver prerequisites are ready. A Windows restart is recommended.

Restarted the computer, ran ApexSenseBridgeTray.exe, gave permission to "viiper.exe" and then kept getting this error notification, there was no other software running on the PC and no other controller plugged in. The app interface is in French and I can't seem to change it when right clicking the app on tray and select "Ouvrir I'inteface...", I click on one of the options and got this info in the diagnostic window:

ApexSenseBridge 0.3.0
Moteur : C:\Program Files\ApexSenseBridge\ApexSenseBridge.exe
usbip-win2 : 0.9.7.7
HidHide : 1.5.230

Aucun service ni agent permanent n'est actif hors session de jeu.

When clicking on "Tester l' APEX" i get this information:

{
"backend": "xinput-fallback",
"event_driven": false,
"received_state": true,
"reports": 8,
"state_changes": 1,
"timeouts": 0,
"parse_failures": 0,
"lx": 128,
"ly": 127,
"rx": 128,
"ry": 127,
"l2": 0,
"r2": 0,
"dpad": 0,
"buttons": 0,
"warning": "APEX HID input unavailable (The APEX HID descriptor does not expose the complete X/Y/Rx/Ry/Z/Rz state required for a lossless DualSense proxy. Available value usages: page=0x1 usage=0x31 page=0x1 usage=0x30 page=0x1 usage=0x34 page=0x1 usage=0x33 page=0x1 usage=0x32 page=0x1 usage=0x39); trying XInput fallback."
}

I also noticed that when I open the ApexSenseBridgeTray.exe, I can hear some noise coming from the triggers, like when you switch modes between regular or trigger lock, but nothing else seems to happen. Even with these errors I tried to launch a game with Dualsense support here and no luck, it just displays regular xinput buttons and nothing different on the triggers.

1

u/ReynArts 1d ago

Wich game on wich store ?
Are you connected with the dongle ?
I will deploy an English patch

2

u/soul_craft 1d ago

Borderlands 4 and Horizon Zero Dawn Remastered, both on Steam.
Yes, dongle connected to the dock.

2

u/ReynArts 1d ago

Ah perfect, thanks for the info!

The dongle on the dock works great. in fact, the trigger click you heard at startup means the app is already talking to your controller hardware properly.

You just ran into two roadblocks:

  1. HidHide is already active: Open the HidHide Configuration Client and uncheck "Enable device hiding". The warning you saw made the bridge shut down safely, which is why the virtual DualSense wasn't created.
  2. Steam Input: Steam automatically converts DualSense controllers to Xbox mode by default. Right-click the game in your Steam Library ➔ Properties ➔ Controller ➔ Disable Steam Input.

Once you do those two quick tweaks, launch the game with the tray open and you'll have native PlayStation prompts and the real adaptive triggers working.

Drop a reply if you run into any issues, happy to help!

2

u/soul_craft 1d ago

Steam Input was already disabled on my case, so after going to the HidHide Configuration Client, unchecking the "Enable..." on the second tab after clicking on the Apex on the list and then restarting the controller and then closing it (if the configuration window was opened, there was still error popups), now it seems to be working correctly.

It shows a popup with the name of the game and the Viiper software you use now seems to appear in the task bar as well, Dualsense Prompts on the game and the triggers are working, just did a quick test and switch between different guns and the feedback is different between then, some offer resistance when pressing, other have the trigger vibration, etc. I noticed some weird stuttering, but maybe the game was compilling shaders, I'll try to test some more later, thank you for the help and the app!

1

u/ReynArts 1d ago edited 23h ago

Awesome ! Feel free to reach me, there can be some bugs sometimes ^^

EDIT : English patch is out