DIY digital/analoger synth, konzepte und hardware

lilak

|||||
nachdem wir schon eine weile diskutieren ob sich mit dem raspberry pi 2 ein synth bauen lässt, hier ein weiterführender thread. ich würde die mindestanforderungen an einen hybridsynth folgendermassen sehen. damit liesse sich dann sowas wie ein dsi pro 2 mit effekten selbst stricken, bei genügend in/outs sogar polyphon.:

digitale oszis, ein analoger filter, ein analoger vca:

- 2x high quality audio in + out
- 2x control voltages out, einmal für filter, einmal vca.
- 8 controller in
- genug memory für delay, looper etc.

das liegt ja in der luft, ich zb. hab die software für sowas weitgehend fertig, der digitale teil läuft bei mir auf linux unter pure data, der anloge teil geht über ein es-3 modul und euromodulare filter. das würde ich jetzt gerne standalone zu meinem eigenen custom synth weiterentwickeln. aber auf welcher plattform?

raspi 2 scheint das nicht zu stemmen wegen probleme mit usb aber evtl. liesse sich da ein custom shield entwickeln. sowas wie der axoloti ist vermutlich vom prozessor unterdimensioniert und läuft nicht auf linux.

zum raspi2: posting.php?mode=reply&f=13&t=100303
 
Ich Senf mal da was dazu :)

Ich sag' mal was zum Thema Raspi und beschränke mich auf Fertigteile. Eigenentwicklungen dürften da einfach zu aufwendig werden.

- 2x high quality audio in + out ->
Wenn 2x heißt stereo (oder natürlich 1x Stereo oder 2x Mono) dann ist das mit dem Raspi in Verbindung mit HiFi-Berry oder Wolfson Audio Card möglich. Nahezu Studioqualität, aber RASPI2 (also die neue schnelle Variante hat noch aktuell keine Treiber) Achtung: Signalpegel max. LineOut Anpassungselektronik zum zu den Filtern notwendig.

- 2x control voltages out, einmal für filter, einmal vca.

Ist mit einem vorgeschaltetem arduinoähnlichem zu machen. Notfalls 2 Pis. einer für die Audioerzeugung ein 2. als Mastercontroller beide über OSC vernetzt. 1 Pi rein für das Audiohandling und einer, der mit der Welt redet. Also der klassiche Master/Slave Ansatz.

Es gibt gute ADC/DAC die das schaffen. Fertig ist sowas z.B. für den Arduino zu bekommen. Das AnalogShield von Digilent. Aber: das ist Anpassungselektronik dazwischen notwending. Die typpischen Modularbrocken wollen ja irgendwas zwischen -10/+10 V. Oder man muss die Filterumdesignen. (Oder im Shruti Umfeld räubern)

Gleiche Baustelle. Irgendein MC als Vorrechner tut's immer. Ist z.b. auch notwendig, wenn Controller eben kein Poti sondern z.b. Incrementalgeber (Encoder) sein sollen.

genug memory für delay, looper etc.
Mmh... da kommt's auf die Anforderung an. Echo geht im Speicher. Da sollten gut 200-300Mb zur Verfügung stehen. Das sollte für einfache Loopaufgaben reichen. Nur wenn's direkt auf Platten geschrieben werden soll, dann kann es ggf. eng werden.

Fazit:
Ohne verfügbare Treiber für die Karten kann man da keine endgültige Aussage treffen. Ist zuviel Kaffeesatzlesen.

Der Rest wäre machbar.

Ich spinne jetzt mal ein Setup zusammen:

Kosten für einen Prototype:

2x Raspi mit 8 GB SD Karten, gescheite Stromversorgung) ca. 100 Euro
1x Wolfson ca. 50 Euro
1x Arduino mit z.B. AnalogShield (da weis ich das es Machbar geht, habe ich im Modularsystem aktuell eingebaut) ca. 70 Euro (4x CV in 4x CV out mit 16 Bit)
Anpassungselektronik (wird notwenig sein) 100 Euro
8 Encoder mit PCB etc. sicher auch nochmal 100 Euro (rein mit Pots wird's billiger)

Ohne Ungeplantes: ca 500 Euro aber mit recht hohem Realisierungsrisiko. Da gibt es viele ungelegte Eier drin

---------------------------------------------

Die meisten Brocken liegen bei mir übrigens rum. Ich verfolge die Idee einen Raspi in das Modularsystem zu integrieren schon sein ca. einem halben Jahr. Kommt immer was dazwischen. Aktueller Zwischenschritt war erst mal die Sache mit dem AnalogShield in den Griff zu bekommen.

Falls mein Blog dazu nicht bekannt ist :) (Werbung) http://journeytounknownsoundscapes.blogspot.de/2015/02/a-ready-made-module-analog-shield.html

