Tuesday, July 9, 2013


this was a quick little project i threw together for some good friends that i had recently visited in Barcelona. i had built something similar for another pair of friends who got married last summer. unfortunately i forgot to take any pictures or video of it before i gave it to them. oh well, they just live down the street. the danana box is basically a heavily modified animal keyboard. actually now that i think of it, it was a guitar... the guitar had 15 notes that were all trigger-able through a common bus(4.5v), so i hooked them all up to a CD4067 analog-multiplexer. the 4 binary inputs are driven by a 74HC193 up/down counter chip which in turn is clocked by a simple 555 oscillator. the four bit word coming from the 74HC193 are fed to the binary inputs of the CD4067 via 4 momentary switches. there is then a momentary switch to change the direction of the up/down counter. if none of the four bit-buttons are depressed, no sound will be made, but any combination of the four switches pressed will produce one of 15 melodies(possibly coprighted by googltubes). the up/down switch changes the direction of the melody. the box has 5 different sounds to chose from. at some point these were sampled animal sounds that had a weird kind of echo to them. this made for a unique set of sounds when overclocked to the point that the animals are indistinguishable. the main voice is then sent to a pt2399 delay chip. on one side of the box is a yellow joystick. on one axis of the joystick, the frequency of the melody can be changed. on the other axis, the delay rate can be modulated. the whole thing runs off batteries and has a built in speaker. one unique aspect of this build is that because space was so limited, i decided to build all of these circuits without PCB. instead, all of the components and chips are all just blobbed together like big circuit boogers. i had never attempted building circuits like this before but hey, it works. i should have taken some pictures...
check out the video n'stuff.


 I started this project some time ago. it has probably taken a good six months to complete. there was really no rush to finish it as it was intended only as a prototype for what was supposed to be a short production of ten or so of the same design. unfortunately though this will likely be the only one i make in this size and arrangement. although i was able to create some highly stable and unique circuit ideas for this synth, the hardware is just too small(and expensive). i just wasn't happy with the feel of the interface once it was finished. i would have much rather used big heavy panel-mount hardware but unfortunately i designed the enclosure too small. another issue with the design i found was where i would find key-beds for ten of more of these little guys. i had originally designed the body around a set of keys from a yamaha pss-130. in case you didn't already know, i have a deep resentment toward the yamaha pss-130 and its little brother pss-30. however, the one redeeming quality of the pss-130 is that it actually has a pretty nice set of keys. like the PS-3, the keys are independently floating so there is less of a chance of them breaking off, and no chance of having to replace the whole set if one does somehow break. the broken key could merely be replaced. on top of that, the entire keyboard assembly can be unfastened from the pss-130's body and removed effortlessly. re-wiring the pcb to accept the EK001 was the most difficult part of the process. now, in the past, pss-130's have come in and out of my life quite frequently. it seemed like for a while there were always one or two at the thrift store at any given time, and you could always find them at the bins. a lot of times people would pick them up at garage sales and drop them off for me just because they only cost a dollar or so. i even remember seeing a whole pile of them selling on ebay for change. with this in mind i figured the pss-130 keys would be the most suitable choice. i also felt morally inclined because there is really nothing useful about a working pss-130. with all of this in mind, i designed the body of the new synth to fit the pss-130 key-bed. it was only after it was built that i realized there was a sort of dry spell of pss-130s... i hadn't seen one around in a while. and the asking prices on ebay were well over what i had expected to pay. to this day i still haven't seen any in town anywhere... oh well, another reason to hate that model i guess.

