WiiRemoteJ v1.4: Java library, Wiimote and Balance Board interaction via Bluetooth
This development library isn’t strictly Wiibrew, but it’s a mighty useful tool that homebrew developers for other platforms out there might enjoy. WiiRemoteJ is a library that allows your computer to interact with the Wiimote and Balance Board through Bluetooth, with Java as the medium. More details in the full article.
Download: WiiRemoteJ v1.4
Download: WiiRemoteJ v1.4 (javadocs)
This development library isn’t strictly Wiibrew, but since it concerns the Wii peripherals, it rightly belongs here in the Wii blog. WiiRemoteJ is a library that allows the Wiimote and the Balance Board to interact with computers via Bluetooth, with Java as the medium.
The library is now on version 1.4. The library’s author, Cha0s, remarks that this library places special emphasis on multiple remote support. This is also the first release to feature Balance Board support, so please note that the Balance Board class doesn’t have much functions yet.
Included in the download below is the javadocs containing the necessary information for every public class, field, and method. For those who need the info, here is the changelog for WiiRemoteJ since its initial release from last year.
7/03/08 v1.4
- Fixed bugs with multiple remotes
- Made Exceptions thrown when connecting via findRemote() propagate to user
- Added Balance Board support
- Updated README and LICENSE appropriately
2/24/08 v1.3
- Improved thread cleanup after disconnect.
- Added ability to create “fake” WiiRemotes for use in initializing events
- Updated README and LICENSE
1/14/08 v1.2
- Workaround for BlueSoleil bug added.
- GuitarExtension added
12/26/07 v1.1
- Numerous bug fixes. I’ve forgotten what they all are.
- Added support for systems that don’t have mice.
6/25/07 v1.0
- Totally redid ButtonMaps to allow multiple types of actions (key presses, mouse
- clicks, and mouse scrolls) to coexist.
- ButtonMap subclasses still exist, but now serve only to provide convenience
- constructors. They have no additional or specialized functionality.
- ButtonMaps can also now require buttons to be pressed on both the remote and a
- peripheral to trigger.
- Added isAnyPressed and isOnlyPressed as button evaluation methods.
- By default, no lights turn on when the remote is connected (all four lights used to turn
- on). You should turn on at least one light so that users know the remote is on.
- Got my hands on and tested a classic controller. There were bugs. They are fixed.
- Changed left and right triggers on the classic controller to percents instead of values.
- Fixed a lot of bugs.
- Improved IRAccelerometerMouse to be more reliable when the mouse is being
- moved around (there is some acceleration). It’s not where I want it yet, but it’s better.
4/19/07 v0.9
- Fixed a memory leak with WRButtonEvents
- Fixed/clarified some documentation
- Added mousewheel button mapping support
- Fixed bug where button mapping could cause keys to “stick”
- Improved efficiency of button mapping in general
- Many changes to the test/sample file WRLImpl.java (to demo scrolling)
4/03/07 v0.8
- Initial release!
Download: WiiRemoteJ v1.4
Download: WiiRemoteJ v1.4 (javadocs)
Other development libraries for Wii homebrew:
- libwiisprite 0.2.2 – supports buffer loading
- LibOSK 0.4.4: configurable on-screen keyboard for Wiibrew apps
- Box2D for the Wii: 2D physics engine, with sample program
- GRRLib 3.0.1 Alpha – added fixes for bugs from version 3.0
Via WiiLi.org