From CCRMA Wiki
Revision as of 00:15, 3 November 2014 by Hollymj (Talk | contribs) (Music 250A Final Project: Vocal Effects Glove)

Jump to: navigation, search

Music 250A Final Project: Vocal Effects Glove

• Will try to focus on making one glove with good design and functionality, but may make a backup glove as well (not a right and a left, but two lefts).

• Will try to target effects toward a specific genre of music (right now, playing with the idea of island reggae/Hawaiian jams). Ex: pitch shifts to mimic lines and laughs by deeper male voices, echoes (since it is normal to echo others when singing), chorus effect (though want to think through best control approach).


current thoughts:




Examples - Gloves Projects

1. The “DIY Arduino Data Gloves” – from How to Get What You Want http://www.kobakant.at/DIY/?p=4639

--a. Showcases a great design, and a video demonstrates nice functionality (data feedback of hand movement) to control a range of processes.

--b. The Gloves Project page (http://theglovesproject.com/category/diy/) has full the instructions on how this glove is made. Includes materials, tools, pattern, sewing instructions, soldering instructions, … , calibrating, programming, going wired or wireless, and integration with software.

--c. Love the look of these gloves. The bend sensor connection area looks well protected (ends are covered with neoprene squares). The palm is open (no material), so glove does not get hot, I presume. Good design element, since I was considering a skeleton of a glove for this reason. --d. TWO sensors can actually be used for each finger, to register each knuckle bending. I will probably just start with one for each finger and see how the results are.

2. The StretchSense stretch sensors can measure flexible body movement, such as that of the hand, and are equipped with wireless technology. www.stretchsense.com

--a. Demonstration of hand with visualization app at 2:20 in this video: http://youtu.be/7uh0UWPEur4

--b. While a great demonstration, very very expensive sensors for what I will be doing ($850 USD for a starter evaluation kit)

--c. The DESIGN, however, is more along the lines of the skeleton glove I thought about. End segments of each finger can be placed into holders, and glove can stretch over back of hand.

3. Controlling a humanoid hand, which mimic a user’s hand movement in a glove (and which can grasp objects) http://www.contrib.andrew.cmu.edu/~msakmar/

--a. One flex sensor attached to each finger, and one across the palm

--b. Interesting problem to be aware of: “readings from the flex sensors would change dramatically from each use.” Believed to be from…"heat built up during testing and from wearing the glove for extended periods of time…We worked around this problem by calibrating the flex sensors every time we restarted the arduino and robotic hand setup."

--c. "Our second problem, which is partially related to the first, was correctly mapping the analog readings from the flex sensors to the servos. The issue was that the range of the flex sensors was too small; the analog read-in of the arduino has 1024 degrees of resolution, but the flex sensors would only differ from 550 to 750. We accounted for this by using the map function in arduino and by calibrating repeatedly. Calibration consisted of wearing the glove and running the arduino with code that read in and printed out each flex sensor value. We recorded the minimums and maxes of each flex sensor and used those values as input for the map function."

--d. Duct Tape doing good things: “Our fourth problem was attaching the flex sensors to the glove. We initially had a glove that allowed the flex sensors to move in between slits that we made in the glove. Our observation was that this resulted in readings that were too similar (the value range between straight and bent was too small). Thus, we went down the opposite path and fixed the flex sensors to all parts of the glove using duct tape. This made our glove more stiff, but resulted in better flex sensor readings”

4. Piano gloves – Buttons on end of fingers, but can look to for other design possibilities. http://vimeo.com/7992026

--a. I really wanted to include these gloves because of the design of the gloves along the finger tips. It looks a little uncomfortable, to be honest, however…It is an interesting thought to provide not skeleton rings of a glove, but just a 'bed' for each finger to rest in, with a strap over it (or whole lower half of a glove with straps over each finger). Design would be a little tricker with this idea since it would put the all of the connections in the palm of the hand…But maybe this could wrap around to the wrist of the hand afterward.

5. Wireless Control of a Robotic Hand with a Glove (using the LilyPad) http://www.instructables.com/id/Wireless-Controlled-Robotic-Hand/step2/Making-the-glove/

--a. Nice instructable, noting good suggestions…fairly short (five pages: from materials and glove setup to programs setup)

--b. The use of a pre-existing glove and normal connectors rather than conductive thread actually looks pretty nice. I would still want to protect my connections more (i.e. cover the LilyPad connections with cloth maybe, and likewise for the flex sensor connections).

--c. Note that the flex sensors are held in place once at the top of the glove, and later by glue (I think - based on picture; it's not in the instructions). Might want to stabilize the flex sensor at least twice along the finger, because of the feedback given by the #3 listed project (which, by the way, may have drawn from this instruct able? Though the design turned out differently).

--d. See this project for notes on LilyPad use (and wireless help if wanted).

--e. There's also this one to see: http://www.instructables.com/id/Arduino-Wireless-Animatronic-Hand/)

Minimal Viable Product - To Do List

--Get one effect working seamlessly, attached to index finger.

1. Develop max patch for a reverb, echo, or pitch shift effect in real time (get max patch working well on laptop)

2. Route input from one flex sensor on the arduino board to the Max patch (like in lab)

3. Figure out how the values should map to the main effect parameter in the patch.

4. Extend flex sensor from arduino board using long connectors, and attach sensor to finger, such that hand can be moved more freely.

Final Deadline - What-I-want-to-get-done List

--Get one functional glove working, with at least three effects (applied to real time mic input). (just expand from minimal viable product list)

--Top effects list at the moment: reverb, pitch shift (down), echoes.

--The glove's effects should lend themselves well to recreational solo singing and group jams.

--Would be fine having glove or glove skeleton structured with duct tape, since it can easily be changed. (I would prefer to have the functionality better than the design, rather than vice versa).

What-Would-Be-Nice-to-Have List

--Four or Five well working effects (each corresponding to a different finger; may leave out thumb for comfort reasons).

--Comfortable design (for the user)

--Cool aesthetic look - sewn if possible, with only partial coverage (open palm). The following DIY gloves are the ones I most like the design of (still) http://www.kobakant.at/DIY/?p=4639

--Wireless functionality (although not totally desired).

Materials Needed

At a minimum:

--4 Flex sensors.

--4 resistors.

--Normal connectors (for arduino board prototyping).

--Long connectors for minimal viable product.

--Electrical tape.


--Duct tape.



--Arduino micro perhaps? Or Lilypad?

--extra fabric (pretty small amounts), thread, needle...//sewing machine at the PRL

--Wireless components: receiver, transmitter, shields? What is best--XBee, bluetooth…maybe the RF Link transmitters? It says they work for simple one way communication are are small.

Steps to Achieve the Minimal Viable Product

Pretty much everything from my earlier list:

1. Develop max patch for a reverb, echo, or pitch shift effect in real time (get max patch working well on laptop)

2. Route input from one flex sensor on the arduino board to the Max patch (like in lab)

3. Figure out how the values should map to the main effect parameter in the patch.

4. Extend flex sensor from arduino board using long connectors, and attach sensor to finger, such that hand can be moved more freely.

--improve the design on 4 if I have extra time; that is, extra time I have if I finish one effect/finger correspondence and adding any other effects will be too long of a process.


--Target in on a genre that the effects would gel well with.