Add wiimote power to your JUCE based applications.
The first version of WiiJuce has just been released! at:
http://www.diplabs.com/svn/wiijuce/
Description:
- A Juce based cross platform library for the Wiimote.
Supported platforms:
- GNU/Linux
- MacOSX
- Windows
Features:
- Send Rumble and Leds commands
- Receive raw accelerations values
- Receive buttons states
- Command line and graphical samples
- Multiple wiimote devices support
- Asynchronous wiimote devices enumeration
- Asynchronous wiimote devices messaging
- Minimal crossplatform bluetooth device abstraction
Known bugs:
- Multiple wiimotes seems not to work on MacOSX. No idea why.
- Most of time, the L2CAP writing channel from the mac to the wiimote
disconnect itself a few seconds after connection. If this does not
happen after a few seconds, it will work for all the running time.
Limitation:
- As the native bluetooth stack of Windows is really crappy, the
easiest is to use the HID interface instead of the bluetooth win32
API. The current implementation is thus limited to Wiimotes
synchronized with HID (as for most Windows Wiimote
implementations). Consequently, the Windows part cannot be used for
non hid bluetooth communication.
Possible contributions:
- Additionnal Wiimote features: nunchunk, IR, speaker, …
- The bluetooth classes might be reusable for other bluetooth devices
Usage notes:
- With CMake:
The library is shipped with a CMake configure file that allow easy
cross-platform compilation.
-
Install the following dependencies:
CMake: http://www.cmake.org/
Juce: http://www.rawmaterialsoftware.com/juce/ -
Run CMake:
ccmake .
don’t forget to set JUCE_ROOT to the path of extracted JUCE library
sources -
Run the following samples:
./wiijuce_sample
./wiijuce_gui -
Make your own wiimote enabled project:
#include “wiijuce.h”
link with libwiijuce.a
look at wiijuce_sample.cpp and wiijuce_gui.cpp for documentation
- Otherwise:
Make a project (Visual Studio, XCode, Makefiles) yourself !
The directory ‘platform_specific_code’ contains the platform specific
files, and platform specific (includes, linking…) options can be
found in the ‘CMakeLists.txt’ file.
Feel free to ask SVN write access.
Authors:
Francis Maes <francis.maes - at - gmail - dot - com>
Johan Euphrosine <proppy - at - aminche - dot - com>
License:
GPLv2
Credits:
The enumeration code and writing code (which detects the kind of
bluetooth stacks) come from the wiiuse project by Michael Laforest
http://wiiuse.net/
The MacOS implementation is inspired from the DarwiinRemote Framework
which is written in Objective-C
The enumeration code of the,work in progress, native BlueTooth
implementation for Windows, comes from
http://www.codeproject.com/useritems/BluetoothAPI__Device_Enum.asp