I'm using a Wii balance board (from the Wii fit game) to measure
changes in my subjects' centre of gravity.
The Wii Balance Board connects through bluetooth to my laptop. Using
the programs GlovePIE (http://carl.kenner.googlepages.com/
glovepie_download) and PPJoy (http://www.geocities.com/deonvdw/Docs/
PPJoyMain.htm) and a small script I wrote for GlovePIE this is
converted to a virtual Windows joystick X,Y values which can be read
directly and easily using Mathematica's ControllerState function.
This gets me about 400 samples per second. A real-time plot of the
user's motions reduces it to about 20 Hz. Still not bad at all, and
very useful. Works for the Wiimote (acceleration sensors!) as well.
Cheers - Sjoerd
This is excellent! Thanks for sharing the links.
Anyone else find it a little limiting that one needs to virtualize
devices to a "joystick" before Mathematica can access it through
controller-state? Perhaps I've been looking in the wrong places,
but I'd very much appreciate documentation towards writing new Mathematica
drivers for unrecognized controllers.
Barring that, anyone familiar with similar joystick virtualization
under mac os X?
Best, JJ
Cheers -- Sjoerd
On Apr 16, 10:18 am, jjmc <superfancyawes...@gmail.com> wrote:
> Anyone else find it a little limiting that one needs to virtualize
> devices to a "joystick" before Mathematica can access it through
> controller-state? Perhaps I've been looking in the wrong places,
> but I'd very much appreciate documentation towards writing new Mathematic=
a
Just to clarify, while I have no doubt that Mathematica is incredible
at recognizing all sorts of devices, it would be nice to have
documentation on how to get Mathematica's ControllerState to recognize
devices that Mathematica doesn't out of the box. I assume this would
require the device driver to implement a particular (standard?)
protocol, and possibly a new controller to be defined within
mathematica.
It seems likely that Mathematica assumes some standard protocol that
any input devices should implement. It would be nice to know what
that protocol is: i.e. I'd love to see a statement Mathematica that
will recognize any devices that implement the **** protocol. This
way, when I build a fancy new input device, I can ensure that
Mathematica will recognize it.
You needed to virtualize the wiiboard as a joystick. This is a fine
and a wonderful hack, but it what would an open-source wiiboard
windows driver had to know to do, such that Mathematica could
recognize it as a device in and of itself? I haven't really seen any
documentation on this.
Best, -JJ
David Bailey
http://www.dbaileyconsultancy.co.uk
Here are the categories of devices supported by Mathematica
(ControllerState/Maniuplate/Graphics3D) v6-v7:
Mac OS X:
* "Mac OS X Human Interface Device" (including "3Dconnexion 6 DOF
Device")
* "Mac OS X Motion Sensor Device"
* "SensAble Haptic Device" (PowerPC only)
* "MIDI Device" (v7+)
Windows:
* "Windows DirectInput Device"
* "Windows XInput Device"
* "3Dconnexion 6 DOF Device"
* "SensAble Haptic Device"
Linux:
* "Linux Joystick Device" (/dev/js*)
* "SensAble Haptic Device"
-Rob