Like the PS-3, i designed the enclosure for the synth using skechup. i kind of thought it would be cool to have all of the controls up front instead of behind the keyboard. i had also originally intended to build an additional module that could be plugged into the synth on the side. the module would be a rhythm sequencer and mixer for accessing the built in EK001 drum sounds. now that it is finished though, i kind of doubt that i will ever get around to building the expansion module. i just don't think it would be worth the effort in the end because i cant imagine those pokey drum sounds mixed with the new sounds of the synth... they are just too different. we'll see.

 The Hing Hon EK001(and relatives) has long been on of my favorite toy keyboards. whoever designed it should be given an award. the fact that is such a cheap generic throw-away toy and yet inside it employs an amazingly friendly little synth chip. the chip has eight built in square wave timbres. there are actually only four timbres. depending on which timbre has been selected, amplitude envelopes are applied to give the timbre its instrument's sound. the keyboard is two-voice polyphonic, meaning that any two keys can be played at once. each of the two voices has an independent volume envelope input, and independent signal output. the two voices interchange when played. so every other note will be the same voice. the voices hold their last key. if the amplitude input of the voice is opened, the voice's last not will sustain indefinitely. there is a separate signal output for the rhythm section but the drum sounds can not be modified individually. some earlier models had individual outputs for each drum sound, but the sounds themselves could not be modified. the chip has a built in vibrato circuit that is set to a fixed frequency. the depth of the vibrato can be set via resistor to the current controlled master-clock. the master clock controls the global pitch over the two synth voices, all four drums sounds. it also controls the frequency at which the vibrato modulates the pitch. the EK001 has 37 keys and each key has its own input. i think i had seen an older model that used a multiplexed network of keyboard inputs, but usually they have 37 individual addresses to activate each note. each note responds to a common bus(0v). 
i usually disregard the built in vibrato circuit s you can  change the speed without changing the global pitch. i spent a little time coming up with a way to use the amplitude envelopes of the two voices to trigger my own envelope generators to modulate both the amplitude of the voices as well as the cut-off frequency of the voice's respective filter. the voice signals coming from the chip a first fed in to a frequency divider, then a  pulse width modifier before being sent either to a mutual XOR gate or directly to each voice's respective filter. when the XOR gate is engaged, the two signals are multiplied by each other, and the common output is then sent to both filters.
 the frequency dividers are quite different than the ones i've built in the past. this design uses the ever-popular 4017 10-stage divider. the voice input is fed to pin 14 and the output to the PWM stage is fed from pin 3(stage1). the number of stages between each high stage coming from pin 3 is set by one of eight outputs from the 4017 to the reset pin(15). the reset input is set through an 8-input multiplexer. the multiplexer has three binary inputs. the three binary inputs can be set through a crude analogue-to-digital converter based off the LM3914/74HC148 combination, three separate LFO's or both at the same time. the A-D-C can also be modulated via "continuous wave generator", or manually using the "analog transpose" knob or joystick. check out he schematic for more details. 
everything else about the synth is pretty straight forward. the filtered voices are sent to a pretty nice delay pedal i had laying around. i ended up using a stripped down ibanez DL-5 i've had since i was a kid. sounds way better than any pt2399 configuration, so i went for it. there are also a couple basic LFO's for modulating the global pitch of the synth, and another to modulate the delay speed.
 in all, this synth came out really great, but in retrospect, there are some things i would probably do without. one of the most obvious changes would be how the joysticks are used. originally i thought it would be cool to have the four joysticks up front so you could play keys while modulating parameters with the joystick. unfortunately though it is not a convenient or natural as you would think. also, i would probably change what the joysticks do. i like being able to modulate the "repeat, analog-transpose, and pulse ratio", but the cut-off is unnecessary. maybe resonance or attack would be more interesting. the one major thing that i probably will change is the pitch slider. for some reason i built a voltage controlled resistor for it out of one of those cheap vactrols from electronics-goldmine. the thing is severely capacitive so when the pitch is changes there is a huge latency. it sounds kind of cool with the vibrato LFO and every thing but i should probably fix it. its just a little too weird...

 this particular project required a substantial amount of designing and laser cutting. i cant even recall how many panels i had to re-cut due to design errors and bad paint jobs. eventually though, i got four that worked(and mostly match). thank god i have my own laser. i cant imagine trying to build something like this without my own. it would actually be impossible! with this project i took a lot of care in creating interconnects between the hardware and the PCBs. its a little bit more work but it is so worth it when you consider how much time it would have taken to unsolder and re-solder all of the connector wires every time something needed extra attention. i am now hooked to the little nylon snap-in headers. i only hope the last a long long time. at least longer than anything else...

