I wanted to make something like this using Python, but I kept failing, mainly because this computer runs windows. A few days ago, I finally got it working.
N.B.: This is my first instructable. Please don't scream at me for lack of instructions.
N.B.2: This works also for XBox or PS controllers. Just skip to step 6.
N.B.3: AFAIK this works for Wii U controllers, although I haven't tested it yet.
N.B.4: I will (hopefully) post a video soon.
Step 1: What You Will Need
1. A computer running Windows
2. A bluetooth dongle(if your computer doesn't have one in-built)
3. A wii remote
4. Internet to download the files
Step 2: Disabling Windows Update to Find Drivers
Because the wii remote doesn't automatically reconnect to the computer, you have to remove it from the list of connected devices, and every time you reconnect, windows will try to fetch a new driver.
To prevent that, (I'm using Windows 7) click the start button, and search Devices and Printers. Click on it.
Under devices, right click on your computer, and click Device Installation Settings.
Choose No, let me choose what to do and Install driver software from Windows Update if it is not found on my computer.
Step 3: Download Drivers
Windows, by default, uses the HID drivers, which kinda suck, and don't work for my purposes anyway.
So, go to https://www.julianloehr.de/educational-work/hid-wi... and download the latest version under Gamepad (0.3.0.0 as of 15AUG2017). Make sure you choose 32bit or 64bit depending on your system.
Unzip it, and run TinyInstaller.exe
Step 4: Download
Now, you need to download Joy to Key. This will allow button presses to be translated into keyboard or mouse movements.
Go to joytokey.net/en/download and download Joy to Key, preferably from CNET or Softpedia.
Keep the downloaded file, but don't open it yet.
Step 5: Pair the Wii Remote
Press 1 and 2 on your wii remote. Keep pressing them.
Go to your computer, right click on the bluetooth icon in the bottom right, and select Add a Device.
Click on "Nintendo RVL-CNT-01" or "Nintendo RVL-CNT-01-TR" if you have the MotionPlus inside wii remote.
Keep pressing 1 and 2.
The bluetooth icon should now have a balloon over it, saying "Installing Driver Software".
Stop pressing it when the balloon says "Wiimote Device was installed successfully".
The LEDs on the wii remote should now go off, off, on, on.
Step 6: JoytoKey
Now open JoytoKey.exe. Try pressing on buttons, it should be highlighted.
To assign a keyboard key to a button, press the button.
There should be something highlighted on the JoytoKey window. Double click on it.
To assign a keyboard key, just press that key on the keyboard and click OK.
To assign mouse movement, go to the mouse tab.
The horizontal bar is horizontal movement (left and right), and the 1st vertical bar is vertical movement (up and down).
The second vertical bar is the scroll wheel.
Step 7: Final Tips
I have gone to Options and checked the box that says "Configure diagonal input as separate buttons" because when I map it to mouse movement, the diagonal speed becomes very fast.
I have also made multiple layouts, then went to Settings > associate profiles with applications and made 1 layout be used normally, then use another one when Powerpoint is open for example.
~~Every time you want to disconnect and reconnect your wii remote, you have to remove it from Devices and Printers, then go back to reconnecting the wii remote. Using BlueSoleil might fix this, but BlueSoleil only gives you 2MB of data transfer for trial versions, and besides, the in-built one doesn't have big problems.~~
EDIT: As of Windows 10 this is not necessary. To reconnect, open the message tray on the bottom right (the speech bubble thing). Then turn Bluetooth off, press 1 and 2, then turn on Bluetooth again. It might take a few tries, but it should work.
Please leave other great functionalities you have done in the comments!