WiiJuce

From WiiLi

Jump to: navigation, search


Contents

[edit] Description

A Juce [1] based cross platform C++ library for the Wiimote.

[edit] Supported platforms

  • GNU/Linux
  • MacOSX
  • Windows

[edit] Features

  • Send Rumble and Leds commands
  • Receive raw accelerations values
  • Receive buttons states
  • Receive IR sensor data as points
  • Command line and graphical samples
  • Multiple wiimote devices support
  • Asynchronous wiimote devices enumeration
  • Asynchronous wiimote devices messaging
  • Minimal crossplatform bluetooth device abstraction

[edit] Known bugs

  • Multiple wiimotes seems not to work on MacOSX.
  • 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.

[edit] Limitation

As the native bluetooth stack of Windows is not up to par with other operating systems, 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.

[edit] Possible contributions

  • Additionnal Wiimote features: nunchunk, IR, speaker, ...
  • The bluetooth classes might be reusable for other bluetooth devices

[edit] Usage notes

[edit] With CMake

The library is shipped with a CMake configure file that allow easy cross-platform compilation.

  • Install the following dependencies:
  • 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

[edit] 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.

[edit] External Links

Windows
cWiimote | GlovePIE | RMX Automation | Wiim | wiimote-api | WiinRemote | WiimoteLib

Linux
CWiid | WMD | Perlwiimote | libwiimote | lg3d-wii

OSX
DarwiinRemote | Remote Buddy | The Wiinstrument

Multiplatform
OpenPIE | Wiimote_Simple | WiiremoteJ | wiiuse | WiiJuce | WiiuseJ

PyBluez Scripts: Wiiewer | Wiimotecomm


Personal tools
Online Casino - best online casino reviews.
Facebook Developers - facebook applications, facebook developers, facebook development, social network application development and viral widget social media strategy