Die nächste Stufe sollte jetzt die aktuelle Baustelle RASPI2 mit der Wolfson Karte sein. Damit hätte ich CV-In /CV-Out am Raspi. Da bin ich mir mir noch am Diskutieren wie ich die Kommunkation aufsetze. Vermutlich aber direkt über die USB mit 115200 Baud in PseudoMidi (16 Bit natürlich) da kann man fertige Libs nutzen und PD kommt damit ohne viel Stress klar.

Wenn das geht, dann sind weitere Controller eher Kinderkram bisserl Anlalog Multiplexing und gut is.

Filter sind für mich bisher kein Thema gewesen, das Modularsystem hat ja genug davon.... :mrgreen: (Naja, eigentlich immer einen zuwenig). Die Anpassung mit ein paar OPAMPS ist jetzt auch nicht so ein Hexenwerk. Sind im Prinzip einfach "Aufholverstärker" bzw. Abschwächer notwendig.

--------------------------------

In wie weit ein Raspi die Polyphonie tragen kann kommt auf einen Versuch an.
 
Wenn 2x heißt stereo (oder natürlich 1x Stereo oder 2x Mono) dann ist das mit dem Raspi in Verbindung mit HiFi-Berry oder Wolfson Audio Card möglich.

audio und cv auch? ist ja eigentlich das gleiche wenn man nur die pegel anheben müsste. aber so wie ich die specs verstehe hat das ding nur stereo in und stereo out also 2x2 kanäle.

mit dem arduino dazwischen scheint mir für zeitkritische sachen wie cv problematisch zu sein. wenn zwischen dem oszillator signal und envelope cv ein par millisekunden delay sind kannst du einen schnellen attack vergessen. aber als controller für die potis sicher ok.

eigenentwicklungen dazu sind sicher schon auf dem weg, zb in der modularszene. die cpu des raspi stemmt cv + audio locker und das teil bietet sich für diy ja geradezu an. geduld!

ich hab hier jetzt noch einen wandboards dual linuxcomputer liegen, der scheint mir auch sehr interessant. gleicher prozessor wie der raspi also cortex a9 aber vollwertige peripherie, vor allem usb, leider nur einmal aber digital audio out, sogar sata. müsste ich mal testen was damit geht. es gibt ja auch gpio via usb boards für cv?

http://www.wandboard.org/

wandboard-freescale-imx6.png
 
audio und cv auch? ist ja eigentlich das gleiche wenn man nur die pegel anheben müsste. aber so wie ich die specs verstehe hat das ding nur stereo in und stereo out also 2x2 kanäle.
Nö ist nicht das Gleiche. Audio DACs in dieser Art haben auf jeden Fall einen Koppelkondensator und ein Tiefpassfilter am Ende. Da kommt kein Gleichstrom mehr durch.

mit dem arduino dazwischen scheint mir für zeitkritische sachen wie cv problematisch zu sein. wenn zwischen dem oszillator signal und envelope cv ein par millisekunden delay sind kannst du einen schnellen attack vergessen. aber als controller für die potis sicher ok.