please watch the demo video for more details on the interface. funny thing, as soon as i uploaded this video, googl-tube tells me there is copyrighted music in my video and that i need to pay someone to use their song! it was eye-opening to say the least. with that said, i would hope that any of you reading this would understand that my demo videos are meant to be functional demonstrations only and are meant to be as un-musical as can be. if you think i am ripping you off, i'm sorry, i'm not. its a fucking you-tube video... enjoy.

Monday, July 8, 2013


Welp, i guess its time to update stuff. its been over a year since i posted a short demo clip of the yamaha ps-3 i had been working on. the synth was for a customer who wanted something unique and wasn't too worried about the cost. i convinced him that the yamaha ps-3 was a good baseline for the project. i have always been fond of the early ps series for many reasons. one being that the keyboard assembly is very well built. each key floats independently so there is no chance of them breaking off as some toy keyboards do over time. if a key should ever break however, it can be easily replaced. another selling point for the ps-3 is that it has genuine yamaha VCF and VCA integrated chips built right in. the VCF chip is a pin for pin match to the VCF chip found in the yamaha CS01, and the VCA chip can be found in nearly all of the CS-family of synthesizers. and to top it all off, if you scour ebay for a week or two, you can score a ps-3 for next to nothing! the volume knobs are usually the fist thing to go on these classic toys so people are practically throwing these things away... with that said, i would hope that those of you who are reading this will refrain from snatching up piles of ps-3's with the intention of selling the ic's and trashing the rest of this classic keyboard for some profit... but if you do, it might ease your conscious to use some of that blood money to ship those useless keys over to me for future use. i'm always looking for some quality keys.
ok, anyway... being that the ps-3 is so readily available, my client sent me two. one to use for the synth mod and one for me. i purchased the service manual on ebay and began brainstorming ideas for the super-synth. the first idea that i knew i wanted to implement was a pressure sensitive key-bed. i had recently purchased a few long force sensing resistors from sparkfun. i still can believe how cheap they were. as soon as i saw them i knew i wanted to put them underneath some keys. i quickly got started cutting up the keyboard and removing all of the excess plastic body from what held the key assembly together and fitted the FSR(force sensing resistor) underneath the keyboard and positioned it for optimal response. i then built a simple circuit to convert the FSR to a control voltage. once it was working i quickly began interfacing the control voltage to parameters of the keyboard such as the pitch and filter cutoff as can be seen in the earlier video.
the enclosure? oh yeah, i may have mentioned long ago that i purchased a laser cutter. i guess now that i think about it, this must have been the first synth project i used my laser for. what is a laser cutter? well, basically it is kind of like a big printer. but rather than printing, it cuts two dimensional shapes out of wood or plastic. i had been researching laser cutters for a about two years before i finally got one. since i have it has changed everything though. rather then relying on what you can find, you can merely design it on sketch-up and cut it out... well, the method isn't without its share of limitations but hell. it opens up a lot of possibilities. 
so, as much as i loath google and all of that "convenience", i must say that i love sketchup! it has got to be the easiest CAD program i have ever used. only hours after downloading the demo, i was designing synth enclosures with accuracy and perspective. and to convert the files to the appropriate format for laser-cutting, i merely installed the full trial version on my other computer for converting the files to the appropriate  format before sending to my laser. i think i have used about 8 minutes of my 8 hour trial period so far. ha-ha!
once the enclosure had been cut and glued together, it needed to be tolexed. i have really become fond of tolex. it really gives the synth some vintage charm. for this project i went with red. it came out pretty well but in retrospect i probably should have sanded the edges a bit more. some of the edges of the teeth ended up being noticeable through the tolex in the back of the synth. it is somewhat visible in the picture below.
here is a shot of the tolex process. you really cant have enough clamps. thank god for harbor freight.
 here you can see the force sensing resistor apparatus(black strip). some care had to be taken to achieve a good response from the ps-3's keyboard.
