170 lines
5.1 KiB
Plaintext
170 lines
5.1 KiB
Plaintext
---------------------------
|
|
-
|
|
- README - Wiiuse
|
|
-
|
|
---------------------------
|
|
|
|
Fork, located at: http://github.com/rpavlik/wiiuse
|
|
|
|
Original project:
|
|
http://wiiuse.net/
|
|
http://wiiuse.sourceforge.net/
|
|
http://sourceforge.net/projects/wiiuse/
|
|
|
|
---------------------------
|
|
|
|
ABOUT
|
|
|
|
Wiiuse is a library written in C that connects with several Nintendo
|
|
Wii remotes. Supports motion sensing, IR tracking, nunchuk, classic
|
|
controller, Balance Board, and the Guitar Hero 3 controller. Single
|
|
threaded and nonblocking makes a light weight and clean API.
|
|
|
|
Distributed under the GPL 3+.
|
|
|
|
This is a friendly fork, prompted by apparent non-maintained status
|
|
of upstream project but proliferation of ad-hoc forks without
|
|
project infrastructure. Balance board support has been merged from
|
|
TU-Delft [1] cross-referenced with other similar implementations in
|
|
embedded forks of WiiUse in other applications. Hopefully GitHub will
|
|
help the community maintain this project more seamlessly now.
|
|
|
|
Patches and improvements are greatly appreciated - the easiest way
|
|
to submit them is to fork the repository on GitHub and make the
|
|
changes, then submit a pull request. The "fork and edit this file"
|
|
button on the web interface should make this even simpler.
|
|
|
|
[1] http://graphics.tudelft.nl/Projects/WiiBalanceBoard
|
|
|
|
|
|
AUTHORS
|
|
|
|
Fork Maintainer: Ryan Pavlik <rpavlik@iastate.edu> or <abiryan@ryand.net>
|
|
Original Author: Michael Laforest < para > < thepara (--AT--) g m a i l [--DOT--] com >
|
|
|
|
Additional Contributors:
|
|
- dhewg
|
|
- Christopher Sawczuk @ TU-Delft (initial Balance Board support)
|
|
- Paul Burton ( https://github.com/paulburton/wiiuse )
|
|
- Karl Semich ( https://github.com/xloem )
|
|
- Johannes Zarl <johannes.zarl@jku.at>
|
|
|
|
|
|
LICENSE
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
ACKNOWLEDGEMENTS BY MICHAEL LAFOREST
|
|
|
|
http://wiibrew.org/
|
|
This site and their users have contributed an immense amount of
|
|
information about the wiimote and its technical details. I could
|
|
not have written this program without the vast amounts of
|
|
reverse engineered information that was researched by them.
|
|
|
|
Nintendo
|
|
Of course Nintendo for designing and manufacturing the Wii and Wii remote.
|
|
|
|
BlueZ
|
|
Easy and intuitive bluetooth stack for Linux.
|
|
|
|
Thanks to Brent for letting me borrow his Guitar Hero 3 controller.
|
|
|
|
|
|
AUDIENCE
|
|
|
|
This project is intended for developers who wish to include support
|
|
for the Nintendo Wii remote with their third party application.
|
|
|
|
PLATFORMS AND DEPENDENCIES
|
|
|
|
Wiiuse currently operates on both Linux and Windows.
|
|
You will need:
|
|
|
|
For Linux:
|
|
- The kernel must support bluetooth
|
|
- The BlueZ bluetooth drivers must be installed
|
|
- If compiling, you'll need the BlueZ dev files (Debian/Ubuntu package
|
|
libbluetooth-dev)
|
|
|
|
For Windows:
|
|
- Bluetooth driver (tested with Microsoft's stack with Windows XP SP2)
|
|
- If compiling, Microsoft Windows Driver Development Kit (DDK)
|
|
|
|
For either platform:
|
|
- If compiling, CMake is needed to generate a makefile
|
|
|
|
COMPILING
|
|
|
|
Linux:
|
|
You need SDL and OpenGL installed to compile the SDL example.
|
|
|
|
$ cd build
|
|
|
|
$ ccmake .. [-DCMAKE_INSTALL_PREFIX=/usr/local] [-DCMAKE_BUILD_TYPE=Release]
|
|
OR
|
|
$ cmake-gui ..
|
|
|
|
$ make [target]
|
|
|
|
If 'target' is omitted then everything is compiled.
|
|
|
|
Where 'target' can be any of the following:
|
|
|
|
- wiiuse
|
|
Compiles libwiiuse.so
|
|
|
|
- wiiuseexample
|
|
Compiles wiiuse-example
|
|
|
|
- wiiuseexample-sdl
|
|
Compiles wiiuse-sdl
|
|
|
|
- doc
|
|
Generates doxygen-based API documentation in HTML and PDF
|
|
format in docs-generated
|
|
|
|
Become root.
|
|
|
|
# make install
|
|
|
|
libwiiuse.so is installed to CMAKE_INSTALL_PREFIX/lib
|
|
wiiuse-example and wiiuse-sdl are installed to CMAKE_INSTALL_PREFIX/bin
|
|
|
|
Windows:
|
|
The CMake GUI can be used to generate a Visual Studio solution.
|
|
|
|
You need the install the Windows DDK (driver development kit)
|
|
to compile wiiuse.
|
|
You can download this from here:
|
|
http://www.microsoft.com/whdc/devtools/ddk/default.mspx
|
|
|
|
You might also need to install the latest Windows SDK.
|
|
|
|
|
|
USING THE LIBRARY IN A THIRD PARTY APPLICATION
|
|
|
|
To use the library in your own program you must first compile wiiuse as a module.
|
|
Include include/wiiuse.h in any file that uses wiiuse.
|
|
|
|
For Linux you must link wiiuse.so ( -lwiiuse ).
|
|
For Windows you must link wiiuse.lib. When your program runs it will need wiiuse.dll.
|
|
|
|
|
|
BUGS
|
|
|
|
On Windows using more than one wiimote (usually more than two wiimotes) may cause
|
|
significant latency.
|