A Eurorack effects module based on the SPIN FV1 chip and Hagiwo’s arduino code for OLED display, CV to PWM, and EEPROM interfacing.
I’ve added eurorack standard bipolar +/-5v control voltage inputs, overvoltage protections etc, and changed a few things (stereo wet/dry blend etc)
A couple of errors made it through to the V.0.1 PCBs. Debugging “sandwich” PCB designs (where one PCB holds the jacks and pots, and the other/s are the main board etc) means using male to female dupont cables to be able to probe the boards to diagnose – as can be seen in the photo.
Update in due course once I have the v.0.2 boards back from JLCPCB, and project files and gerbers to follow once I have a fully working version ready.
Update #1, March 2023
It’s all working, but I want to fine tune the voltage scaling and DC offset removal, which I should have done in the next few days.
I chose to burn the EEPROMs with a Pickit, rather than use an Arduino. Not a great decision: turns out the Pickit 2 either doesn’t like 64 bit op systems, or Windows 10, or USB 3 ports, or a combination of all of the above. I have a Pickit 3: before you think that’s a better option, read this.
I have a couple of old laptops for running obsolete software, and can confirm the Pickit 2 utility runs and detects the Pickit2 and programs the EEPROMS just fine on Windows 7 32 bit.
Either way, the info on burning EEPROMs for the FV1 is a bit like the eponymous tutorial that gave rise to the subreddit “r/restofthefuckingowl/” – vital bits missing, huge time sinks trying to work out why X doesn’t recognise Y, etc etc.
I’ll put a step by step guide up once I’ve finished this, along with a simple schematic for a programming cradle for the Pickit2.
Update #2, March 23
Nearly there? Nope, spoke way too soon.
This version is done, but I’m going back to the component placement and routing and starting again. Why?
In a word, NOISE. Now, this is not a hifi chip with an external DAC/codec etc. It’s never going to be noiseless, and it has a ceiling of what can be expected quality wise.
In this version of the board, the reverb programs sound good. If that was all it did, I’d be happy to stop here.
Anything with internal modulation – choruses, tremolo, reverb with chorus etc – have very audible and intrusive digital noise (not flanger/chorus whine, more like zipper noise) which I’m guessing must be crosstalk from the operation of the internal LFOs and the way I’ve placed and routed the components.
So, back to PCB design stage again.
I’m going to rework grounding and signal routing, add companding, and investigate running the chip at 48khz instead of the 32khz watch crystal (although that won’t have any impact on this issue).
I came across this presentation on PCB grounding by Rick Hartley for Altium – quite eye-opening, and I’ve immediately abandoned a version of this project with split digital and analog grounding because of it. Well worth a watch, and then several re-watches.
Update #3 April 23
Rework done. Companding added, analog and digital sections now have distinct zones, there’s more spacing between tracks, and there are two internal ground planes in a four layer board. Off it goes to the fabricators.