Seb's Synth-DIY Pages

Digi-Mod - Details


Click to view printable version of this page



Power requirements


  1. +15V (will also work with +12V or +9V)
  2. +5V *
  3. Ground
  4. -15V (will also work with -12V or -9V)

* The +5V supply can be connected to +15V if +5V is unavailable.  In this case a clip-on heatsink <= 20°C/W will be necessary on U4.  Note the current demand this will then place on the +15V supply.

Theoretical current requirements with all components installed:



The processor


The brain of the Digi-Mod is a dsPIC33FJ128GP708 processor running at 40 MIPS.  It is relatively inexpensive and well suited to modest DSP tasks.  It has a 16bit wide data path and supports single cycle multiply and accumulate operations, has DMA for zero-overhead ADC scanning, and a DCI interface for efficient communication with the audio CODEC.



Audio I/O


2 channels of audio I/O is provided by a Cirrus Logic CS4270 CODEC.  This supports up to 24bit/192kHz, but the standard Digi-Mod uses 16bits and a sample rate of about 47kHz.

There is also a dual VCA for feedback control.  The VCA circuitry is needed if both voltage control of the feedback and external access to the feedback loop is required (for example to insert processing of the feedback signal).  If voltage control of feedback is not required then feedback control can be provided with a potential divider, with resistors R114 and R115 being included to sum the feedback return with the input.  If a potential divider with R114/R115 is used then R117/R118 should be 30K.  If the VCA circuitry is included then resistors R114 and R115 should be omitted.  If external access to the feedback loop is not required then feedback could be implemented in software with voltage control as required via the CV inputs.

The audio connections are as follows:
  1. Input 1
  2. Feedback Loop Return 1
  3. Feedback CV 1
  4. Output 1 / Feedback Loop Send 1
  5. Input 2
  6. Feedback Loop Return 2
  7. Feedback CV 2
  8. Output 2 / Feedback Loop Send 2

Audio and CV inputs should be normalised to ground if nothing is connected.

Input signal levels are nominally 10V ptp (3.536V rms), but will accept 30V ptp without damage.

Feedback CV range is 0V to 6V, approx 20dB/V, with unity gain at 4V.  Will accept voltages from -15V to +15V without damage.

Total of input + feedback return (after VCA) can be up to 17.8V ptp without distortion.

Output level is nominally 10V ptp, but will depend on input level.  Can be up to 17.8V ptp.



Sample rate selection


The CODEC used has a 2 pins which select the sample rate relative to the clock speed.  Using a 12 MHz crystal oscillator for X1 gives the following possible sample rates:

  1. 11.71875 kHz (Full sample rate / 4)
  2. 23.4375 kHz (Full sample rate / 2)
  3. 31.25 kHz (Full sample rate / 1.5)
  4. 46.875 kHz (Full sample rate = clock speed / 256)

If a different oscillator is used, all sample rates must still be within the range 4-54 kHz.

The sample rate select inputs are not protected and so should not be driven from external sources.  Suggested configuration is to use a 2 pole, 4 position rotary switch wired as follows:


IMPORTANT: The rotary switch must be a break-before-make type to avoid momentary shorting of the power rails.



CV inputs


The full control range is from -5V to +5V, but the inputs will accept voltages from -15V to +15V without damage.

The inputs should be normalised to ground when nothing is connected.

CV inputs 1 to 4 allow summing of 2 separate CVs (for example an external CV and a potentiometer controlled CV).  If more than 2 CVs should be summed, or if CV summing is required for other inputs than these 4, then the 100K input resistor on the PCB can be replaced by a link and as many CVs as required can be connected to each input via individual 100K resistors.



CV outputs


CV output range is from -5V to +5V.

If accurate CV output is required (e.g. for pitch CV) then an OpAmp with lower input offset voltage and drift should be used for U19.  The TL074 is fine for non-critical CVs.



Gate inputs


The gate inputs have some hysteresis and so should behave ok even with complex, non-square inputs.  They are nominally Off below 0.66V and On above 2.64V.  They will accept voltages from -15V to +15V without damage.

With the v1.0 PCB, gate inputs will default to On if nothing is connected.  If this is not wanted then they should be normalised to ground.  On the v1.1 PCB the gate inputs default to Off with nothing connected.



General purpose digital I/O


Direct access is available to 10 pins on the dsPIC.  These can be used for general I/O, SPI or I2C as follows:


Electrical spec: inputs

Low = <0.66V (Abs Min = 0V)
High = >2.64V (Abs Max = 5.5V)

Electrical spec: output

Low = <0.4V
High = >2.4V

The max current in or out of each pin is 4mA

These pins are unbuffered and unprotected, but they are generally fine for inputs from panel switches and buttons.  +3.3V and GND voltages are provided on the PCB header.



MIDI In/Out/Thru


The MIDI is the standard 5mA current loop, with isolated input.  Because the Out and Thru are derived from 3.3V (not 5V), they are not suitable for use with devices which draw their power from the MIDI bus itself.  Devices which follow the MIDI specification are fine.



SRAM


The 4Mbit SRAM gives the following sample times:




EEPROM


The 8Mbit EEPROM allows 2 memory locations in which the complete SRAM contents can be stored.

When the EEPROM is fitted, direct I/O pins 1, 2, 3, 4 cannot be used externally.



ICSP/ICD


The ICSP/ICD connection is:

  1. !MCLR
  2. VDD
  3. VSS
  4. PGD
  5. PGC




More ..