Zum Inhalt springen
Teensy Board auf Breadboard

Start mit Teensy MIDI

    Das Teensy-Board ist ein sehr kleines Mikrocontroller-Board, das perfekt auf ein Breadboard passt und extrem leistungsfähig ist. Es wird von Paul Stoffregen entwickelt und ist u.a. hervorragend für den Bau von USB-MIDI-Controllern geeignet. Im Gegensatz zum Arduino-Board kann man ein Teensy super einfach als USB-MIDI-Gerät konfigurieren und trotzdem noch serielle Kommunikation zum Debuggen nutzen. Nun aber los.

    Bauteile

    Installation

    Um das Teensy zu nutzen, gibt es praktischerweise die Teensyduino-Installer-Software, die sich in die Arduino-Software integriert.

    1. Wenn noch nicht vorhanden, installiere die Arduino-Software
    2. Mac only: Starte und schließe die Arduino-Software
    3. Lade die Teensyduino-Installer-Software herunter
    4. Starte die Teensyduino-Installer-Software

    Erster Upload

    Öffne die Arduino-Software. Im Menü Werkzeuge>Board wähle deine Teensy-Version. In meinem Fall ist es das Teensy 3.2 / 3.1, dann wähle den Port aus, an dem das Teensy angeschlossen ist (Werkzeugt>Port).


    Sieh dir jetzt meinen neuen Arduino-Videokurs an: Jetzt ansehen!


    Teensy Port auswählen

    Öffne das Blink-Beispiel aus dem Menü Datei>Beispiele>Teensy>Tutorial1 und übertrage es auf das Teensy-Board (Datei>Upload). Im Gegensatz zum Upload auf Arduino-Boards öffnet sich nun die Teensy-Loader-Software. Es handelt sich um ein kleines Hilfsprogramm, das die Arduino-Programme auf das Teensy lädt. Bei der ersten Verwendung des Teensys kann es vorkommen, dass man den kleinen Reset-Button auf dem Teensy drücken muss. Der Teensy-Loader gibt einem aber rechtzeitig Bescheid.

    Teensy Loader

    Teensy-MIDI

    Konfiguriere das Teensy als MIDI-Gerät, indem du im Menü Werkzeuge>USB-Type MIDI auswählst. Beim nächsten Upload erkennt dein Computer das Teensy als MIDI-Gerät.

    MIDI what?

    MIDI, oder auch Musical Instrument Digital Interface, ist ein Protokoll, das festlegt, wie Daten zwischen elektronischen Musikinstrumenten wie Keyboards oder Synthesizern ausgetauscht werden.

    Wir werden mit dem Teensy als Eingabegerät einen Software-Synthesizer auf deinem Computer steuern. Ich benutze auf dem Mac Garageband und Ableton Live. Für Windows gibt es aber ebenfalls eine ganze Reihe von MIDI-fähigen Programmen.

    Die erste MIDI-Note

    Nun erweitere das Blink-Beispiel durch diese beiden Befehle:

    usbMIDI.sendNoteOn(80, 99, 1);
    usbMIDI.sendNoteOff(80, 0, 1);

    Der erste Befehl schlägt eine Note an, der zweite schaltet sie wieder aus.

    Dabei stehen die Parameter für Note, Volume, Channel. Bei Note handelt es sich um die Note (0 – 127), bei Velocity um die Anschlagsdynamik (wie stark schlägt man eine Taste an; 0 – 127) und bei Channel um den MIDI-Kanal, auf dem man sendet.

    Das ganze Programm sieht dann so aus:

    const int ledPin = 13;
    
    void setup() {
      pinMode(ledPin, OUTPUT);
    }
    
    void loop() {
      digitalWrite(ledPin, HIGH); // set the LED on
      usbMIDI.sendNoteOn(80, 99, 1);  delay(1000); // wait for a second
      digitalWrite(ledPin, LOW); // set the LED off
      usbMIDI.sendNoteOff(80, 0, 1);  delay(1000); // wait for a second
    }

    Wenn du nun deinen Software-Synthesizer öffnest, kannst du die Noten schon klingen hören. In Garageband kann man einfach ein leeres Projekt öffnen und eine Software-Instrumentenspur hinzufügen. Voilà.

    Teensy steuert Instrument in Garageband

    Und nun noch ein bisschen zufällige Dynamik:

    const int ledPin = 13;
    
    void setup() {
      pinMode(ledPin, OUTPUT);
    }
    
    void loop() {
      int myNote = random(0,128);
      digitalWrite(ledPin, HIGH); // set the LED on
      usbMIDI.sendNoteOn(myNote, 99, 1);
      delay(1000); // wait for a second
      digitalWrite(ledPin, LOW); // set the LED off
      usbMIDI.sendNoteOff(myNote, 0, 1);
      delay(1000); // wait for a second
    }

    Das Teensy bietet eine Vielzahl an Möglichkeiten. Neben dem Spielen von Tönen lassen sich auch Steuersignale z.B. für Lautstärkeregler oder Filter schicken. Das sehen wir uns aber beim nächsten Mal an. Übrigens kannst du als Eingaben alle Arten von Sensoren nutzen, die du aus der Arduino-Welt kennst. Dazu zählen z.B. Fotowiderstände, Taster, FSRs, Potentiometer, Temperaturfühler, Akzelerometer, Drucksensoren, etc. Nun aber erstmal viel Spaß beim Herstellen eigener Instrumente.


    Wenn dir das Projekt gefallen hat und du von weiteren interessanten Projekten inspiriert werden willst, sieh dir doch mal mein neues E-Book »Arduino Projekte Volume 1« an!

    • Die beliebtesten Arduino-Projekte von StartHardware
    • Inklusive Schaltplan, Beschreibung und Code
    • Arduino-Schnellstart-Kapitel
    • Kompakter Programmierkurs


    Schlagwörter:

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

     

    Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.