Loopuino - Eine einfache Loop-Station mit Arduinos und SuperCollider

Loopuino ist eine Loop-Station mit einem kabelgebundenen Controller zum Aufnehmen von Audio-Signalen (z.B. von einer Gitarre oder einem Mikrophon), einem Funk-Controller zur Live-Modifikation dieser Signale und einer Software, die die Controller-Signale verarbeitet um die Klanginformationen aufzunehmen, als übereinanderliegende Loops abzuspielen und zu modifizieren. Das Projekt wurde zusammen mit Tobias Schultze im letzten Bachelorsemester der Angewandten Informatik realisiert.
Eine Loop-Station an sich ist ein Gerät oder eine Anwendung, die es dem Benutzer erlaubt Klänge (z.B. eine Akkordfolge auf einer Gitarre) aufzunehmen, in einer unendlichen Schleife abzuspielen und darüber weitere Klänge aufzunehmen (z.B. ein Gitarrensolo).
Mit diesem Projekt wollten wir zeigen, wie leicht es ist interaktive Audiocontroller mit einfacher Hard- und Software zu erstellen, indem man bereits verfügbare programmierbare Mikrokontroller und Software-Anwendungen miteinander koppelt.
Genereller Aufbau

Die Controller
Die Controller-Software ist auf zwei Arduino-Controllern implementiert. Einer hat ein Potenziometer und einen Transmitter. Seinen Strom bezieht er aus einer 9V-Batterie. Die Potentiometerwerte werden mittels Funk an den zweiten Arduino-Controller gesendet, sobald sie sich ändern. Dieser Arduino hat ein Empfängermodul und ein "Loop-Pedal", das im Grunde genommen ein einfacher Knopf ist (natürlich groß und stabil genug für einen Gitarristen im Vollrausch). Er ist mittels USB an einen Computer angeschlossen. Es kann die Potenziometerwerte des erstens Arduinos empfangen und an die Loopstation-Software auf dem Computer weiterleiten. Außerdem sendet es auch entsprechende Meldungen an diese Software, sobald auf das Loop-Pedal getreten wurde. Dieser Arduino hat außerdem eine Reihe von LEDs, die anzeigen sollen welcher Takt gerade gespielt wird. Dazu reagiert es auf Meldungen der Loopstation-Software.
Die Loopstation-Software
Die Loopstation-Software ist ein Programm, das in SuperCollider geschrieben wurde. Es reagiert auf Nachrichten des per USB angeschlossenen Empfänger-Arduinos auf dem seriellen Port und führt die entsprechenden Funktionen aus. Dazu gehört grundsätzlich das Abspielen und Aufnehmen der Loops sowie die Modifikation der Loops je nach Stellung des Potenziometers im Sender-Arduino (dadurch kann z.B. die Abspielgeschwindigkeit der Loops verändert werden). Außerdem sendet es Nachrichten an den Empfänger-Arduino die ihn anweisen, welche LED aufzuleuchten hat.
Die Anwendung erzeugt außerdem ein einfaches GUI, mit dem man alle Funktionen auch ohne angeschlossenen Arduino ausführen kann.
Download
Der Quellcode für die Arduinos und der LoopStation in SuperCollider steht hier frei zur Verfügung. Eine Dokumentation ist enthalten. Der SuperCollider-Code stellt eine voll funktiontüchtige Loop-Station dar, die man auch ohne Arduinos benutzen kann! Die Quellcodes eignen sich sehr gut dafür, wenn man etwas über Buffer-Aufnahme/Wiedergabe in SuperCollider und Funksignale in Arduino erfahren will.
- Download des Quellcodes und der Dokumentation: loopuino-src.zip
Photos
Seite zuletzt bearbeitet am 05.05.2010 14:14 Uhr










