EEVblog Electronics Community Forum
Electronics => Projects, Designs, and Technical Stuff => Topic started by: PfhorSlayer on May 23, 2021, 06:20:59 am
-
I've just finished doing the layout for the second revision of a DSP project I'm working on: an instrument audio effects board utilizing a powerful SigmaDSP processor that would allow practically any imaginable effect to be programmed, limited only by the capabilities of the DSP. Before I send the gerbers off to the fab house I was hoping that I could get people here to give it a quick once-over, to make sure I haven't messed anything up too badly. The previous revision of this board used the ADAU1701, but I quickly realized after getting everything up and running that it has too little memory to support anything beyond a couple milliseconds of signal delay, which unfortunately makes it pretty useless for doing interesting guitar / bass effects. This new revision uses an ADAU1452, which has enough memory to delay a signal by almost a full second! The programs for the DSP itself are set up and configured using Analog Devices' SigmaStudio software, which is a node-based editor that makes it quite easy to build up even the most complicated signal paths.
The DSP and accompanying ADAU1361 codec are controlled by an STM32, which also handles the 128x64 I2C display and user interface buttons. The potentiometers are connected directly to the DSP, where they can be used as inputs to the program running on it.
The main things I'm a bit nervous about are the power supply and the buffering / filtering on the audio input and output lines. I've simulated the current power supply circuitry and it seems to work, but the previous revision of the board used a different power mux chip, which is now sold out everywhere. That's what I get for not ordering more than I needed when I built the first one! As for the audio IO, the goal is to have it be as transparent as possible across the 20Hz-20kHz audio frequency range, while still filtering out as much noise as possible. There also needs to be significantly high input impedance, so as to avoid loading down the pickups in the guitar itself. Ideally, having this board in the instrument's signal chain with a program that just passes the input directly to the output would sound the same as if the board were removed from the signal chain entirely. I am not really sure how to properly simulate and test for this, but I have messed about with the circuits in SPICE and they appear to behave the way I want.
Another concern is whether or not I'm making a mistake by splitting up the +3V3 and +3.3VA nets the way I have, by having them connected through a single footprint (a ferrite bead on the schematic, but is going to be placed as a 0-ohm resistor unless I find the ferrite is required to keep the noise down). Rough calculations give a rough maximum of 30mA begin used by the codec and opamps powered by the +3.3VA rail, so I think I should be safe with a 1/4W 0-ohm resistor.
If anyone is willing to take a look, I've attached a PDF of the schematic as well as a zip archive containing the gerbers. Feel free to point out even the most pedantic issues, as I'd really prefer to only send this board off to be fabricated once!
EDIT: The images don't seem to want to work inline, but they should still be available as thumbnails at the bottom.
-
very intersting dev. board !
I'd add an optocoupler and a DIN socket for midi, could be very handy for adding external controls.
-
very intersting dev. board !
I'd add an optocoupler and a DIN socket for midi, could be very handy for adding external controls.
The Expression header at the top right of the board (which has been replaced with a Molex connector in my current local revision) is intended to attach a small auxiliary board that contains an expression pedal jack, which can be used as a foot-controlled potentiometer for that kind of thing. Not exactly a lot of room left on the board to place additional connectors and still keep the size down to "cheap prototype" prices, unfortunately! I also don't have any midi controller interfaces, so I've no way to easily test such a thing. :)
-
Check out local Goodwill or Salvation Army type stores. They often have MIDI equipped keyboards for $10 to $20. An excellent way to play with MIDI send/receive. MIDI interface is with opto-couplers to eliminate audio ground loops and works well with TTL buffers as your current sink/source. A single NPN transistor with a current limiting resistor attached to the collector makes an excellent sink when you source +5vdc with its own 100 ohm limiting resistor and sink with the transistor and its 100 ohm resistor for you transmit loop. Your receive side is just the LED side of an opto coupler often with its own 100 ohm limiting resistor. MIDI has a weird baud rate, something like 31,250 derived from the note related master oscillator in the beginning days of MIDI. Now they are going USB for faster throughput!!
-
or any kind of serial input to easily add control, but it's a minor detail.
I've always wanted to go DSP way to make all kind of distortion/fuzz and delay. But they don't make them easy to solder with all those pins...Do you plan on doing the soldering yourself or order them assembled ?