DSU Client

Since, Dolphin is compatible with the DSU protocol, which enables the emulator to receive motion and input data from compatible server applications. Those servers works as a middle-man between specific input devices and client applications like Dolphin in order to provide motion data not available through the other input APIs Dolphin supports, like DInput, XInput and SDL, although they also provide normal buttons and axis data as well.

DSU Protocol Servers
A list of known servers are listed below. Any server not listed here that works with CemuHook should also work with Dolphin and newer.

Linux
As of, motion axis of DualShock 3 and 4 controllers can be directly mapped in Dolphin through evdev input API. Additionally, the following servers are available:
 * ds4drv (TheDrHax fork): compatible with all DualShock 4 controllers.
 * linuxmotehook: compatible with Wii Remotes. Not recommended, as Dolphin can communicate directly with them.

Windows

 * DS4Windows (Ryochan7 fork): compatible with all DualShock 4 controllers.
 * BetterJoyForCemu: compatible with Nintendo Switch Joy-con and Pro Controllers.
 * Steam Gyro for CemuHook: compatible with Steam Controllers.
 * ScpToolkit (Nefarius fork, requires patching): compatible with DualShock 3 and earlier DualShock 4 controllers (CUH-ZCT1x). If you have a DualShock 4, use DS4Windows instead, as ScpToolkit is unmaintained.
 * WiimoteHook: compatible with Wii Remotes. Not recommended, as Dolphin can communicate directly with them.

macOS
No known servers.

Android

 * rajkosto's MotionSource: for Android devices, provides only motion data.

Setting up
To do

Using Placeholder Protocol in Dolphin
To do