design

Analog VU meters

For this project, I took some analog VU meters from a broken Otari 5050 2-track tape machine (thanks Ralph!), and assembled a standalone stereo meter unit based on the VU buffer circuit from JLM Audio. I re-purposed a wooden box for the enclosure, drilling holes for the input jacks and meters, and applied a 'tung oil style' finish. As a final touch, I swapped the old meter bulbs with LEDs and added a dimmer knob on the side to adjust brightness.

VU meter
Dimmer switch on the side
Backside
Replaced the old bulbs with LEDs
Early stages
Early stages
JLM VU Buffer circuit

Touchpad Parametric EQ

This was a project done with Anthony Mangognia and Alex Spektor while at the University of Illinois at Urbana Champaign as part of ECE 445. Chad Carlson was our TA.

We designed and built a parametric audio equalizer that allowed a user to boost or attenuate a frequency based on their finger position on a custom built touchpad. By applying downward pressure on the pad, the filter Q/bandwidth would change as well. The advantage over traditional equalizers is the ability to quickly sweep the frequency spectrum in real time to gently or aggressively cut or boost a desired frequency.

The touchpad is a low cost design utilizing only 4 pressure sensors, but allows for three control parameters: X (frequency), Y (boost/attenuation), Z (Q/bandwidth). I was responsible for the digital signal processing portion of this project, and implemented an all-pass Metria-Regalia filter.

This project won the Design Award for the Spring 2005 semester.

Attenuation/Boost
Applying downward pressure changes filter bandwidth
Metria-Regalia filter
Pressure Sensor Touchpad
Block diagram

Arduino ethernet keypad door lock prototype

Before our current model for Soapbox Music, we wanted to have members book studio hours through our Drupal website and then remotely lock and unlock the door for people to get in. The idea was to use an Arduino with Ethernet shield to connect to our website for authorization, and then remotely unlock the studio front door through a latch relay mechanism (mortise lock).

Desired workflow

1) User obtains secret PIN online at our website
2) User goes to the physical location where the keypad is and enters in the PIN
3) The keypad is hooked up to an Arduino which takes the input and sends it to a website via a serial-to-ethernet module. The website responds with Access or Deny.
4) If ACCESS, trigger an electronic strike which opens the door.
5) If DENY display "Access denied" message on an LCD.

Example

Pete wants to book studio time, so he goes online and books from 4pm-6pm. The website generates a unique 4 pin code which will only work for this time slot. Pete shows up at 4pm and enters his 4 pin access code into the keypad lock for the studio. The keypad is hooked up to an Arduino which takes the 4 pin code and uses the Ethernet shield to send the code to our website which checks a Drupal database to see if the access code is valid for the time slot. If it is valid, the website would send back an 'Access granted' message through the Ethernet Shield, and the Arduino would then send a signal to the door relay, buzzing open a mortise lock door.

Proof-of-Concept

The prototype successfully demonstrated that this system could remotely unlock and lock a door. We also built an e-commerce system for purchasing studio time by the hour on our website. But we never actually implemented the whole system because...

Issues

Ultimately we abandoned this idea for a few reasons:

1) We wanted our studio to be more about building community - musicians getting to know each other and helping each other out by sharing resources. This kind of automated system would minimize human interaction which would run counter to our goals. We ended up switching from hourly bookings to monthly memberships, which better aligns with our vision.

2) The Ethernet shield used was not capable of dealing with SSL encryption. We'd be hooking up the door of our studio to the internet... so this was kind of a deal breaker as hackers could easily gain access. However I believe newer shields support secure protocols.

Code

I've attached the Arduino code I wrote for this project in case someone finds it useful. I wrote this in 2009, so I have no idea if it works with current shields or libraries. It is just a proof of concept, for educational purposes only, use at your own risk!

Minimum hardware required: Arduino, 9 digit keypad, LCD display, and Ethernet shield. If you are seriously trying to build something like this, you should definitely research some of the newer network shields available, something that supports SSL encryption.

Arduino UNO

Microtonal polyphonic synth [proposal]

This project aims to build a microtonal polyphonic synth framework using the Arduino. Most synthesizers use set frequency tables for note values based on the western scale. I'd like to create an instrument that allows for truly microtonal pitch control on a per-note as well as global basis. This capability would allow musicians to create textures, tone clusters, drones, and alternate tunings through a standard keyboard layout.

Design goals

  • 6-12 independent & tunable hardware oscillators - mapped to MIDI key values
  • Support MIDI Input from Akai LPK25 or similar
  • Global pitch control, tone filter, 4 mode ASDR

Challenges

  • Low availability and high cost of older VCOs and complexity of newer DCOs
  • Establishing very fine fundamental frequency resolution of oscillators
  • Simplifying the hardware interface and setting useful control parameters

Line level speaker switch

I built this speaker switch for Soapbox Music to allow a listener to quickly switch between different speakers. No studio monitors are perfect, and everyone listens to music on different systems, which can make it hard to know if a mix is balanced correctly. I find it very helpful to be able to quickly switch between various speaker systems to compare how things sound.

This box is a passive line level switch utilizing a 5 position, 6 pole rotary switch. It takes two balanced signal inputs and allows you to switch between 5 different outputs. Before we upgraded to an SM Pro Audio Passive-1, we had it setup at the studio with a Blue Sky 2.1 system, Adam A5s, and a FM transmitter to allow playback on a nearby radio. Spray lacquer finish on a wooden enclosure.

SpringCM.com

SpringCM is an enterprise level document sharing and collaboration software company. I implemented an overhaul and upgrade of their existing Drupal site under a tight deadline.

Strategy

After inspecting their existing site and new design, I quickly identified potential problem areas and worked with their team to resolve any issues and develop a strategy before the implementation stage began.

Implementation

I began by taking their static design mockups and delivering a new pixel-perfect theme and front end. After that, I worked on the back end cleaning up and removing deprecated code, installing and configuring new modules, and writing a new module to support a customized administration interface tailored to meet their specific needs.

Documentation & Support

Finally, I created a user manual and technical document to educate the client on how to use their new site and to inform future developers of my work. Such a document is an invaluable tool when building complex sites as it clearly elucidates the innards of the site, allowing for future development to occur more rapidly without knowledge gaps.

Springcm.com

Pages