Introduction: Sonic Mirror Audio Reactive Instruments
The Sonic Mirror is an electronic instrument that automatically records and synthesizes audio for the creation of interactive sound installations. Through the combination of a Raspberry Pi, microphone, speaker, low cost electronics, and software developed with the SuperCollider programming language, you too can make your very own Sonic Mirror!
This project is ideal for makers and sound artists with an interest in developing interactive and embeddable sound systems for creative applications in sound art, experimental music, or multimedia performance art.
Even if you don't intend to complete this entire Instructable, there's still a lot of useful information here that may help you develop some piece of your own interactive audio hardware and/or software project, including:
• Detailed instructions and schematics on how to connect a quality, budget friendly, microphone and speaker to a Raspberry Pi
• A bootable Raspberry Pi disk image optimized for low latency audio that inclues:
- Raspbian 8 (jessie) Linux operating system with SuperCollider 3.9 built from source and the Sonic Mirror interactive audio program
• A schematic and production ready PDFs and Gerber files of a custom PCB that:
- Connects an Adafruit Class D Speaker Amplifier to an 1/8" (3.5mm) audio input port and hardware volume control knob
- Breaks out some of the Raspberry Pi's GPIO pins for hardware switch soft-shutdown and reset functionality
- Connects the Raspberry Pi's power supply to the speaker amp and electret microphone
• Laser cutter ready PDFs of a nifty custom enclosure for a Raspberry Pi, speaker, microphone, and audio amp circuit
This is almost like 4 Instructables in 1! What a deal!
Cheers, and happy making!
Step 1: Component List
Below is a complete listing of all the electronic, audio, and general hardware components used for the creation of one Sonic Mirror instrument, organized by category:
Audio Output and Sound Card:
• Speaker Driver (50W / 3.5 inch / 4Ω)
- Like the BOSS Audio BRS35
- This is a small, cheap USB audio interface that’s compatible with the Raspberry Pi and exhibits good, reliable sound quality. All other similar kinds I tested had a variety of intermittent sound quality issues that made them unusable over extended periods of time, but this one has performed remarkably well for hours, days, and weeks on end.
Modified USB Microphone:
• Electret omnidirectional condenser microphone capsule (9.5mm)
- Like these
- Cannibalized only for its gooseneck microphone enclosure. The built-in mic and pre-amp components do not have great sound quality, so you can scrap these and ideally recycle them for some other DIY audio project.
USB Mic Audio and Power Cable:
- This is used to mount the USB mic to the top of the instrument’s enclosure
• (2) 3.5mm (1/8 in.) TRS or TS Male to Male audio cable: 12 in. length (right angle plugs recommended)
- Like these
- One is used for the fabrication of the USB mic cable, and the other is used simply to connect the output of the sound card listed above to the speaker amp via the Custom Breakout Board listed below.
Custom Breakout Board and Miscellaneous Connectors and Cables:
• Custom PCB (31.5 x 42mm)
- This is a multi-purpose breakout board made specifically for this project. Fabrication instructions and complete details are listed later in this Instructable.
• Resistors: one 1kΩ and one 10kΩ
• (2) Screw Terminal Block Connector: 3.5mm 2-pin
• 0.1 in. Female header (at least 24 pins)
- Like these
- Note, that you’ll usually lose a pin when cutting a larger row down to size, so plan accordingly. A row usually has about 36 pins, so one row should be sufficient.
• Momentary DPDT Switch
- Like these
- On-Off-On shutdown & reset switch for Raspberry Pi
• 10kΩ Potentiometer Switch
- Like these
- For speaker amp power switch and volume control
• (5) Female to Male Jumper Wire Cables
- To connect the Raspberry Pi’s GPIO pins to the PCB
• 22 AWG stranded core copper wire
- Four 5 - 6 in. long pieces will do
Computing and Power:
• Raspberry Pi 3
• Raspberry Pi case (optional but recommended)
- make sure it allows access to the Pi’s GPIO pins
• 16GB or greater mini SD Card
• 5V 2.5A DC power supply
- To breakout the Raspberry Pi’s power port to the Sonic Mirror’s enclosure
• 1/8 in. thick plywood
- At least 19 in. x 13 in. of wood is needed to fabricate all pieces of the Sonic Mirror’s enclosure
• (2) Phillips Rounded Head Screws: 3/8 in. long, ~3/8 in. head diameter, 10-32 thread size
- Like these
- To mount the speaker to the front baffle of the enclosure
- It’s fine if you have machine screws with a slightly longer length, just ensure they have at least a 3/8 in. head diameter so they can span the holes in the mounting plate of the BOSS speaker listed above.
• Sticky back velcro strips
- Like these
- Optional but recommended to secure the Raspberry Pi within the Sonic Mirror’s enclosure
- At least a couple 3 in. x 3/4 in. strips will do
• Heat shrink tubing:
- 3/32 in. diameter, 2:1 shrink ratio (Like these)
- 1/4 in. diameter, 2:1 shrink ratio
- 3/8 in. diameter, 2:1 shrink ratio used on Female USB-A cable of the Mic Connector
• (2) Aluminum Standoffs: 1/4” Outer Diameter, 3/4” Length, 4-40 Thread Size
- Like these
- To secure the PCB breakout within the Sonic Mirror’s enclosure
- You may have standoffs w/ a different thread size, but just make sure it matches thread size of your screws.
• (4) Pan Head Combination Phillips/Slotted Screws: 1/2 in. - 3/4 in. length, 4-40 Thread Size
- Like these
- To secure the PCB breakout within the Sonic Mirror’s enclosure
• (4) Adhesive Bumper Pad Feet
- Like these
- To level the Sonic Mirror and raise it slightly off whatever surface you may put it on
Tools for assembly:
• Soldering iron
• Wire strippers
- Like these
• Wire cutters
- Like these
• Helping Hands (optional but recommended)
- Like these
• Miniature Vice (optional but recommended)
- Like this
• Heat gun or lighter (for the heat shrink)
Step 2: Assembly Overview
The Sonic Mirror instrument consists of seven primary components:
- Electret USB Microphone
- USB Microphone Cable
- Breakout Board:
- Custom PCB
- Class-D Speaker Amplifier
- Wooden Laser Cut and Engraved Enclosure
- Raspberry Pi 3
- USB Sound Card
Once you've assembled all the materials listed in the previous step, it's easiest to proceed by fabricating and/or prepping components 1 - 5 individually before putting everything together to assemble the ultimate instrument.
As a broad overview, the general assembly steps are as follows, which are described in more granular detail throughout the rest of this Instructable:
- Prep the speaker
- Fabricate the USB microphone
- Fabricate the USB microphone cable
- Fabricate the Custom PCB (the main component of the Breakout Board)
- Solder all the necessary components (inclusive of the Class-D Speaker Amplifier) to the Custom PCB to completely fabricate the Breakout Board
- Laser cut and engrave the wooden enclosure
- Assemble the wooden enclosure
- Install all of the components within the wooden enclosure
- Make all of the necessary cable connections between the internal components:
- Raspberry Pi to Breakout Board
- USB Sound Card to Breakout Board
- USB Microphone Cable to USB Sound Card and Breakout Board
- Speaker to Breakout Board
- Copy (flash) the Sonic Mirror disk image to a mini-SD Card and insert it into the Raspberry Pi
- Put the lid on the enclosure to seal it, and plug the USB microphone into the USB port in the lid
- Connect the power adapter to activate the Sonic Mirror and turn up the volume!
In regards to the electronics assembly, an abstracted version of the entire circuit is shown in the circuit diagram image of this step. Note that this diagram represents all of the interconnections via a solderless breadboard, however the actual Sonic Mirror instruments use a custom PCB to facilitate the interconnections between the various components represented by the circuit diagram. This circuit diagram is simply provided to help you understand how all of the audio and electronic components are connected at an abstracted level (assuming you understand the connectivity of a solderless breadboard). All of the necessary information to fabricate your own custom PCB, as well as more specific circuit schematics and assembly instructions are detailed throughout the remainder of this Instructable.
Overall, it takes about 4 hours to fully assemble, wire, flash, and activate an operational Sonic Mirror instrument, so you'll likely want to break this up into several work sessions.
Step 3: Prep the Speaker
1. Cut two pieces of 3" stranded 22 AWG copper wire. (Speaker cable could also work as a substitute).
2. Prep and tin both ends of each copper wire.
3. Solder each wire to the terminals on the speaker.
Step 4: Fabricate the Microphone - Overview
The microphone is made by replacing the internal components of a pre-existing USB microphone. By doing this I was able to cannibalize a gooseneck microphone enclosure without having to fabricate my own, while opting for a pre-amp and electret mic capsule that provide a wider frequency response and better audio quality than those included with the original USB microphone.
The modification effectively converts a digital USB mic (with a built-in sound card and A/D functionality) into a pure analog mic which interfaces directly with the USB sound card used by the Raspberry Pi.
Modified USB Microphone:
• Electret omnidirectional condenser microphone capsule (9.5mm) (Like these)
Step 5: Fabricate the Microphone - 1/3
1. First, unscrew the grill of the USB mic and gently pull out the enclosed mic capsule and PCB so that the connected wires are fully extended.
2. Using a pair of wire cutters, cut each wire close to contacts of the PCB, and remove the PCB. (We won't be using the mic's PCB for anything in this project, so you can set it aside and recycle it as e-waste, or ideally repurpose it for some other DIY audio project.)
3. Then with a set of wire strippers, strip about 1/4" of insulation off of the end of each wire to expose the bare stranded wire underneath. Using your fingers, gently twist the strands of each wire into braided leads.
Step 6: Fabricate the Microphone - 2/3
Solder the electret mic capsule to the MAX9812L pre-amp by following each of the steps below. I highly recommend using a set of Helping Hands as well as a miniature vice to make the following assembly steps easier.
1. Collect the MAX9812L pre-amp and one 9.5 mm electret mic capsule from the components list.
2. Figure out which of the electret capsule's leads is the ground connection using a multimeter. Set your multimeter to its continuity test mode, touch one of its probes to one of the electret capsule's leads, and touch the other probe to the side exterior of the electret capsule.
- If your multimeter makes a beeping sound and indicates electrical continuity, then the lead of the electret capsule that you're touching with the multimeter's probe is the ground (–) lead.
- But if your multimeter makes no sound and does not indicate electrical continuity, then the lead of the electret capsule that you're touching with the multimeter's probe is the positive (+) lead.
3. Slide the leads of the electret capsule through the two through-holes at the end of the pre-amp next to the "MIC" screen print label, ensuring that the ground (–) lead of the electret capsule is making contact with the mic ground (–) contact of the pre-amp. (Note: Don't push the capsule all the way down so that its base contacts the surface of the pre-amp's PCB. No more than 1/4" of the capsule's leads should extend through the through-holes of the pre-amp PCB, allowing the mic capsule to be lifted off the surface of the pre-amp's PCB once its soldered in place and oriented forwards after bending the leads.)
4. Bend the electret capsule's leads so they're flush against the bottom surface of the pre-amp board and gently bend the electret capsule forward until it's facing outward / forward. See the last picture of this step for reference. The goal is to position the electret capsule as close to this final intended position as possible before soldering it in place.
5. Keeping the capsule in position with your fingers, turn the entire mic pre-amp upside down. Secure the pre-amp PCB with a set of helping hands and secure the mic capsule in place with a small clamp.
6. Solder the electret capsule's leads to the through-hole contacts on the pre-amp's PCB.
7. Trim the excess leads with wire cutters and gently adjust the electret capsule's position so that it's parallel with the mic pre-amp board and not making direct contact with it. Your end result should resemble the last picture of this step.
Step 7: Fabricate the Microphone - 3/3
For the final USB mic assembly step, you'll solder the built-in wires of the USB mic enclosure to the pre-amp PCB's power and audio connections, and then insert the mic capsule and pre-amp into the mic enclosure. As with the previous step, it's highly recommended to use a set of helping hands and a small clamp to secure everything in place while soldering.
1. Secure the USB mic enclosure in a fixed position using a set of helping hands. (It's easiest to clamp at least one helping hand below the main enclosure around the thin gooseneck, and another clamped farther down the gooseneck above the USB plug for added support).
2. Secure the mic pre-amp either with the miniature vice or another pair of helping hands. Orient it such that the top side is facing downwards for easy soldering (i.e. make sure the side with the screen printed labels and surface mount components is facing down towards your work bench).
3. Route the exposed braided leads of the USB mic enclosure's wires through the appropriate through-hole connectors of the mic pre-amp in preparation for soldering. The connections are as follows (and are also shown in the attached connection schematic:
- Black => GND (ground next to the "VCC" connection)
- Red => VCC
- White => OUT (audio output)
- Green => GND (audio ground connection closest to the OUT connection)
4. Solder all the bare leads of the USB mic enclosure's wires to the mic pre-amp PCB.
5. Trim any excess solder and wire with wire cutters.
6. Gently rotate and push the mic pre-amp PCB into the USB mic enclosure. (I found that rotating and pushing the mic pre-amp PCB into the USB enclosure allowed it to fit more easily while causing the connected wires to spiral in a more compact way around the edge of the enclosure, versus pushing the whole piece straight inwards which caused the wires to bunch up and make it difficult to fit the piece inside enclosure.)
Step 8: Fabricate the Mic Connector Cable - Overview
This custom cable connects the microphone pre-amp's audio output to the Raspberry Pi's USB audio interface, as well as the Raspberry Pi's power supply to the mic pre-amp's power input.
It's comprised of a modified USB-A female panel mount cable that terminates in an 1/8" (3.5mm) male audio jack and broken out power and ground connectors.
Step 9: Fabricate the Mic Connector Cable - 1/3
Prep the USB cable connector:
1. Take the USB-A Female Panel Mount connector cable and cut it a little beyond its (6") half-way point (measuring from the female connector).
2. Strip about 3/8" of the insulation off the bare end of the cable to expose the stranded copper shielding.
3. Wrap the shielding into a braided lead and then snip it off with wire cutters. Only the four internal wires (red, black, green, white) should remain.
4. Fan the four internal wires apart and strip away about 3/16" of insulation off their tips.
5. Twist each wire's exposed stranded core into braided leads to prep for soldering in a following step.
Step 10: Fabricate the Mic Connector Cable - 2/3
Prep the audio cable connector:
1. Cut the 1/8" Male to Male audio cable in half.
2. Strip approx. 1/4" of insulation off the bare end.
3. Braid the shielding into a lead and fan out the red and white wires.
4. Snip the white wire since it is not needed. Only the red wire and braided lead should remain.
5. Strip about 3/16" of insulation off the end of the red wire and braid its stranded core into a lead prepped for soldering in the next step.
Note: The red wire is connected to the tip of the male 1/8" (3.5mm) audio jack and the braided shielding lead is the ground connection to the sleeve of the audio jack. The white wire is connected to the ring of the audio jack (usually used for the right channel of a TRS stereo audio jack), but since the microphone pre-amp only outputs one channel of audio, we do not need to use this connection (which is why we removed the white wire). As always, you can use a multimeter to verify which part of the audio jack corresponds to each wire.
Step 11: Fabricate the Mic Connector Cable - 3/3
Solder all the cable components together:
Tips: I recommend using a set of helping hands for this step. Don't forget to slide all the heat shrink tubing into place before you solder the wires together. You can refer to the excerpted wiring diagram and directions below to verify the connections.
1. Cut two 4 - 4.5" pieces of stranded 22 AWG copper wire and strip about 1/4" of insulation off their ends. (I used a red and a green wire for ease of reference. Solid core wire would of course also work okay in a pinch, it's just less flexible than stranded wire).
2. Slide a 3 - 3.5" long piece of 1/4" (or 3/8"?) diameter heat-shrink tubing around the Female USB-A Panel Mount cable.
3. Slide a 2 - 2.5" long piece of 1/4" diameter heat-shrink tubing around the 1/8" male audio cable.
4. Slide a 1/4 - 3/8" long piece of 3/32" heat-shrink tubing around the each of the exposed wire leads of the 1/8" male audio cable (one piece around its red cable, and one around the braided shielding). You may need to trim the length of the heat-shrink tubing slightly to ensure enough of the bare wire leads are exposed for soldering.
5. Secure the Female USB-A Panel Mount cable and 1/8" male audio cable with helping hands so that their respective wire leads can easily be put in contact with one another when soldering.
6. Gently twist (interlace) the exposed wire leads together to create secure connections between the wires of the USB and audio cables in advance of soldering them together. (You can refer to the included wiring diagram of this step, but I've also written the connections below). The USB to audio and breakout cable wire connections are as follows:
- White (USB) => Red (Audio)
- Mic Pre-amp Audio Output (+) => Audio Jack Tip
- Green (USB) => Stranded Lead (Audio)
- Mic Pre-amp Audio Ground (-) => Audio Jack Sleeve
- Black (USB) => Green (22 AWG copper wire)
- Mic Pre-amp Ground (-) => break out ground connection
- Red (USB) => Red (22 AWG copper wire)
- Mic Pre-amp Power (+) => break out power connection
7. Solder all the wire connections together. (Depending on the amount of helping hands you have, you may find it's easier to first arrange and solder the audio cable's wires to the USB cable's wires and then arrange and solder the 22 AWG wires to the USB cable's wires rather than attempting to arrange and solder everything together all in one go.)
8. Slide the smallest 3/32" diameter heat shrink tubing pieces into place to cover the exposed solder joints of the four wire connections, and use a heat gun or lighter to shrink and fix them in place.
9. Slide the 1/4" diameter heat shrink tubing piece surrounding the audio cable over the two connected audio cable wires and heat it to secure it into place. None of the audio cable's braided copper ground wire should be visible.
10. Slide the remaining loose 1/4" diameter heat shrink tubing piece surrounding the USB cable down to cover all of the individual wire connections and heat it to secure it into place.
And that's it! You should now have a custom cable resembling the one shown in the last picture of this step.
Step 12: Fabricate the PCB
This PCB serves as a multi-purpose breakout board that:
- connects audio input to the speaker amp via 1/8" female TRS connector port
- breaks out the speaker amp's power and volume control connections
breaks out some of the Raspberry Pi's GPIO pins for hardware switch soft-shutdown and reset functionality
connects the Raspberry Pi's power supply to the microphone pre-amp's power input
I recommend fabricating this PCB for convenience and to ensure a minimal footprint inside the final enclosure. You can download the original Fritzing file, etchable PDF, SVG, and Extended Gerber files of the PCB here.
Fabricating PCBs is beyond the scope of this tutorial, but there are plenty of great Instructables on how to do this yourself. Or you may simply opt to use a PCB fabrication service like Fritzing Fab's aisler.net, which is what I did. (If you do end up using a fabrication service to fabricate the PCB design from the link above, I highly recommend ordering more than 1 for a price break and to make it easier to measure out the positioning of the PCB within the enclosure in later steps of this Instructable).
Alternatively, you may wish to create your own breadboarded circuit by referencing the original circuit schematic. This is what I did for several of the initial Sonic Mirror prototypes, but the rest of this Instructable assumes usage of the specific PCB design downloadable from the link above.
Step 13: Solder Components to the PCB
Note: If you only fabricated one single PCB as detailed in the previous step, I'd recommend first skipping to Step 21 "Assembly - PCB Installation 2/4" before performing this step so you can better measure out the placement of the PCB within the Sonic Mirror enclosure. After performing that step, return to this step.
1. Gather the following components to solder to the PCB (as listed in the initial Components List):
- Resistors: one 1kΩ and one 10kΩ
(2) Screw Terminal Block Connector: 3.5mm 2-pin
0.1 in. Female header (24 pins needed, but you'll need more to account for the loss that occurs when trimming larger strips down to size)
3.5mm stereo TRS breadboard-friendly audio jack
Stereo 3.7W Class D Audio Amplifier - MAX98306
2. If you haven't already, you'll need to assemble the 3.7W Audio Amp by soldering its respective male header pins, terminal blocks, and gain control breakout pins to it. Adafruit has a short aseembly guide here.
3. Solder all the components to the PCB starting with the smallest and working your way up to the largest:
- Female header
- Screw terminal block connectors
- 3.5mm stereo TRS audio jack
- Audio Amplifier
The screen print on the PCB should make it obvious where each component should be placed (as well as the attached picture). You can use wire strippers or cutters to trim down female headers to the right size.
Step 14: Wire the Power Switch
The momentary DPDT (double-pole, double-throw) switch is used as a shutdown and reset switch for the Raspberry Pi. It's momentary in that it defaults to its middle "off" position when not being actuated by the finger to either of the two "on" positions (up or down). It has 6 terminal pins arranged into two rows of 3, so it's effectively like two SPDT switches in one.
1. Cut four 4.5" - 5" pieces of 22 AWG solid core copper wire and strip off about 1/4" of insulation off the tips of each end. Ideally you'll want two pieces of one color and two of another so it's easier to differentiate the two halves of the DPDT switch from each other.
2. Take the DPDT switch and secure it within a small vice clamp or set of helping hands. Take two of the copper wires of the same color and solder them to two adjacent terminals in one row of the DPDT switch. (It's easiest to thread the wires' exposed solid core tips through the DPDT switch's terminal holes and use some pliers to wrap the tips around the terminal so they don't slide out when soldering. You may also want to use additional helping hands to hold the wires in place for soldering).
3. Solder the two remaining copper wires to two adjacent terminals in the other row of the DPDT switch but offset them so they don't align with the connections of the wire's in the opposite row. Please consult the attached wiring diagram to see how the wires are connected to the switch. The idea is that only one connection is being made at a time when flipping the switch in either direction.
Step 15: Wire the Volume Knob
Next, grab the 10kΩ Potentiometer Switch and wire it up. This is used as a power switch and volume knob for the audio amp.
1. Cut five 3.5" - 4" pieces of 22 AWG solid core copper wire and strip about 1/4" of insulation off the tips of each end.
2. Secure the potentiometer switch with a small vice clamp or set of helping hands, thread the tips of each wire through each of the terminal holes on the potentiometer switch, bend the wires' exposed tips around the terminal holes to secure them in place, and solder all the connections to make them permanent.
3. Trim any protruding excess solder joints away with wire cutters. The finished result should resemble the attached picture of this step.
Step 16: Laser Cut the Enclosure
The Sonic Mirror enclosure is designed to be laser cut from 1/4" thick plywood and is a friction fit. In other words, no glue or nails are necessary for final assembly (but if the laser kerf size of your machine is on the larger side, you may find a little bit of wood glue would help secure the final enclosure together and make for a snugger fit).
The side and top faces of the enclosure all feature different visualizations of an audio recording of the spoken words, "Sonic Mirror" (the name of the instrument). The top face (the face the microphone is connected to) features a 2D spectrogram, and the side faces show a 3D spectrogram and an audio waveform.
Note about included rasterized images: You obviously may want to substitute your own images or delete the originals, but the next assembly steps refers to the specific faces of the enclosure via the originally engraved images.
Step 17: Assembly - Assemble the Enclosure
The enclosure was designed to be friction fitting, so depending on the kerf size of the laser cutter you're using and your unique configuration settings, you may experience varying amounts of a snug or loose fitting enclosure. I laser cut the enclosure out of 1/4" thick plywood and found it necessary to use a large rubber mallet to help fit all the pieces flush together. The design's dimensions are intentionally tight to ensure a strong friction fit, so it may be difficult to fit together with your hands alone. If it's too difficult to fit the pieces together with your hands alone, try a combination of sanding and gentle hammers with a rubber mallet to fit everything together. Be careful to not bend or apply too much pressure unevenly when assembling, otherwise you may break some of the thinner pieces like the front speaker baffle.
1. Situate the base of the enclosure (the long 8.5" x 4.85" piece with no engravings on it) on your work table.
2. Attach the side pieces to the base piece you gathered in the previous step so that the engravings are pointing outwards and not upside down (e.g. the numbers in the spectrogram engravings are not upside down). Regardless of whether or not you use the included engravings, to correctly orient the piece with cutout ports, make sure that piece is oriented so the cutout ports are closest to the base piece (see attached pictures).
3. Attach the rear piece (the small square piece without a large hole cut in it) to the open side of the enclosure that's closest to the cutout ports in the side piece you attached in the previous step.
4. Attach the front baffle piece (the small square piece with a large hole cutout for the speaker) to the opposite end of the enclosure from the rear piece you attached in the previous step.
5. Fit the top piece onto the top of the enclosure to ensure it fits snuggly. Orient it so the laser engraving is facing outwards and the smallest number in the spectrogram's x-axis (0.1 seconds) is closest to the front baffle piece you attached in the previous step.
6. At this point the empty enclosure will be completely assembled. Remove the top piece attached in the previous step in preparation for the next assembly steps.
(Note: I never had to use wood glue and clamps to assemble the 6 enclosures I've made, but you may find you need to do this if you've inadvertently cut your wood using overly high temperature and slow speed laser cutter settings - causing the friction fit to degrade. It's not the end of the world if this is your situation. Simply glue all pieces of the enclosure together, except the top piece of course!)
Step 18: Assembly - Add the Speaker
1. Fit the assembled speaker through the cutout in the front baffle piece. Orient it so that the cables are closest to the bottom of the enclosure near where the speaker amp component will eventually be installed.
2. Use the 3/8" head diameter Phillips screws to fasten the speaker to the baffle.
Step 19: Assembly - Mount the Mic Connector Cable
1. Thread the mic connector cable through the hole in the top piece of the wooden enclosure and press the USB-A female port all the way into the hole so that it's completely flush with the engraved side.
2. Secure the USB port to the wooden piece with the component's included screws.
Step 20: Assembly - Speaker Amp Breakout Board Installation 1/4
First you'll need to figure out where to position the previously assembled breakout board (step 13) within the enclosure so you can figure out where to drill holes to secure its standoff mounts.
1. Place the assembled breakout board into the enclosure and fit the exposed ends of the speaker cables into the left channel output screw terminals of the speaker amp.
2. Position the breakout board flat against the bottom of the enclosure close to the back of the speaker so that there's some slack in the speaker cables.
3. Trace / mark the inside edges of the PCB screw holes with a pencil.
4. Using a hand drill, drill a 1/8" hole through the drill mark that's farthest away from the speaker. (I found that this was the only screw hole I could drill from this orientation of the enclosure when using a regular hand drill. It wasn't possible to drill the other hole b/c the installed speaker got in the way of the drill. As a workaround, you'll have to flip the enclosure and drill from the other side to drill the remaining hole, and this is detailed in the next step).
Step 21: Assembly - PCB Installation 2/4
This step assumes you have a spare unpopulated PCB for the breakout board as recommended in the previous step 12.
Using a spare PCB positioned on the bottom side of the enclosure, you can easily trace the other screw hole position (which isn't easy to access from the inside of the enclosure after the speaker is installed).
1. Position a spare unpopulated PCB on the bottom side of the enclosure with the same orientation and screw hole alignment as the PCB positioned in the previous step (see included pictures for reference).
2. Trace the remaining screw position.
3. Remove the PCB and drill an (1/8") hole into the remaining marked screw position.
Step 22: Assembly - PCB Installation 3/4
In this step you'll install the breakout board standoffs inside the enclosure.
1. Screw two of the smaller 4-40 Thread Size Phillips screws (listed in the Components list) through the holes drilled into the base of the enclosure. Make sure the threading of the screw is inside the enclosure!
2. Screw the standoffs to the screws.
3. Hold the screws in place with a screw driver and use your free hand or pliers to tighten the standoffs against the bottom of the enclosure.
Step 23: Assembly - Attach Adhesive Feet
Attach one adhesive rubber foot pad to each corner of the bottom side of the enclosure. (I recommend dusting off the surfaces of the enclosure where you'll be adhering the rubber foot pads with a tack cloth first.)
The rubber foot pads will help ensure the enclosure is level and has better traction when placed on top of different surfaces.
Step 24: Assembly - PCB Installation 4/4
1. Place the assembled breakout board into the enclosure and secure the speaker cables into the (right or left?) channel output screw terminals of the speaker amp.
2. Screw the PCB breakout board into the standoffs using the remaining two 4-40 Thread Size screws.
3. Position the speaker amp's gain jumper connector to your desired gain setting. (From my experience I've found that setting the jumper connector to the maximum gain level position of +18dB is best).
Now that the PCB breakout board is secure within the enclosure, you can proceed with the next steps of connecting all the other components to wire up the complete Sonic Mirror circuit.
Step 25: Assembly - Install the Power Switch and Volume Knob
1. Collect the DPDT power switch and volume knob potentiometer switch you wired up in the previous steps 14 and 15.
2. Mount the volume knob potentiometer switch into its respective hole in the side of the enclosure. Use pliers to tighten its fastening bolt and secure it in place. The potentiometer should be positioned to the left of the power switch when facing this side panel of the enclosure (see picture).
3. Connect the potentiometer switch's 5 wires to the breakout board. Please consult the included picture and schematic to make sure you've made the correct connections. (I ended up slightly shortening the length of the wires connected to the potentiometer's three terminals, since these are closest to the connecting ports on the breakout board).
4. Connect the DPDT switch's 4 wires to the breakout board. Please consult the included pictures and schematic to make sure you've made the correct connections. (After everything's wired correctly, the switch will cause the Raspberry Pi to perform a soft shutdown when flipped down and will reboot the Raspberry Pi when flipped up).
Step 26: Assembly - Install the Raspberry Pi
1. Collect the Raspberry Pi 3 and mount it within its own Raspberry Pi enclosure.
2. Orient the Raspberry Pi so you're looking directly at all four of its USB ports. Connect the Sabrent USB sound card to the top right USB port.
3. Take a mating pair of velcro strips and stick them together. The paper backing on each of their adhesive sides should be facing outwards.
4. Cut two approximately 1" - 1.5" pieces off of the larger strip assembled in the previous step.
5. Remove the paper off one side of each velcro piece to expose their adhesive backing and adhere each one to opposite corners on the underside of the Raspberry Pi's enclosure (see picture).
6. Remove the remaining paper backings off the two velcro pieces, turn the Raspberry Pi right side up, orient it so the connected USB sound card is close to the breakout board and speaker, and place the Raspberry Pi flush against the back corner of the enclosure. Press it down firmly to secure the velcro to the enclosure.
Step 27: Assembly - Wiring 1/3 (Pi to PCB)
1. Grab one of the 1/8" (3.5 mm) audio cables and connect one end into the green audio output port of the USB sound card and connect the other end into the audio jack on the breakout board.
2. Connect the Raspberry Pi's GPIO pins to the breakout board with female to male jumper cables as shown in the wiring schematic.
Step 28: Assembly - Wiring 2/3 (Mic Cable to PCB)
1. Grab the top piece of the enclosure with the embedded USB mic connector cable and connect its power and ground breakout cables to the remaining unconnected screw terminal on the breakout board as shown in the included wiring schematic.
2. Connect the mic connector cable's 1/8" male audio jack into the remaining open port in the USB sound card.
Step 29: Assembly - Wiring 3/3 (Pi Power Panel Mount)
Mount the panel mount USB-C extension cable into the open port on the side panel of the enclosure, and connect it to the Raspberry Pi's power input.
Step 30: Assembly - Double Check the Connections
At this point everything should be wired up. Now's a good time to double-check the included wiring schematic and make sure you've connected everything correctly.
Step 31: Clone the Sonic Mirror Disk Image to Your Raspberry Pi’s SD Card
Now that the hardware is assembled and wired up, it's time to clone the Sonic Mirror disk image to your Raspberry Pi's SD card. It's essentially a preconfigured disk image with Raspbian 8 (jessie), SuperCollider 3.9dev, and the Sonic Mirror program . (Documentation of what all this looks and sounds like is here).
1. Get / make a newly formatted mini SD card (8GB or larger).
Important: Be sure to format your mini SD card before cloning a disk image to it. You can format your mini SD card using the SD Formatter application.
(If you're using the SD Formatter application, format an SD card with the following settings for best results:
• Options > Logical Address Adjustment = YES
• Select Format Option > Overwrite Format (takes longer but ensures a successful boot after cloning)
2. Download and clone one of the disk image options linked below to your SD card.
(If you don't know already, there are many ways to clone an SD card image which are beyond the scope of this Instructable. A quick Google search will yield many answers. I've found that the SD Clone application is the most convenient method though, and this is what I used to generate the images below.)
- Choose this option if you want the Sonic Mirror SuperCollider program to automatically startup after you power on the Raspberry Pi. If you've completely assembled the hardware as outlined in the previous steps, this is the most convenient option since it includes a little script that allows you to use the Sonic Mirror's hardware switch to shutdown and restart the Raspberry Pi.
- Choose this option if you do not want the Sonic Mirror SuperCollider program to automatically startup after you power on the Raspberry Pi and/or have not assembled the Sonic Mirror hardware enclosure or wired your Raspberry Pi to the breakout board as shown in the previous steps. This is a good option if you simply need a Raspberry Pi disk image with an installation of SuperCollider and/or the Sonic Mirror program, but have no need for hardware switch shutdown and power cycle functionality.
3. Once you've cloned one of the disk images above onto your mini SD card, insert it into your Raspberry Pi's SD card slot and proceed to the next step. (The rest of these instructions assume you've opted for Disk Image Option #1.)
Technical Note: These disk images were made from an installation of the Raspbian GNU/Linux 8 (jessie) OS that subsequently had an installation of SuperCollider 3.9dev built from source based on the SuperCollider Github instructions here.
Step 32: Seal It Up, Connect the Mic, and Turn It On!
Firmly press the top lid of the enclosure into place, attach the USB microphone, and plug in the power adapter to activate the Sonic Mirror! A few seconds after powering it on, turn up the volume knob (waiting to do this after powering on avoids a loud pop in the speaker).
Assuming you've opted for installing Disk Image Option #1 detailed in the previous step, the Sonic Mirror program should automatically startup after about 60 - 120 seconds of powering on the Raspberry Pi, and you should hear an audible "startup tone" indicating that the Sonic Mirror program has started successfully.
About 5 - 10 seconds after you hear the startup tone, the Sonic Mirror will become responsive to detected sounds it picks up via the microphone, and it will begin processing them and playing back the effected results. If you leave it on long enough it will collect a library of sounds from the environment it's sitting in.
Step 33: Troubleshooting
If you've followed all of the previous instructions to ensure you've made the proper wiring connections, and have also cloned disk image #1 to an SD card, but don't hear any startup tone when starting up the Raspberry Pi or suspect that it's not working properly, try the below tips:
1. Make sure you've turned the volume knob on and set it to the maximum volume. Test the microphone input by snapping, yelling, or making sounds. If it's working and you have the volume up, you should hear the Sonic Mirror processing input audio within about 60 seconds of powering it on.
2. Double check all of your wiring connections to ensure nothing's amiss. Please double-check the wiring schematics in the previous steps.
3. If your Raspberry Pi seems generally unresponsive, test it out by SSH-ing into it or using a VNC application like VNC viewer to login to the Raspberry Pi with an ethernet cable. The login credentials are included in the README of the downloadable SD card images linked in the previous steps. If you can't login to the Pi, there might be something wrong with your SD card and/or you failed to clone the disk image properly.
4. If all else fails and you're really determined to get this working, please send me an email (address in next step) detailing the situation and what you've done so far.
Step 34: Concluding Notes and Thoughts
And that's it! If you've completed all of the previous steps, congratulations for making your very own Sonic Mirror! To get a better sense of what this all looks and sounds like when it's completed, check out the documentation of Sonic Mirror sound installations here. Likewise, even if you didn't make one, hopefully some aspect of these instructions were helpful for the development of your own interactive sound installation project. If you want to get in touch to show me what you're up to, send a ring-a-ding-ding to: scott (dot -.-) tooby (at -@-) gmail (dot -.-) com