Nö, Arduinohüllkurven bis 1-2 Khz kein wirkliches Problem wenn man die richtigen DACs nimmt. Einfach mal in mein Blog unter AnalogShield schauen. Aktuell schaffe ich die Dinger bis ca. 8 Khz als Audioquelle zu fahren. Viel mehr geht eh nur mit sehr - sehr teuren DACs. (Stückpreis so ab 30 Euro aufwärts). Hüllkurven und so ein Kram mit einem Raspi zu machen ist mit Kanonen auf Spatzen schiessen. Übrigens die GPIOs am Raspi sind nur im memode überhaupt wirklich performant. Mit dem Raspi irgendwas Schnelles schalten ist keine wirklich gute Idee. Der ganze WiringPi Kram ist grottenlangsam wg seines Overheads:
http://codeandlife.com/2012/07/03/benchmarking-raspberry-pi-gpio-speed/ Max. 4,6 Mhz bei einer einfachen Schleife ein Rechteck erzeugen! Das bekomme ich bis 1 Mhz mit einem Arduino in Assembler hin! Und brauche dazu kein Prozessor mit 700 MHz! :lol: Er schreibt ja am Ende des Textes dann auch:
A good alternative is an independent add-on board with a microcontroller, such as Arduino or several other alternatives. Communicating over UART is simple with such devices.
Deckt sich mit meinen Erfahrungen :)

ich hab hier jetzt noch einen wandboards dual linuxcomputer liegen, der scheint mir auch sehr interessant. gleicher prozessor wie der raspi also cortex a9 aber vollwertige peripherie, vor allem usb, leider nur einmal aber digital audio out, sogar sata. müsste ich mal testen was damit geht.

Das ist die gleiche Baustelle wie A20 Cubitruck, Odroid etc. In der Theorie geht's . nur versuche mal auf den Kisten z.B. PD Extended zu kompilieren oder Jack2. Die aktuellen Probleme (superschlechte Doku) rund um die Allwinner Chips liegen mehr bei der instabilen Software, weil die Entwickler keine vollständigen Infos haben, als bei den Hardwarethemen. Von der Hardware sind die Brocken eigentlich alle schnell genug.

es gibt ja auch gpio via usb boards für cv?

Yipp gibt es, aber ist nicht das was gebraucht wird. Über USB->GPIO das ist viel zu langsam, damit kann man LED und Relais gut steuern da kommt's nicht so auf die Samplerate an. I2C oder besser noch SPI heißen die Zauberworte. DACs gibts als fertige Breakoutboards bis 100 kbs und 16 Bit (Wobei sogar 12 Bit da vollkommen reichen, die kosten nur ein Bruchteil). Hüllkurven bis 1 KHz (1 msec) sind, wie oben geschrieben, damit erreichbar. Der GPIO Kram über Usb ist das gleiche Prinzip wie wenn ich einen Arduino als Vorrechner verwende, nur das die einen anderen Stack nutzen. Schnell ist was Anderes, nur die Programmierung ist wg. der sehr einfachen Einbindung leicht zu machen. Wir verwenden die hier in der Fa. gerne mal in Hutschienengehäuse eingebaut. Gibts sogar fix und fertig von der Stange.

Auffällig ist an diesen Kleinrechnerboards, dass, obwohl sie so weit verbreitet sind, bis heute noch Keiner wirklich was Nennenswertes im Musiksektor damit hin bekommen hat. Und ich gehe mal davon aus, das da draussen keine Dummköpfe rumspringen und Leute dabei sind die auch genug Zeit und Know-How haben. Es gibt zig Leute die irgendwelche, vielversprechende Ansätze veröffentlichen und dann hört man nichts mehr davon. Das sollte einem zu Denken geben. Der Raspi ist jetzt seit fast 3 Jahren draussen und es gibt immer noch nichts wirklich Verfügbares zum Musikmachen. Bisserl PD hier, SC da ein paar andere Sachen. Demos etc. und das war's. In anderen Bereichen gibt es da sichtbare Erfolge. Nur bei den Musik-Audiothemen geht's irgendwie nicht vorran. Mediaplayer gibt's wie Sand am Meer.

Ich wäre der Erste, der das ausprobieren würde..... :lollo: Ich habe da bisher sehr viel Zeit (und Geld) reingesteckt. Nur wirklich etwas was man weitergeben kann ist nicht wirklich dabei rausgefallen. Am weitesten bin ich bisher mit Pi B+ + Wolfson und dem 3.12 Kern gekommen. Das war richtig gut mit PD - ber leider auch noch ziemlich Buggy. Nun ist der RPI2 raus und wir stehen wieder am Anfang, da jetzt die alten Bugs nicht mehr behoben werden, weil aller Aufwand in die 3.18 Anpassung gesteckt wird. :selfhammer:
 


News

Zurück
Oben