I was lucky enough to get a decent joystick for a good price from eBay, a Speedlink ‘Black Widow’:
Obviously, this is a bit more sophisticated than the controller with small joysticks which I used for the StyloSim, and the kind of thing used for semi-realistic flight control programs, having a throttle on the left-hand side and joystick on the right, and a nice feel to it.
As for musical applications, it connects to a computer via USB, as can be seen in the photo, so is very suitable for use with PureData’s ‘hid’ (Human Interface Device) function.
I thought at first of designing an instrument, but felt this would be less easy to operate than the Cybersynth or Theresynth, which used gamepad-type controllers. An effects device like the StyloSim would be possible, but at the moment would seem like going over old ground: something I might come back to later.
Instead, I decided on a device for manipulating samples. At the time I thought this was an original idea, but I have subsequently discovered someone who does this – in quite a different way, but using the same kind of device: http://www.youtube.com/watch?v=9wdb6-QLnQ0.
That was Johannes Kreidler, a very interesting contemporary German composer making music with cutting edge electronics. Check out his website at http://www.kreidler-net.de/english/index.html or type ‘Johannes Kreidler’ into YouTube. Kreidler is also an expert on PureData, as it happens, and wrote the very good tutorial ‘Programming Electronic Music in Pd’, translated into English at http://www.pd-tutorial.com/english/index.html.
So, I used PureData to create a simple device for manipulating samples with the Black Widow.
There are 4 buttons on the front of the Black Widow:
These are used to control up to 4 separate samples: when the Black Widow Pd app is first opened, the buttons are pressed one by one to load the 4 samples; when in use, the throttle, joystick and other controls operate on the sample whose button was last pressed.
As for the other controls, these are: on the left, the throttle, which includes two buttons on the reverse,left and right:
Pressing the left-hand button on the back of the throttle and moving the throttle forward from the central position increases the sample playback speed; moving the throttle backwards from the central position increases the playback speed, but plays the sample backwards. When the button is released the speed and direction are fixed. Pressing the right-hand button on the back of the throttle toggles the playback direction.
Moving the joystick to the left pans the sample to the left; moving it to the right pans it to the right. Moving the joystick forward from the central position increases the playback volume; moving it backwards from the central position increases the centre frequency of a bandpass filter.
The other buttons on the joystick have the following functions:
The button F3, when pressed as the sample is playing, sets the start point of a section within the sample; F4 sets the end point.
The hatswitch has 4 functions: RIGHT cycles playback from the start point to the end point of a section set with the F3 and F4 buttons; DOWN pauses playback; UP Restarts playback; LEFT fixes a volume or filter setting.
F2 restarts playback at normal speed from the beginning of the sample.
This is the control window, in the process of loading a sample:
There are some problems with it: it doesn’t always seem to respond to instructions, particularly the ‘Fix’ command from the hatswitch, don’t quite know why. Also, the interface isn’t very practical: if you want to look at what you’re doing as well as listen, there are separate windows for each sample which you have to bring to the front.
However, it mostly works as described, and is quite entertaining to play with! I’ll post a sound file shortly.
[Edit: the Black Widow has been superseded by the Black Widow, MkII, described here].