Open Source Digital FX Pedal - Page 1
Forum section: electronics / general

author: Fantasma25
author_rank: Regular Contributor
timestamp: March 26, 2014, 07:53:09 pm
content: Hello. I've been working on an open source programmable digital effects pedal for about one or 2 months, but I found out something that really destroyed the concept and I had to scrap it. The DSP inside the pedal is the ADAU1701 from Analog Devices, and I liked it really much because it was programmed by dragging and dropping DSP blocks, and I found it to be very user friendly and educational. The thing is that a couple of days ago, I was on an Analog Devices Forum, and I stumbled on a post about a cheap USBi board (USBi is the name of a board sold by Analog Devices which is used to program their SigmaDSP evaluation boards. It is a USB-I2C interface that works (and is the only one supported) with Sigma Studio and it is like $80 USD). In the post, a guy was asking if he could clone the EEPROM inside their USBi to make a cheaper version of it, and another guy from analog devices said that there was no restriction prohibiting him to do that,BUThe also saidQuoteAnd, well... that really took my project apart...(it was probably my fault. I should have looked this up first)Anyway... I wanted to share my designs with the community in case anyone wants to build it (I have not tested it yet).It has an FTDI chip to make the conversion between USB and I2C and it is most likely not compatible with Sigma Studio, but you can probably make a program that can load the files from Sigma Studio to the EEPROM. It also has some breakout pins for the General Propose Ports of the DSP chip, a selectable LPF for the inputs and a fixed LPF for the outputs. I wanted it to be as simple as possible at first.If anyone wants to point out potential and/or obvious design errors in my design, I will thank you very much, since I don't have much experience.Here is the link for the files (in KiCAD).https://github.com/DiegoRosales/El_Rockero.git

author: lewis
author_rank: Frequent Contributor
timestamp: March 26, 2014, 10:58:17 pm
content: Don't be disheartened, Sigma Studio (SS) is basically a graphical compiler to convert your signal path design into DSP-readable code. It also generates some C files and headers relating to all the variable parameters within the signal chain, so for example with an EQ you get a pointer to somewhere in the DSP's register bank where varying that value will affect the EQ. It's the same as dragging the slider in SS in real time with the DSP eval board connected to the USBi module.To make the project work, you can use an MCU to load the DSP. Create the most complex program you need in SS, generate the source and load into an EEPROM connected to an MCU in your project. Include the .h files generated by SS in your MCU code which tells you where all the variable parameters are. You can then vary the DSP parameters by using the MCU rather than SS. Of course this technique will not allow you to rewire signals like SS will, but it can allow you to bypass signal processing blocks (hence my comment about creating the most complex program possible: you can simplify it in real time in the MCU by bypassing the blocks you don't need.)Once you have the MCU controlling the DSP, then you can write whatever open source software you like to interface to the MCU over USB/Ethernet/RS232/Carrier-pigeon to change the DSP parameters. In other words, you don'tneedsigma studio tousethe effects unit.Analog Devices don't make it massively easy to interface the Sigma DSP to an MCU, the support was very sketchy last time I looked a couple of years ago. But SS does generate some pretty comprehensive .h files, you just need to work out what it all relates to!This all can still be open source, SS is just acompiler, there's nothing stopping you releasing its output. There's also nothing stopping you telling people that the DSP is based around Sigma Studio, they'll find ways to get hold of it if they really want to play about.

author: Fantasma25
author_rank: Regular Contributor
timestamp: March 27, 2014, 04:00:22 am
content: That's a really good idea. Maybe I'll start making a little breakout board with only the DSP and an EEPROM and see how it goes. I'll also take a look at the files generated by SS. Thank you so much!!

author: hamster_nz
author_rank: Super Contributor
timestamp: March 27, 2014, 04:14:18 am
content: I've had some joy bringing up an ADAU1761 (also a SigmaDSP CODEC) using I2C and I2S, so might be able to help.Mike

author: Fantasma25
author_rank: Regular Contributor
timestamp: March 27, 2014, 07:18:10 pm
content: Quote from: hamster_nz on March 27, 2014, 04:14:18 amThank you! Soon I'll be posting my design of an ADAU1701 Breakout board to check if there are design flaws.