Sonifying kapacitiv Data över Serial Port med Teensy och SuperCollider (OSX och Linux) (4 / 4 steg)
Steg 4: Data läses in SuperCollider och skapa ljud!
** Använd referens handledning video för kompletterande hjälp med återstående steg. **
Efter installerande SuperCollider från webbplatsen https://supercollider.github.io/ och start av det, är det första du kommer att vilja göra installera nödvändiga paketet behövde läsa i Arduino seriella data.
1) kör du följande kommando på kommandot skärmen i Supercollider IDE:
Quarks.Install("Arduino"); använda tangentkombinationen kommando-Enter när markören i kommandot linje för att köra kod
2) väljer du "Kompilera om Class Library" från menyn språk.
Följt av:
3) att välja "startserver" i menyn språk.
4) öppna bifogade exempel skiss, CapSenseSCExampleForInstructibles.scd fil i SuperCollider och justera enhetsnamnet serieport ("/ dev/cu.usbmodem880691") på linje 21 att matcha namnet datorer serieport som är kopplad till Teensy mikrokontroller.
< Br >< p > (< br > SynthDef (\simpleSin, {| freq = 440, myDur = 2.0, myTimeScale = 0,2 |
För info:
EnvGen.kr (kuvert, utfärda utegångsförbud för, nivånskala, levelBias, tidsskala, doneAction)
Env.PERC (attackTime, releaseTime, peakLevel, kurva)
var env = Env (nivåer: [0.0, 0.5], gånger: [0,1, 0,01], kurva: -4);
var env1 = Env.linen (sustainTime:0.001, releaseTime:0.01, curve:[\sine,\welch]);
var envgen = EnvGen.kr (env1, myTimeScale:1/freq ** 2, doneAction:2); < /p >< p > //var env1 = Env.xyc ([[midfreq/100, 0,2, -1]! 2]), utfärda utegångsförbud för: 1, levelScale:1, levelBias:0, timeScale:myTimeScale, doneAction:2)
Out.ar (0,SinOsc.ar (freq) * envgen * 0,3)}
) .add;
) () < /p >< p >
s=server.default;
s.serverRunning.not.if ({s.boot});
(s.volume).setVolumeRange(argMax:-12);
CmdPeriod.doOnce{SerialPort.closeAll};
p = ArduinoSMS ("/dev/cu.usbmodem880691", 9600); Justera seriell portnamn som behövs!
p.Action = {
|... msg|
MSG.postln;
~ mesg = msg;
Synth (\simpleSin, [\freq: msg [0]]);
Synth (\simpleSin, [\freq: msg [1]]);
Synth (\simpleSin, [\freq: msg [2]]);
Synth (\simpleSin, [\freq: msg [3]]);
Synth (\simpleSin, [\freq: msg [4]]); < /p >< p >};
) < /p >
5) köras först de övre och lägre, SC block avsnitt nummer med markörens position och cmd-retur i avsnitt nummer block som visas i videon.
Och du är klar! Du bör nu få höra variabel gällt ljud från datorn när du touch (eller få nära) din kapacitiv givare!