Middleware DualSense/DualShock for Unreal Engine 5.2 ~ 5.8 (Audio Bluetooth)

:bullseye: Tutorial: Basic Gyro Aim Implementation · rafaelvaloto/Unreal-Dualsense Wiki

Implement gyroscopic aiming in 30 seconds on Unreal Engine and DualSense. 1:1

You can implement this using Middleware Unreal-Dualsense v2 Premium or V2 Pro (Gold-Edition)

This month there’s a reduced price for indie developers.

Unreal Engine 5 - DualSense Integration Tutorial (v2 PRO Gold Edition)

Example project available on a private GitHub repository. After your purchase, provide the information in the form and wait for access to be granted.

:pushpin: Inside this Tutorial:
• 00:00 - Audio Haptics & Audio Ducking (Achieving clean haptic feedback)
• 00:10 - Testing Adaptive Triggers with Weapon UI Profiles
• 00:56 - Activating & Tuning the Character Gyroscope System

Home · valotogames/Unreal-Dualsense-Pro-Docs Wiki

b-Run is the first game released with native, full support for DualSense controller audio features via Bluetooth; download the game for free on Steam, connect your DualSense controller via Bluetooth, and enjoy an immersive experience—even wirelessly. Tip: if possible, plug headphones into the controller.

:bar_chart: Performance Benchmark (Native Bluetooth)

System Specifications:

  • OS: Windows 11 Pro (64-bit, v. 25H2)
  • CPU: AMD Ryzen 7 5700G (4.30 GHz)
  • GPU: AMD Radeon RX 7700 XT (12 GB)
  • RAM: 32 GB

Test Conditions:

  • Connection: Standard PC Bluetooth.
  • Data Load: Simultaneous and continuous streaming of Audio and Haptics to the controller.
  • Environment: Production Build (Shipping).

Achieved Metrics (Raw Performance):

  • Framerate (Average): 130.6 FPS
  • Frame Time (95th Percentile): 8 ms
  • Note: Test executed with frame generation and upscaling technologies disabled.

Technical Conclusion: The data certifies the efficiency of the project’s architecture. Managing dense packet transmission via Bluetooth (such as audio streaming and high-fidelity haptic feedback) is processed without causing bottlenecks on the main rendering thread. The result is stable latency and the absence of stutters, debunking the technical limitations of using wireless connections for advanced controller features on PC.

The version to USE 5.8 just approved in FAB.

Controller Support - Gold Edition | Fab

v2 Gold Edition
Designed for developers and studios requiring full control over their builds and continuous integration.

Engine Updates: Guaranteed support and compatibility updates for all future Unreal Engine releases.

Exclusive GitHub Access: Direct access to the private repository, allowing teams to manage custom builds and contribute to the codebase.

Priority Support: Fast-tracked issue analysis and bug fixes.

Advanced Example Projects: Exclusive templates serving as starting points for complex implementations, including:

Gyroscope Input.

High-fidelity Audio Haptics (via Bluetooth and USB).

Native audio routing directly to the controller’s speaker and 3.5mm headset jack.

Resources & Access

Middleware DualSense Unreal - PRO (Audio Bluetooth) | UE 5.2 ~ 5.8 - Distribution / Product Discussion - Epic Developer Community Forums

Documentation and Tutorials

Home · valotogames/Unreal-Dualsense-Pro-Docs Wiki

Unreal Engine 5 - DualSense Integration Tutorial (v2 PRO Gold Edition)

Example project available on a private GitHub repository. After your purchase, provide the information in the form and wait for access to be granted.

A practical tutorial and example project will soon be available in the documentation.

:megaphone::megaphone::megaphone: New Tutorial

Documentation and sample project:

:bomb: Prototyping and implementation of adaptive triggers in practice · valotogames/Unreal-Dualsense-Pro-Docs Wiki

UE5 example project exclusive to the Middleware Unreal Dualsense Pro - Gold Edition. Controller Support - Gold Edition | Fab

Valoto Games

High-performance C++ middleware for graphics engines.

:globe_with_meridians: unreal-dualsense-pro.valoto.games



About :video_game:

We develop high-performance middleware written in modern C++, bridging the gap between native system capabilities and graphics engines. Our libraries focus on delivering seamless, cross-platform experiences designed to push the boundaries of real-time rendering and gameplay immersion.

:handshake: Join the Organization

Gain access to private repositories, exclusive sample projects, and priority issue tracking.

:backhand_index_pointing_right: Request Access via Google Forms

Hi!

Using v1 Basic Edition for now, but in our UE 5.7 project all Input Devices remain in a Disconnected state while the plugin is active. Thus, using the Get All Connected Input Devices functionality returns nothing. Disabling the plugin fixes this behavior.

Is this a known issue?

1 Like

Hello, thanks for the report. I’ll test it and let you know. Did you recently update to version 1.10.1?

It does seem strange; the controller works, but if you check, the KBM and Xbox controller shows a “disconnected” status. I’m going to investigate the engine’s source code to see what might be causing this.

1 Like

Thanks for looking into this!

In my plugins window it says Next-Gen Gamepad Middleware v2 Version 2.7.0

Hi, I’ve made the fix; the improvements have been applied to all versions (v1, v2, and v3). The update should be available shortly. Regarding the display of v2.7.0, I must have published it with the wrong version number; it should show correctly now.

Update & A Quick Plea

I’ve just pushed several fixes to the middleware to resolve the recent version migration issues (starting from Unreal 5.7+). Huge thanks to voodoo_jannick for reporting this.

While I’m at it, I want to make an honest appeal: if this plugin adds value to your project, please consider purchasing a commercial license. My initial plan was to keep this tool completely free, hoping that open-source funding or Epic’s incentives would sustain it. Unfortunately, that financial support didn’t materialize, and the vast majority of studios and indies are using the free version.

This middleware saves months of complex, low-level development time for AAA, AA, and indie studios alike. Maintaining it takes significant effort—just addressing these recent engine updates took continuous hours of debugging, compiling, and deploying.

Purchasing a version on FAB directly supports my work and ensures I can keep this project updated. Thank you to everyone who supports it.

Improvements applied:

v1 | v2 | v3

FIXES

  • Fixed an issue where GamepadMiddleware could disconnect input devices not managed by the plugin, including Xbox controllers and other non-Sony gamepads.
  • Fixed PlayStation button shutdown handling to release the button before the controller is removed from Unreal Engine’s input mapper.

IMPROVEMENTS

  • Added a controlled disconnect after holding the PlayStation button for 5 seconds.
  • Sony controller shutdown now closes and invalidates the HID handle, removes the device library, and reports the controller as disconnected to Unreal Engine.
  • Moved Sony HID device detection to a background task to reduce game-thread stalls during hardware scans.
  • Improved connection and disconnection reliability by applying asynchronous detection results through a synchronized device snapshot.
  • Kept Unreal input-device creation, mapping, library creation, and cleanup on the game thread for thread-safe operation.
1 Like

Thank you so much for the update!

While we are currently not in a position to pay for the professional v2 or v3 license, I will most definitely keep it in mind for the near future.

Thanks again :heart:

1 Like

Thanks. Let me know if it doesn’t work. As for the licenses, no problem—it was really just a general appeal. Every sale helps a lot, even the personal licenses.