WiiMoteDSU
Virtual wii mote with DSU/cemuhook server for android and iOS, made with flutter.
Install / Use
/learn @marcowindt/WiiMoteDSUREADME
WiiMoteDSU
Download via App Store or Play Store
<a href="https://apps.apple.com/us/app/dsu-remote/id6448928057?itsct=apps_box_badge&itscg=30200" style="display: inline-block; overflow: hidden; border-radius: 13px; width: 250px; height: 123px;"><img src="https://tools.applemediaservices.com/api/badges/download-on-the-app-store/black/en-us?size=250x83&releaseDate=1684972800" alt="Download on the App Store" style="border-radius: 13px; width: 250px; height: 123px;"></a><a href='https://play.google.com/store/apps/details?id=nl.dijkitech.wiimote_dsu&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1' style="line-height: 83px;"><img alt='Get it on Google Play' style="width: 320px;" src='https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png'/></a>
Read the full README to know how to setup the connection between your mobile device and Dolphin
Installation (without App Store or Play Store)
Android
Download and install the .apk file from the Releases section.
iOS
Download the .ipa file from the Releases section.
If you are jailbroken, you can install AppSync Unified and then install the IPA file directly, just like on Android.
To build the IPA, run flutter build ipa --no-codesign.
If you are not jailbroken, you will need to sign the IPA first. You can do this for free using AltStore or Sideloadly, but restrictions will apply, such as the need to reinstall every 7 days. If you own a signing certificate, you use it with ios-app-signer or similar for a more permanent solution.
Build & Run
- Make sure you have the Flutter SDK installed on your computer, for more info see Flutter Getting Started.
- Connect your Android or iOS device to your computer and make sure it is listed when you run
flutter devicesin the terminal. - Run inside project directory:
flutter runto build and run the application on your mobile device.
Dolphin
If you want to use this application with the Dolphin emulator, select other input devices and fill in your phones IP address and port 26760. Moreover, a controller profile configuration file can be found in this repository, which should work for most games (some games using motion input may be troublesome, although implemented).
More detailed steps
Note: While the screenshots are from the Dolphin application for Mac OS, the same holds (and has been tested) for the Windows version.
-
Open Controller Settings
-
Click Alternate Input Sources
-
Check Enable
-
Click Add
-
Fill in your phone's IP Address (find in app settings), port number
26760, and give it a description. -
Select Emulated Wii Remote as "Wii Remote 1" and click Configure.
-
While the application is open on your phone, "DSUClient/0/[your_description]" (your phone) should be listed as possible input device, select it as input device.
<img src="controller-configuration.png" alt="Screenshot of controller configuration" width="500"/> -
You can now either map the buttons manually or use the
WiiMoteDSU.iniprofile file in this repository:- If using the profile from this repository place it within the Config folder of Dolphin:
- Windows:
(Documents/Dolphin Emulator/)Config/Profiles/Wiimote/WiiMoteDSU.ini - Mac OS:
/Users/username/Library/Application Support/Dolphin/Config/Profiles/Wiimote/WiiMoteDSU.ini
- Windows:
- When placed in this folder you can type "WiiMoteDSU" as profile and press 'Load' on the controller configuration screen. <br /> <img src="load-controller-profile.png" alt="Load custom controller profile" width="400"/><br /> Note: Set Extension to "None", something else (like Nunchunk) can override button mappings.
- If using the profile from this repository place it within the Config folder of Dolphin:
Extra: Pad Test (Windows only)
If you don't see your phone as controller appearing in the list while configuring an "Emulated Wii Remote" you can test whether the connection works using the DSU Pad Test application:
<img src="windows-pad-test.gif" alt="Example testing connection using DSU Pad Test on Windows" width="500"/>Credits
A lot of this application's code was made possible by looking at an existing DSU server implementation for Joy Con controllers at https://github.com/joaorb64/joycond-cemuhook/tree/master
Also the specification of the DSU protocol at https://v1993.github.io/cemuhook-protocol/ is of great value
