Line 1: |
Line 1: |
− | ==General info== | + | ==Drivers== |
− | | |
− | (A technical description of the Wiimote and its interface is available on the [[Wiimote]] page)
| |
− | | |
| The Wiimote appears to use the USB HID class to communicate with the Wii. It also supports SDP. | | The Wiimote appears to use the USB HID class to communicate with the Wii. It also supports SDP. |
| | | |
− | ===Download Windows Driver=== | + | ===Windows drivers=== |
| * RMX Automation ([http://wiki.darkain.com/wiki/Main_Page home page], [http://rmx.svn.sourceforge.net/viewvc/rmx/plugins/Wii%20Remote/ source code]) | | * RMX Automation ([http://wiki.darkain.com/wiki/Main_Page home page], [http://rmx.svn.sourceforge.net/viewvc/rmx/plugins/Wii%20Remote/ source code]) |
| * [[GlovePie|GlovePIE]] ([http://carl.kenner.googlepages.com/glovepie_download home page]) | | * [[GlovePie|GlovePIE]] ([http://carl.kenner.googlepages.com/glovepie_download home page]) |
Line 12: |
Line 9: |
| * [http://wiiuse.net wiiuse] Cross-platform C library. See below for additional information. | | * [http://wiiuse.net wiiuse] Cross-platform C library. See below for additional information. |
| | | |
− | ===Download Linux CWiid=== | + | ===Linux CWiid=== |
| CWiid is a collection of Linux tools written in C for interfacing to the Nintendo Wiimote. | | CWiid is a collection of Linux tools written in C for interfacing to the Nintendo Wiimote. |
| It contains a library (libcwiid), an event mouse joystick driver with plugin architecture (wminput), a GUI control panel and test application (wiigui) and a test/demo application (wiidemo). | | It contains a library (libcwiid), an event mouse joystick driver with plugin architecture (wminput), a GUI control panel and test application (wiigui) and a test/demo application (wiidemo). |
Line 18: |
Line 15: |
| Download: [http://abstrakraft.org/cwiid/ http://abstrakraft.org/cwiid/] | | Download: [http://abstrakraft.org/cwiid/ http://abstrakraft.org/cwiid/] |
| | | |
− | ===Download Linux Test Application=== | + | ===Linux test application=== |
| | | |
| Wiimodulator.py doesn't deserve to be called a driver... It's a very poorly written proof of concept, which I rushed to do in a few hours with no prior knowledge of bluetooth. It works under Linux. You need pybluez. | | Wiimodulator.py doesn't deserve to be called a driver... It's a very poorly written proof of concept, which I rushed to do in a few hours with no prior knowledge of bluetooth. It works under Linux. You need pybluez. |
Line 24: |
Line 21: |
| Get wiimodulator.py now! | | Get wiimodulator.py now! |
| | | |
− | ===Download Linux Wiimote-to-Joystick Daemon=== | + | ===Linux Wiimote-to-joystick daemon=== |
| | | |
| Using wm2js you can use your Wiimote like a normal Joypad (/dev/input/jsX). | | Using wm2js you can use your Wiimote like a normal Joypad (/dev/input/jsX). |
Line 33: |
Line 30: |
| The [http://blogs.msdn.com/coding4fun/archive/2007/03/14/1879033.aspx Managed Library for Nintendo's Wiimote] may be adaptable to '''Mono'''. | | The [http://blogs.msdn.com/coding4fun/archive/2007/03/14/1879033.aspx Managed Library for Nintendo's Wiimote] may be adaptable to '''Mono'''. |
| | | |
− | ===Download NI LabVIEW Wiimote Drivers (VIs)=== | + | ===NI LabVIEW Wiimote drivers (VIs)=== |
| | | |
| For LabVIEW programmers, you can use this set of VIs to integrate the Wiimote into your applications. The download is from the discussion forum at NI. | | For LabVIEW programmers, you can use this set of VIs to integrate the Wiimote into your applications. The download is from the discussion forum at NI. |
Line 39: |
Line 36: |
| Download: [http://forums.ni.com/attachments/ni/170/249598/1/wiimote.zip] | | Download: [http://forums.ni.com/attachments/ni/170/249598/1/wiimote.zip] |
| | | |
− | ===Download WiiRemoteJ, a Java Library for the Wii Remote=== | + | ===WiiRemoteJ, a Java library for the Wii Remote=== |
| | | |
| WiiRemoteJ is a pure Java Library developed to allow Java developers easy access to the Wii Remote hardware. WiiRemoteJ sits on top of the Java Bluetooth API, JSR-082, allowing it to be platform-independent. | | WiiRemoteJ is a pure Java Library developed to allow Java developers easy access to the Wii Remote hardware. WiiRemoteJ sits on top of the Java Bluetooth API, JSR-082, allowing it to be platform-independent. |
Line 47: |
Line 44: |
| Download: [http://www.wiili.org/forum/wiiremotej-f68.html WiiRemoteJ Forum] | | Download: [http://www.wiili.org/forum/wiiremotej-f68.html WiiRemoteJ Forum] |
| | | |
− | ===Download motej JAVA library=== | + | ===motej Java library=== |
| | | |
| motej is an Apache licensed JAVA library for the wiimote. | | motej is an Apache licensed JAVA library for the wiimote. |
Line 53: |
Line 50: |
| Download: [http://motej.sourceforge.net http://motej.sourceforge.net] | | Download: [http://motej.sourceforge.net http://motej.sourceforge.net] |
| | | |
− | ===Download wiiuse C Linux/Windows Library=== | + | ===Wiiuse C Linux/Windows library=== |
| | | |
| Wiiuse is a library written in C that connects with several Nintendo Wii remotes. Supports motion sensing, IR tracking, nunchuk, classic controller, and the Guitar Hero 3 controller. Single threaded and nonblocking makes a light weight and clean API. | | Wiiuse is a library written in C that connects with several Nintendo Wii remotes. Supports motion sensing, IR tracking, nunchuk, classic controller, and the Guitar Hero 3 controller. Single threaded and nonblocking makes a light weight and clean API. |
Line 61: |
Line 58: |
| Download: [http://wiiuse.net http://wiiuse.net] | | Download: [http://wiiuse.net http://wiiuse.net] |
| | | |
− | ===Download WiiuseJ Linux/Windows Java Library=== | + | ===WiiuseJ Linux/Windows Java library=== |
| | | |
| WiiuseJ is a java API to use wiimotes on your computer. This API is built on top of the excellent API wiiuse using JNI. | | WiiuseJ is a java API to use wiimotes on your computer. This API is built on top of the excellent API wiiuse using JNI. |
Line 78: |
Line 75: |
| Patch: http://spenceal-3.student.rose-hulman.edu/linked/hidd.diff | | Patch: http://spenceal-3.student.rose-hulman.edu/linked/hidd.diff |
| | | |
− | ==HID Specs== | + | ==HID specs== |
| LED's are controlled using a SET_REPORT HID request on Output channel 11. The left 4 bits are the only ones that matter and correspond (in order) to the LED's. | | LED's are controlled using a SET_REPORT HID request on Output channel 11. The left 4 bits are the only ones that matter and correspond (in order) to the LED's. |
| | | |