Homebuilt Hardware

Variable Rate Digital Delay

Posted in Synth DIY by ryan on the June 23rd, 2012

I have completed my first version of a voltage controlled sample rate digital delay. This module samples an ADC at rates ranging from 48KHz to 500KHz (1MHz was intended). It has a wide range that is controlled by a delay line length control in addition to the sample rate control. It can produce flanging effects and echoes. It is a work in progress, but I have written up a description of the design here.

Igloo Nano Starter Kit - DAC Example

Posted in Synth DIY by ryan on the May 26th, 2009

Reccently I purchased two FPGA development boards. These are both very low cost. the Avnet S3A Spartan 3A Evaluation kit ($50) and the Actel Igloo Nano Starter Kit ($55). To test these boards, I bought a I2S DAC board from Eric Brombaugh.

While the spartan 3A board is more powerful, the igloo has the advantage of built in flash, lower power usage, and cheaper parts. The smaller igloo devices can be purchased from $5-$15 each from mouser. Another cool thing about the Igloo board is that is comes with a programmer stick that is compatible with Actel’s FlashPro programmer/software. I’d like to make some digital modules for my synth with these. First will probably be an update to my VCDO design which used a dspic.

I setup a simple I2S DAC test using Eric Brombaugh’s verilog code for the Spartan S3A board. I ported this to the igloo board and it works just the same.

I2S DAC Actel Libero 8.5 project files: igloo_nano_i2s_dac_test.zip


Posted in Synth DIY by ryan on the August 14th, 2008

I have built a digital VCO with a dspic30f3013. It is a numerically controlled oscillator (NCO) with the exponential conversion performed in the dspic using a lookup table. The NCO phase is used to lookup a triangle waveform. The triangle wave is output through an 8bit R2R DAC. The normal VCO waveforms, sine, sawtooth, and PWM, are generated using analog circuitry. For this first version, I wanted to create a traditional VCO, but future versions may include additional waveforms.

project page


Posted in Synth DIY by ryan on the August 7th, 2008

I have built a simple sallen-key VCF using a miniature tube (1J17B) as the main amplifier. There are a few opamps in the signal path, but they are only used with a gain of 1 as inverting and non-inverting buffers. The circuit is based on Ken Stone’s tube VCA which uses the 1J24B. The cutoff frequency is controlled using a dual vactrol.

project page

AVRDragon Tutorial Part1

Posted in Synth DIY by ryan on the December 8th, 2007

A little tutorial on Atmel AVR Development in Ubuntu with the AVRDragon and STK500. Part 1 describes  hardware setup and interface modes. It can be found here. This tutorial covers the initial setup of the AVRDragon in Ubuntu linux. Most of it is applicable in other Linux distributions. The goal is to show how to set the AVRDragon’s programming mode and connect through the USB port.

New Domain

Posted in Synth DIY by ryan on the July 5th, 2007

I have just purchased www.homebuilthardware.com. This site is basically live now. It is a generic name but eventually I plan to have the Synth-DIY section as a subsection of a more general electronics DIY website. It has been a while since I have completed any projects. In the next few weeks I plan to finish up some modules that are partially complete. I now have all the needed parts to set up the my second cabinet. Last week I received some MOTM bread boards which will do nicely for prototyping some designs.

Digital Noise

Posted in Synth DIY by admin on the April 4th, 2007

Over the last few days, I have been thinking about a digital noise circuit. The CD4006 (18-bit shift register) is commonly used but it is becoming difficult to find. Instead, I have written assembly code for a 32bit Linear Feedback Shift Register (LFSR). This code is programmed in an ATTiny13 8bit AVR microcontroller. The tiny13 runs with an internal clock of 4.8MHz. I have coded two versions; the first runs in self-clocked mode with a 192KHz shift rate and the second uses an external interrupt for the shift clock and this one supports up to 145KHz shift rate (290KHz with a 9.8MHz cpu clock). These two designs offer a low parts count and small footprint noise source. I’ll be updating the project page here after I have tested these and some more ideas.