-
1Create the Enclosure
This is the first item on the list because the enclosure will probably be 3D printed. You'll be able to work on most of the intervening steps while waiting for your printer to finish (especially if you're using a mail-order service such as makexyz).
The download package includes several basic models are for the enclosure, and you may modify them as you wish. Those provided assume basic forms for the Throat, Helmet, and Hand-Held versions.
The recommended forms are:
- For the Helmet version, Internal/Bluetooth (but see below)
- For the Throat version, External/TFT
- For the Hand-Held version, Internal/TFT
Of course, what works best in your specific case is up to you.
For the Helmet version, if you're also 3D printing the helmet, you may wish to incorporate the voice changer's enclosure in your model. Otherwise, you should work out a place to mount the enclosure.
Modifications
Of course, if you're modifying the project, you should modify the enclosure to match. Use this checklist of changes to make sure you're covered:
- If you're using any additional Shields (including a second Sound Processing Shield), you'll need to expand the enclosure, and add holes for any additional connectors, switches, etc.
- If you're using the Sound Processing Shield 2 in place of the Sound Processing Shield 1 or vice versa, you'll need to change the plugs for the holes.
- If you're using a larger battery than the current recommended 2000mAh (the largest size that will fit on the PowerBoost Shield), you'll need to create a separate space for it.
-
2Solder the Headers
This would be an ideal time to solder any headers to the Arduino boards. If you're using the listed parts, this would consist of:
- Soldering female headers and the power switch to the Power Boost Shield.
- Soldering through headers to the Sound Processing Shield.
- Soldering through headers (or female headers, if you aren't using the Power Boost Shield) and the 2x3-pin male header to the Arduino Leonardo.
- If you're using the BLE SPI Friend, solder short male headers to its underside.
While you have the Power Boost Shield on the soldering mat, this would be a good time to connect one of the Battery Voltage Monitor jumpers. The provided sketch assumes A1 is used, reserving A0 for any analog output (in the event you decide to add a Shield that uses it), though you may use another pin if you wish. (If you want to omit this function, you'll need to "comment out" that part of the sketch, later.)
-
3Neckband (Throat version only)
This step in the Instructions is practically a project in itself.
The Throat version of this project requires something to hold the mike against the neck; this could be the collar of a costume, though in many (if not most) cases a neckband will be needed even if your costume has a high collar. I'm assuming here that you'll be using lycra (Spandex). Technically, any fabric with a good amount of stretch will do, but I think lycra will work best for most purposes. If something else such as stretch velour works better for you, then by all means go for it!
Note that much of this is geared toward not only keeping the mike and speaker in place, but also keeping the whole system concealed and thus maintaining the "illusion" that this is what your voice actually sounds like. If you're not concerned with that, then don't worry about it.
As written, this Instruction assumes that you're using the recommended components specifically:
- Adafruit Small Enclosed Piezo w/Wires
- Adafruit Mini Metal Speaker with Wires
- 5-foot TRRS cable with plug
If you're using anything different than the above -- including sewing the mike and speaker into a larger garment -- you should be able to adapt these instructions easily enough.
Measuring the Neckband
Measure the circumference of your neck, ideally going through the center of your larynx. This will be the length of the fabric you'll need your neckband. Since the lycra will need to stretch to hold firm, the seam allowance will shorten the band just enough to do this without choking you.
The width of the band will be a minimum of 3"; this is enough to wrap around the speaker, plus a seam allowance of 1/4" on either side. Of course, you can always make it wider if you want to, especially if there's an in-character reason for it.
Component Preparation
When worn, the speaker should fit directly at the band's front and center, with the piezo mike to one side but still close enough to touch the larynx. At the same time, the ends of the wires will need to match up to connect to the cable. The Adafruit speaker and mike have wires of just the right respective lengths for most people. If that's not the case for you, then trim the length of one or the other until the fit is right.
You may optionally also want to trim the length of the TRRS cable. (While I don't exactly recommend against doing this, I do prefer not to.) The easiest way to get the ideal length would be to measure from the larynx (where the speaker will be) to the place where the enclosure will be, along the line where you want the cable to run; then add 8.5 inches. With the 3.5 inches on the speaker wires, this will give you one foot of leeway.
Once you're satisfied with the length, connect the speaker and piezo wires to the cable wires. I recommend soldering them and covering the work with shrink wrap, though if you have a different method that you've found works for you, go ahead. Remember to connect the red piezo wire to the tip, the black one to the shield, and the two speaker wires to the two rings (the wire colors in the cable can very according to manufacturer).
Installation
The speaker should go at the exact center of the neckband, so determine where that is by measuring, folding, or whatever means you prefer (as long as it's exact). Lay down the fabric right-side down, and use a pencil to draw a line where that center is (don't worry; that'll be on the inside of the neckband, so it won't be visible). Set the speaker face-down in the center of that center line. Then sew a loop around both speaker wires at least five revolutions. If the speaker has mounting holes that your needle can fit through, sew it to the fabric through those as well, being as exact as you can to keep the speaker in the center.
Once that's done, sew a similar loop around all four wires about 1/8" from the piezo. Don't make it too tight; the wires will need to be able to slide through the loop as the band stretches.
You may then, if you wish, sew additional anchoring loops around the wire every couple of inches to the end, though again don't make these too tight. You'll want to allow the lycra to not only stretch, but release the stretch without catching or bunching. Whether you do this or not, though, run the wire to the end of the fabric.
Sewing
At this point, turn the lycra lengthwise right side to right side, so the components are still on the outside. Sew together the long edges with the above-stated 1/4" seam allowance (it's OK to use your machine this time). Then turn the band right-side out.
At this point you may fix the centering of the speaker and piezo by reinforcing where they're attached with more hand-stitching, this time going through the other side. In any event, make sure that they're not wiggling around inside the neckband when you're wearing it!
How you fasten the back is up to you. Lycra (and most other stretch fabrics) should stretch well enough over your head, so sewing the back together may work fine. Having the wires come around half the neckband's length may present its own problems, though, so you may choose to instead go with Velcro, hooks, snaps, or some other means. However you work it, be sure to leave plenty of stretch room for the wires -- and be careful that your needle doesn't penetrate them!
Finishing Touches
That's it. Anything further is optional, and will depend on the costume itself. You now have your costume's neckband!
-
4Unit assembly
Thanks to the modular nature of the Arduino ecosystem, the basics of putting the boards together are fairly simple. The short version is: just plug them one atop another.
The files provided for the Throat and Hand enclosures put the PowerBoost Shield on the bottom, followed by the Sound Processing Shield, the Leonardo, and finally the TFT Shield; for the Helmet enclosure, the main board is on the bottom, then the Sound Processing Shield, and the PowerBoost on top. If you're making your own enclosure, of course, you can put them in whatever order suits you.
Fasten to the Enclosure
If you're using a 3D-printed enclosure, you should screw the bottom board (assumed to be the processor board in the provided 3D models) into the bottom before attaching the others. Once it's in, plug the others together, and then plug the lot of them onto the bottom board.
-
5Upload the Sketch
The next step, with everything in place, is to upload the sketch to the board.
The default sketch allows input from either the TFT screen (if it's detected) or the Android app.
Possible Edits for You to Do
There are some things you may need to change in the default sketch.
I2C Addresses
The sketch assumes that the I2C addresses for the SoundWing and EchoWing are at their "factory default" settings; for a second EchoWing, it assumes only the "3" pin is changed. If you've changed any of those addresses you'll need to edit the sketch before uploading it.
If you've added another FeatherWing (including a third or even fourth EchoWing) or any other hardware, you'll have to write the additional functions into the sketch yourself.
Battery Monitor
As noted above, if you choose to solder the battery monitor to a pin other than A1 (or not at all), you'll need to edit that part of the sketch accordingly.
Additional Functions
The TFT I/O and Android app assume that only the basic components are installed, with an option for having a second EchoWing. If you've added anything else, you'll have to edit the sketch yourself to include it.
-
6Install the App (BLE options only)
If you're not going to use the TFT display for control, you'll probably need the Pocket Voice Changer Control app, which should be available in the Google Play store.
For now, the app is only available for Android, because that's what I have. I'll try to get it up for iPhone, though I can make no promises.
-
7Step 7
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.