SkillAgentSearch skills...

WiiMoteDSU

Virtual wii mote with DSU/cemuhook server for android and iOS, made with flutter.

Install / Use

/learn @marcowindt/WiiMoteDSU
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

WiiMoteDSU

Download via App Store or Play Store

<a href="https://apps.apple.com/us/app/dsu-remote/id6448928057?itsct=apps_box_badge&amp;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&amp;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 devices in the terminal.
  • Run inside project directory: flutter run to 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.

  1. Open Controller Settings

  2. Click Alternate Input Sources

  3. Check Enable

  4. Click Add

  5. Fill in your phone's IP Address (find in app settings), port number 26760, and give it a description.

  6. Select Emulated Wii Remote as "Wii Remote 1" and click Configure.

  7. 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"/>
  8. You can now either map the buttons manually or use the WiiMoteDSU.ini profile file in this repository:

    1. 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
    2. 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.

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

Screenshots

<img src="screenshot.png" alt="Screenshot of the application" width="250"/> <img src="https://user-images.githubusercontent.com/9336858/216842253-9327329b-e906-4f58-a634-e839e8966d8d.jpeg" alt="Wii Classic Controller" height="250" /> <img src="screenshot-settings.png" alt="Screenshot of the available settings" width="250"/>
View on GitHub
GitHub Stars135
CategoryDevelopment
Updated26m ago
Forks19

Languages

Dart

Security Score

100/100

Audited on Mar 25, 2026

No findings