A SuperCollider Quark which allows to connect with Eurorack modules
This library allows you to tune an eurorack oscillator so you can sequence it using the SuperCollider pattern class. It also allows you to sync a SuperCollider clock to Eurorack or use a Eurorack clock as clock within SuperCollider.
In the help files it is also described how to use e.g. an LFO from SuperCollider in EuroRack and vice versa.
Only Audiointerfaces which arre DC coupled can output a steady DC offset which is necessary to output frequencies via CV! An incomplete list can be found e.g. here. Focusrite interfaces are not DC coupled! In case you do not have a DC coupled interface you can still send triggers from SuperCollider using this Quark.
Please install sc3-plugins before because we rely on the Tartini pitch tracker for the tuning process.
// install from git repository Quarks.install("https://github.com/capital-G/EuroCollider.git"); // restart sclang so EuroCollider is available thisProcess.recompile; // view help guide for a quick start HelpBrowser.openHelpFor("Guides/EuroCollider");
Assuming you have booted the server (with enouh I/O) and connected e.g. output #4 (all numbers are starting from 0 in SC!) to the CV in of your oscillator and output #5 to a gate input of e.g. an envelope generator.
By connecting the audio output of the oscillator to input #6 of your soundcard you can now start the tuning process.
e = EuroSynth(soundIn: 6, cvOut: 4, gateOut: 5).tune;
Follow the shown instructions and read the help files or check wiring in case it does not work.
The tuning process should take about 30s.
Once tuned we can simply play the tuned eurorack oscillator via a Pbind/Pdef, e.g.
( Pdef(\myEuroPattern, Pbind( \type, \euro, \euro, e, \dur, 0.25, \scale, Scale.chromatic, \degree, Pxrand((0..12), inf), \octave, Pseq([5, 4], inf), )).play; )