here is a shot of the ps-3 unmolested.
deciding what features and controls would be included was a pretty long and arduous process. it was probably the most time consuming of the whole six months it took to finish this synth. after working out the after-touch capabilities, it was on to how i would modulate the VCF and VCA. i could have built my own envelope generators but my attention was drawn to the brilliant mastermind ElectricDruid and his PIC based generators. i was instantly enticed by his simple but extremely versatile designs. now keep in mind i know virtually nothing about programming micro controllers. i couldn't even tell you how i was able to get his code onto my chips, but it worked, and well! in total i built three generators. two of them were the voltage controlled ADSR's for the VCF and VCA. the third was the AMAZING voltage controlled LFO. i would highly recommend these circuits to anyone who is serious about modular synth stuff because everything about these circuits is voltage controlled. for more info on the capabilities of the generators, please check out his site; http://www.electricdruid.net/
once the envelope generators and LFO were built and working, it was only a matter of deciding how to interface them and incorporate them to the rest of the interface. below is a diagram of how what the interface includes. the two panels to the left represent most of how the envelope generators, LFO, and after-touch section interact with the overall sound of the synth. 
in the ps-3 there is a rhythm section. there are preset rhythms and analogue drum sounds. the preset rhythms are not exactly inspiring so i decided to create a sort of rhythm computer. unfortunately only three of the four analogue drum sounds are trigger-able externally. the bass drum sound is only trigger-able via the internal rhythm sequencer. fortunately though, each of the other voices have unique modulation inputs. the tom-tom, snare, and hat sounds each have unique pitch/accent capabilities that can be simply modified through the use of a potentiometer. however i still felt that a kick drum was needed. i built a quick clone of the TR-606 kick with two separate pitch controls for creating just the right "thump" if needed. 
i had recently been inspired by a video i had seen at electro-music/forum of somebody using an old shift register chip to write and loop a logical pattern. at the time, flip-flops and shift-registers had seemed to be a new frontier for me so i willingly jumped in and learned as much as i could about the method. i sourced some shift registers of my own and came up with a circuit for recording four separate sequences to trigger the four analogue drum sounds. it worked out pretty well and i have to say that i am pretty proud of it. basically there are eight different time signatures that can be recorded live to one of four 64 stage pattern banks. the pattern can then be edited in step mode or completely erased using one button. the patterns can also be recorded out of phase form the other patterns to create a kind of swing effect. there is no code involved with these sequencers. they are as low-tech digital as it gets. check out the schematics for more...
 the ps-3 came equipped with nine timbres. most of which are the same sound through a different combination of VCF and VCA envelopes. there are then two octaves of the main oscillator that are being fed to the timbre filters; 4' and 8'. since i had freed up the VCA and VCF to manual control via the ADSR's, there was no longer any need for the nine timbre selections. instead i chose the three timbre filters that represented HP, BP, and LP best, and designated the three filters to each of the 4' and 8' voices. each timbre of the two voices can be completely attenuated to create infinite voice combinations. see the schematic for more...
 furthermore, the lowest octave can be switched to accompaniment mode witch will hold the set bass and/or chord when active. volume controls for both the bass and chord are independent. the keyboard is also equipped with a reverb circuit that has i think 6 different modes. both the master rhythm and master melody voice are fed to a mutual echo circuit. the echo circuit can be modulated by the after-touch, LFO, or VCA. the keyboard is also equipped with a highly liquid midi kit for controlling the keyboard via computer, sequencer, etc.

 anything else?