Composing with a mouse is often like trying to do caligraphy with a brick!
-- Andrew Garton on CEC Discuss, 1999
Page last updated: August 11, 2010. by Ross Bencina
Simulus is developing interface systems for musical performance using the P5 virtual reality glove made by Essential Reality. Although our primary goal is to explore the musical potential of these devices and incorporate them into our performances, this page is mainly concerned with our related technical activities. If you're interested in the music we have made in the past (without the gloves) there are some excerpts on our home page.
The manufacturer supplied P5 software development kit (SDK) is only supported on Windows and Linux. This kit does not support "absolute mode" spatial tracking, nor is a Macintosh version available. Due to the limitations of the manufacturer supplied SDK, and our requirement for operation on Windows and Macintosh, we are bypassing the manufacturer's SDK and have developed our own software. Luckily this job has been made easier by the existence of an open source Linux glove library developed by Jason McMullan (libp5glove). At present we have a preliminary version of this code running on Windows XP and MacOS-X. We intend to extend support to multiple gloves simultaneously connected to a single computer, and to improve the quality of spatial tracking.
We are primarily interested in interfacing with existing computer music software such as SuperCollider, Max/MSP, Reaktor, and AudioMulch. For this purpose we are working with the Open Sound Control (OSC) protocol over UDP/IP. OSC allows us to integrate with many existing computer music environments, and to easily develop new musical mappings within OSC compatible software.
We have developed software applications for Windows and MacOS-X.
P5 Glove MIDI (April 21 2004) for Windows by Ross Bencina converts P5 glove data into MIDI. This is a bit like Nicholas Fournel's P5Midi application except the MIDI codes are hardwired, and the spatial data uses absolute mode.
P5osc (December 4 2006) Universal Binary for Mac OSX (PPC and Intel) by Tim Kreger converts glove data into OSC (Open Sound Control) messages.
Older version of P5osc (April 28 2004) for Mac OSX (PPC only).
Source code for p5osc is available from a Subversion repository at googlecode:http://code.google.com/p/p5osc/
We have contributed to Jason McMullan's libp5glove by porting it to Windows and Mac OS X. The Windows port was done by Ross Bencina with the help of Alan Macek's Windows USB source code. Note that this port uses the built-in Windows HID driver and does not require any special drivers to be installed. The Mac OSX version was done by Tim Kreger and involved the development of a driver. libp5glove is distributed under the GNU LGPL license.
Source code for our version of libp5glove is available from a Subversion repository at googlecode:http://code.google.com/p/libp5glove/
The latest source code for libp5glove is available from the SVN repository referenced above. An older version with Windows executables is provided here for historical reasons. The zip file includes p5dump.exe and p5hand.exe. A recent version which includes code to transform glove coordinates to linear 3-space: libp5glove-0.2-win32-2004-02-26.zip (321k) An older version without matrix: libp5glove-0.2-win32-2004-02-20.zip.
Last time we checked, the forums on the manufacturer's web site were no longer accepting new members. We have started the P5 Glove Yahoo! group in order to provide a forum for people using and developing for the P5 glove.
Simulus are Steve Adam, Ross Bencina and Tim Kreger. Ross is responsible for Windows development and can be contacted at firstname.lastname@example.org. Tim is responsible for Macintosh OS-X development.
Thanks to Jason McMullan for his support, and the libp5glove library which solves the complex problem of unpacking the USB data from the glove.
Thanks to Roid from the essential reality discussion boards who provided much insight into essential reality's business status, and who kindly provided the 10LEDtest program.
Simulus gratefully acknowledges the financial support of Arts Victoria.