Date: Mon, 17 Mar 2008 17:43:03 -0500 From: "Mike McGonagle" To: "pd-list@iem.at" Subject: [PD] Alternate Controllers Hello all, Over the past few weeks, I have been looking at building a controller for myself, but was curious what other sorts of things others are doing with alternate controllers. What controllers are you using? How are you using them to control your programs? Has anyone considered putting together an "Alternate Controllers for PD" page? I am just curious if I should build my own, or just use an existing controller... (Also, Hans, the other day you posted about a new controller you have, but I can't find the email... What was that device?) Thanks, Mike _______________________________________________ From: Hans-Christoph Steiner Date: Mon, 17 Mar 2008 20:16:05 -0400 To: "Mike McGonagle" Cc: "pd-list@iem.at" Subject: Re: [PD] Alternate Controllers I keep a page of some examples: http://at.or.at/hans/research/nime/hid/examples.html This would be much cooler as a wiki page somewhere. I think it would be a good thing to have somewhere on puredata.info as a wiki page. The controller is called the gametrak. .hc _______________________________________________ Date: Mon, 17 Mar 2008 21:29:17 -0500 From: "Mike McGonagle" To: "pd-list@iem.at" Subject: [PD] Fwd: Alternate Controllers Well, the stuff I would like to do with it would not be using MIDI. I have a program that I would like to control via some continuous controller, it is a granular synthesis program, and each parameter has 6 limits from which the actual parameter is derived. So, basically, I would like to not only be able to produce some continuous data, but also be able to easily select which parameter I will be controlling at any given time. I was looking at the Wii, and thought that it might be something useful. I saw R Boulange (sp?) perform with a Radio Baton in the 90's, and was very interested in that, except that they went for somewhere around 4000$... So, I am still looking... Thanks, Mike _______________________________________________ From: Steffen Juul Date: Tue, 18 Mar 2008 08:15:16 +0100 To: Mike McGonagle Cc: "pd-list@iem.at" Subject: Re: [PD] Fwd: Alternate Controllers On 18/03/2008, at 3.29, Mike McGonagle wrote: > I saw R Boulange (sp?) perform with a Radio Baton in the 90's, and > was very interested in that, except that they went for somewhere > around 4000$ Didn't Max Matthews publish the schematics? At icmc07 there was a guy demoing a vocal piece using the Radio Baton and iirc he said that they were bugging Max for a USB version. _______________________________________________ Date: Tue, 18 Mar 2008 13:17:04 -0600 From: nils To: pd-list@iem.at Subject: Re: [PD] Alternate Controllers I've been playing with the arduino lots and it makes it really easy to build your own controllers from whatever, light sensors, old joysticks, wiichucks. And it's cheap =). The wiimote-wiichuck combo seems to have some real potential since you can control the equivalent of 10 knobs and 4 buttons with two hands. If you're looking for midi controllers, I'm fond of doepfer, I bought a few pocket control's (16 knobs) 5 years ago and they really can take a beating, they also have a fader version and a rotary version now too, and I believe they sell you just the logic board on it's own for you to wire whatever sort of electrical device to. The monome devices also look pretty entertaining. _______________________________________________ Date: Tue, 18 Mar 2008 14:50:20 -0500 From: "Mike McGonagle" To: pd-list@iem.at Subject: Re: [PD] Alternate Controllers Thanks, everyone. And thanks, Nils, for the link to Doepfer, one of the ideas that I had for building a controller is pretty much already up there. I am also working on another project in building a hammer dulcimer, so I think this PD controller project is going to be in the planning stages for a few months at least. But the ideas that I have are to create a bank of sliders, where each slider controls one of the granular synth parameters. One thing that I want to be able to do would be to store "presents" that would allow for the quick changing of all the sliders at once. I had also thought about the idea of creating a small set of sliders that could be used to control different parameters, with the setting of a switch, but that might be difficult to deal with, as the values currently stored in those parameters may "jump" when a controller is switched over and the slider produces a discontinuous level. I guess I just need to see other peoples controllers in action. Thanks again, Mike _______________________________________________ Date: Tue, 18 Mar 2008 17:17:26 -0500 From: "Daniel Wilcox" To: pd-list@iem.at Subject: [PD] Alternate Controllers Try hacking some gamepads ... its cheap and easy. Try [hid]. My project, robotcowboy, makes use of hacked gamepads and a custom joy -> OSC daemon in Linux. I'm getting ready to release it soon, so if you use Linux you could try that. For instance, I cut a gamepad up and wrapped it around my old trumpet. pic1, pic2, a short pd session with it There's lots of cool stuff you can for cheap. Also, old console gamepads (psx, ps2, gamecube) are readily available and all you need is a usb converter. I've found aftermarket playstation controllers the perfect hackables. -- Dan Wilcox danomatika http://www.robotcowboy.com>www.robotcowboy.com _______________________________________________ Date: Tue, 18 Mar 2008 17:02:20 -0700 (PDT) From: James Rojsirivat To: Daniel Wilcox Cc: pd-list@iem.at Subject: Re: [PD] Alternate Controllers Since I was working on the Guitar Heroes controller and [hid], I tried plugging in my old Microsoft Sidewinder controller. It read perfectly. This is OS X. So with that controller you get 8 trigger buttons, 1 select buttons, and d-pad with variable values. Perfect simple way as something to trigger events. James _______________________________________________ Date: Wed, 19 Mar 2008 01:34:42 +0100 From: Derek Holzer To: Martin Howse Cc: pd-list@iem.at Subject: Re: [PD] Alternate Controllers What's interesting is that the HID protocol is orders of magnitude faster than using USB-serial to access an Arduino. We figured that out last week preparing for the gamepad hacking workshop at Pickled Feet here in Berlin. This is because gaming is such a huge market, I figure, which really drives the computer hardware industry. But geeks with sensors, they just don't represent much of a market share at all, do they... ;-) And the serial port protocol is pretty old and dusty at this point. Martin Howse etched up some very simple ATMega8 HID boards based on this design: http://www.flightsim.com/cgi/kds?$=main/howto/mind.htm These worked very well with [hid] on Linux and OS X, and they worked with the Windows [joystick] object just fine too. Total cost approx EUR 3! Very fast and reliable, with two 10 bit and five 8 bit sensor inputs plus room for 24 buttons (according to the original design, however these aren't used on Martin's stripped down board). The author of the original design says that an ATMega16 or greater could have many more sensor inputs (and buttons too). The inputs take 0-5 V DC as control information, so any kind of sensor you can rig up as a voltage divider will work great. Board also provides 0 V and 5 V, from the USB bus. A savvy person could easily do one of their own, or perhaps I'll convince Martin (CC'ed here) to post his board somewhere. Enjoy! d. -- derek holzer ::: http://www.umatic.nl ::: http://blog.myspace.com/macumbista ---Oblique Strategy # 163: "Turn it upside down" _______________________________________________ Date: Tue, 18 Mar 2008 19:56:35 -0500 From: "Charles Henry" To: "Derek Holzer" , pd-list@iem.at Subject: Re: [PD] Alternate Controllers On Tue, Mar 18, 2008 at 7:34 PM, Derek Holzer wrote: > What's interesting is that the HID protocol is orders of magnitude > faster than using USB-serial to access an Arduino. We figured that out > last week preparing for the gamepad hacking workshop at Pickled Feet > here in Berlin. This is something I've been wondering about... where does that latency come from on the usb to serial on the arduino. I am using debian Linux with 2.6.17 kernal on a computer that accesses the arduino through /dev/ttyUSB0 The arduino is doing serial communication with a couple of IC's. Even with 24 bits of information sent to an IC using 3-wire interface, the process only takes about a millisecond. The computer interfaces with /dev/ttyUSB0 and sends a command, then waits for information to return. I poll the device with select(). The round trip time is around 15-16 ms. Only 2-3 ms are actually accounted for in the communication routines, so where does the other 12 ms come from? (Actually, I have thought about different methods, such as triggering an interrupt from the actual serial port via another pin on the arduino, to indicate that data has been sent. Would it help?) I think that the linux kernel doesn't check the file very frequently, which gives me this kind of latency, but I don't really know. I wonder, how is the HID interface different? It gets registered as a character device, also, right? Any tricks? fundamental concepts I'm missing? Chuck _______________________________________________ Date: Wed, 19 Mar 2008 16:15:58 +0100 To: pd-list@iem.at From: Jean-Noël Montagné Subject: Re: [PD] Alternate Controllers Don't forget one of the cheapest interface, the USB Bit Whacker DIY, http://wiki.dataflow.ws/Interaction/Interfaces/UBW official web http://greta.dhs.org/UBW/index.html and sold 19 $ at sparkfun = 12 euros.... and the GNUSB http://gnusb.sourceforge.net/hardware/ the USBDUX http://www.linux-usb-daq.co.uk/ the ethernut http://www.ethernut.de/en/index.html the DLP IO http://apple.clickandbuild.com/cnb/shop/ftdichip?op=catalogue-products-null&prodCategoryID=65&title=DLP-IO8-G the ispsonlab and co http://www.koncon.nl/ipsonlab/ the AID http://www.student.ocad.on.ca/~aid_dev/?q= the artjoy http://artjoy.narod.ru/eng/index_eng.html the semifluid projects http://www.semifluid.com/?p=21#more-21 the CUI http://www.create.ucsb.edu/~dano/CUI/ the gadgetboard http://www.lunkwill.org/gadgetboard/index.html the nuxie1 http://www.nuxie1.com/guides/hackaday-competition-entry.html the USBAD http://www.bmcm.de/us/pr-usb-ad.html the midiscarff http://tomscarff.tripod.com/anal2midi/analogue_inputs_to_midi_out.htm the CV to midi http://www.fredrikolofsson.com/pages/hardware.html the interface-z http://www.interface-z.com and many others... I have collected about a hundred different low cost interfaces links for interactive creation for the CRASlab activities, and I would really like to have the power to compare and document all this interfaces in terms of cost per input/ouput, open hardware, latency, protocols, DIY possibility and time, components availibility in the world, recycling, power cunsumption, etc, to complete http://www.sensorwiki.org/index.php/Sensor_interfaces but we have just money for making one USB Bit Whacker, wich is one of the best ! JN _______________________________________________ From: Hans-Christoph Steiner Date: Wed, 19 Mar 2008 12:14:19 -0400 To: Charles Henry Cc: pd-list@iem.at Subject: Re: [PD] Alternate Controllers USB-serial drivers are usually optimized for maximum thruput rather than low latency and jitter. Basically, they were designed to hook up modems and the like. USB HID was designed around low latency and jitter. Most USB HID devices deliver data every 10ms with decently low jitter. The best I've been able to get with Arduino/Firmata is 20ms. The FTDI driver/chip on has a huge and crappy buffer, so lowering the poll time would actually make it slower with massive jitter. With the Arduino, you can tie a pin of the Atmel to the FTDI USB chip then you can flip that pin to force the FTDI to send it's data (circumventing the buffer). Then you can get reliable 10ms latency, perhaps lower. Check the arduino forums for docs on that. .hc _______________________________________________ From: Hans-Christoph Steiner Date: Wed, 19 Mar 2008 12:14:47 -0400 To: James Rojsirivat Cc: Daniel Wilcox , pd-list@iem.at Subject: Re: [PD] Alternate Controllers Any luck getting the Guitar Heroes controller working with [hid]? .hc _______________________________________________ From: Winfried Ritsch Organization: Institut für Elektronische Musik und Akustik To: pd-list@iem.at Date: Thu, 20 Mar 2008 09:09:42 +0100 Subject: Re: [PD] Alternate Controllers dont forget the algopic: https://algo.mur.at/data/projekte/algopic/ for Autoklavierspieler ;-) used serial-interface for better timing, this was the reason for (comport - external). mfg winfried PS: just designing a new one with ethernet, since timing is criticalm, open hardware of course. _______________________________________________ Date: Thu, 20 Mar 2008 06:56:19 -0700 (PDT) From: James Rojsirivat To: Mike McGonagle Cc: pd-list@iem.at Subject: Re: [PD] Alternate Controllers An easy controller you can make is a Power Glove like kind of thing. When I studied with Laetitia Sonami at the San Francisco Art Institute back in the late 90's, she was using her Lady Glove. It was (and is) essentially a glove with small trigger buttons, bend sensors, and tilt sensors. And if I remember correctly, I think she said IRCAM helped her develop the current version she's using. I may be wrong. I haven't seen Laetita in several years. But you can easily run all of those sensors through an Arduino and into PD. Of course if you ever decide to implement something like that, you would definitely be making a reference to Laetitia's work. James _______________________________________________ Date: Thu, 20 Mar 2008 07:05:45 -0700 (PDT) From: James Rojsirivat To: pd-list@iem.at Subject: [PD] Fw: Alternate Controllers Sorry. It was STEIM who helped her with the Lady's Glove. _______________________________________________ Date: Fri, 21 Mar 2008 01:45:06 -0400 From: Chris McCormick To: Mike McGonagle Cc: "pd-list@iem.at" Subject: Re: [PD] Alternate Controllers An alternate controllers page sounds awesome. Someone should get that happening on the Pure Data portal. I wrote some software for the Nintendo DS which allows you to create dynamic interfaces on the DS touch screen and they talk back to your Pure Data patches in real time. It's pretty fun and a super-cheap way of getting lemur[1] style control over your patches. It talks to your patches over wifi and uses the FUDI protocol. There is also a ROM (FUDIKaosDS) which emulates a Kaos pad style interface on your DS. You can download them both here: http://mccormick.cx/projects/KnobsAndSlidersDS/ Have fun! Best, Chris. [1] http://www.jazzmutant.com/lemur_overview.php ------------------- http://mccormick.cx _______________________________________________ PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list