OscPocketO – Kompakter Arduino Synthesizer & Drum Machine
Komponenten und Zubehör
| Arduino UNO | × | 1 |
| Audio-Klinke (Buchse, 3,5 mm) | × | 1 |
| Jumper-Kabel (Buchse/Buchse) | × | 2 |
| Jumper-Kabel (Stecker/Stecker) | × | 2 |
Benötigte Werkzeuge
- Lötkolben (Standard)
Projektbeschreibung
Laden Sie den aktuellen Code und die Bauanleitung herunter: oscillator.se/arduino
Inspiriert von anderen portablen Musikgeräten habe ich die hervorragende Mozzi-Bibliothek studiert. Wäre es nicht nützlich, mehrere Synthesizer und Drum Machines zu bauen und diese im Tempo zu synchronisieren? So entstand der OscPocketO – ein portables Musikstudio, das lediglich einen Arduino und ein LCD-Keypad-Shield benötigt.
Bedienung
Der OscPocketO wird über die Tasten des LCD-Keypads gesteuert:
- SELECT – Wechsel zwischen den Modi
- UP / DOWN – Werte erhöhen / verringern
- LEFT / RIGHT – Cursor bewegen
Die eingebaute Arduino-LED blinkt bei jedem gespielten Ton.
- Der direkte Anschluss an eine HiFi-Anlage kann diese überlasten! Nutzen Sie Kopfhörer oder einen Mixer.
- Falls das LCD-Display durcheinandergerät: Drücken Sie wiederholt die Tasten, bis Sie das Tools-Menü durchlaufen haben – das LCD wird zurückgesetzt.
OscPocketO Synthesizer
Modi
- START – Sequenzer starten/stoppen
- SYNC – Synchronisationsmodus: NONE (kein Sync), INT (interner Clock, sendet Sync – Dirigent), EXT (externer Clock, empfängt Sync – Spieler)
- PATTERN – Aktuelles Pattern wählen
- EDIT – Pattern bearbeiten (Noten als MIDI-Werte, 1 Takt = 16 Sechzehntelnoten)
- STATE – Notenzustand setzen: X = an, O = aus
- TEMPO – Sequenzertempo einstellen
- GATE – Notenlänge als Prozent eines Sechzehntels
- SHIFT – Transponieren (UP/DOWN) und Sequenz verschieben (LEFT/RIGHT)
- WAVEFORM – Wellenform des 1. Oszillators: SIN, TRI, SAW, SQUARE
- ATTACK / RELEASE – Hüllkurvenzeiten in ms
- FILTERMODE – Tiefpassfilter-Modulation: FIXED, RANDOM, SLOW (~4 Takte), FAST (~1 Takt)
- CUTOFF / RESONANCE – Filterparameter (0–255)
- WAVEFORM2 – 2. Oszillator: NONE, SIN, TRI, SAW, SQUARE
- DETUNE2 – Verstimmung des 2. Oszillators in Hz
- PLAY – Keyboard-Modus: Die ersten 4 Noten des Patterns auf LEFT, UP, DOWN, RIGHT
- TOOLS – Dienstprogramme (mit UP aktivieren):
- S – Einstellungen & Patterns im EEPROM speichern
- L – Aus EEPROM laden
- R – Zufälliges Pattern erzeugen
- B – Bassline-Pattern basierend auf aktueller Note
- C – Aktuelles Pattern in nächsten Slot kopieren
OscPocketO Drums
Spielt 5 simultane Sounds, alle virtuell-analog via Mozzi: Kick, Snare, Hi-Hat, Clap, Crash, Tom.
Modi
- START, SYNC, PATTERN, TEMPO, GATE – wie beim Synthesizer
- EDIT – Pattern bearbeiten. Notenwerte werden durch Addition der Sound-Werte gebildet:
- Kick = 1, Snare = 2, Hi-Hat = 4, Clap = 8, Crash = 16, Tom = 32
- Beispiel: Wert 17 = Kick (1) + Crash (16)
- EDITKICK / EDITSNARE / EDITHIHAT / EDITCLAP / EDITCRASh / EDITTOM – Individuelle Sound-Parameter (Frequenz, Release, Slope)
- PLAY – Solo-Modus: LEFT=Kick, UP=Snare, DOWN=Tom, RIGHT=Crash
- TOOLS – S (Speichern), L (Laden), R (Random), B (Wiederholendes Pattern), C (Kopieren)
Mehrere OscPocketO-Geräte synchronisieren
1. Setup
- GND aller Geräte verbinden (siehe Bauanleitung für Sync-Kabel)
- Conductor (Dirigent): Start: Stop, Sync: Internal
- Player(s): Start: Stop, Sync: External, dann Start: Play (Reihenfolge wichtig!)
- SYNC OUT (Conductor) → SYNC IN (1. Player)
- Bei mehreren Playern: SYNC OUT → SYNC IN kaskadieren
2. Spielen
- Conductor: Start: Play
- Sounds & Patterns auf allen Geräten anpassbar, Tempo nur am Conductor
Hardware-Aufbau
1. LCD-Keypad-Shield vorbereiten
Das Shield belegt standardmäßig Pin D10 für die Hintergrundbeleuchtung. Da D10 für Audio benötigt wird, muss der entsprechende Pin am Shield um 90° abgeknickt werden, bevor es aufgesteckt wird.
Belegung nach Modifikation:
- LCD: D4, D5, D6, D7, D8, D9
- Tasten: A1
- RST-Taste: Reset (nicht vom Code genutzt)
2. Audio-Klinke anschließen
Die Klinke wird an D10 (Signal) und GND angeschlossen. Da Mozzi standardmäßig D9 nutzt, muss die Bibliothek angepasst werden (siehe Software-Schritt).
- Farbiger Draht → Tip (Signal) → D10 (Lötpunkt auf Arduino-Rückseite)
- Schwarzer Draht → Sleeve (GND) → GND auf dem Shield
3. Sync In / Out
Weibliche Jumper-Kabel halbieren, eine Hälfte an D11 (SYNC IN), eine an D12 (SYNC OUT) und eine an GND löten.
4. Einbau in Gehäuse
Für Langlebigkeit sollte der OscPocketO in ein Gehäuse eingebaut und Kabel sowie Klinke fixiert werden.
5. Sync-Ground-Kabel herstellen
Langes Stecker/Stecker-Kabel, Isolation in der Mitte entfernen, ein abgeschnittenes Stecker-Kabel daranlöten – so verbinden sich alle drei (oder mehr) Pins.
Software-Installation
Mozzi-Bibliothek installieren & konfigurieren
- Mozzi herunterladen: sensorium.github.io/Mozzi/download/
- In der Mozzi-Bibliothek die Datei
AudioConfigStandardPlus.höffnen - Folgende vier Zeilen anpassen (A↔B tauschen):
// Used internally. If there was a channel2, it would be OCR1B.
#define AUDIO_CHANNEL_1_OUTPUT_REGISTER OCR1B
#define AUDIO_CHANNEL_2_OUTPUT_REGISTER OCR1A
(...)
#define AUDIO_CHANNEL_1_PIN TIMER1_B_PIN //defined in TimerOne/config/known_16bit_timers.h
#define AUDIO_CHANNEL_2_PIN TIMER1_A_PIN
OscPocketO-Sketch hochladen
Wählen Sie code_synth/code_synth.ino (Synthesizer) oder code_drums/code_drums.ino (Drums) in der Arduino IDE und laden Sie den Code auf den Arduino.
Code
Der Code für Synthesizer und Drum Machine ist im Download enthalten. Keine Vorschau verfügbar – nur Download.
Schaltplan

Herstellungsprozess
- Experten-Leitfaden zu Bohren & Gewindeschneiden: Individualisierung & Vielseitigkeit
- Bandsägemaschinen: Revolution im industriellen Metallschneiden
- Metall- & Holzschnitt optimieren mit Hochleistungs-Bandsägemaschinen
- Fräsmaschinen verstehen: Typen, Funktionen und Anwendungen
- Fortschrittliche Drehzentren & CNC-Maschinentechnologie
- Bohr- und Fräsmaschinen verstehen: Funktionsweise und Anwendungen
- CNC-Dreh- und Fräsmaschinen verstehen: Funktionen, Vorteile und Anwendungen
- Handvorschub vs. Kraftvorschub: Bohrmaschinen-Typen im Vergleich
- Schleifmaschine vs. Hobelmaschine: Wesentliche Unterschiede im Vergleich
- Hobelmaschinen-Typen und Spezifikationen für optimale Leistung