Aus Raspberry Pi Geek 05/2025

Buzzer-Musik: Einfache Melodien mit dem Pi Pico (Seite 2)

Mit dem Code in der Methode mono() könnten Sie schon komplette Melodien spielen – allerdings fehlen hier Pausen. Unabhängig davon ist die Notation sehr mühsam. Ganze Melodien wie in Zeile 5 als Liste von Tupeln zu notieren, ist für “Happy Birthday” oder andere kurze Schnipsel gerade noch akzeptabel, aber bequem geht anders.

Woher nehmen?

Zum Glück gibt es eine Onlinequelle, von der Sie Musik in einem (fast) passendem Format herunterladen können: Die Webseite Onlinesequencer.net [2] stellt eine ganze Bandbreite von Tonfolgen bis hin zu kompletten musikalischen Werken bereit. Wenn Sie also Sehnsucht nach den alten Nokia-Klingeltönen haben: Hier sind Sie richtig. Suchen Sie nach “Telekom”, finden Sie neben der minimalistischen Originalversion mit fünf Tönen auch kreative Bearbeitungen mit bis zu 1157 Tönen. Bitte beachten Sie dabei, dass nicht alles, was sich im Netz abgreifen lässt, auch gemeinfrei ist.

Die Suche erreichen Sie über Sequences (der erste Reiter in Abbildung 4). Wenn Sie ein der Trefferkacheln anklicken, kommen Sie in den Abspielmodus und können das Musikstück probehören. Rechts gibt es einen Download-Link zur entsprechenden MIDI-Datei. Die sollte eigentlich alle relevanten Informationen enthalten, aber dem Autor ist es nicht gelungen, die Daten zuverlässig zu extrahieren.

Abbildung 4: Die Suchfunktion von Onlinesequencer.net erlaubt ein Probehören der Treffer.

Abbildung 4: Die Suchfunktion von Onlinesequencer.net erlaubt ein Probehören der Treffer.

Zum Glück gibt es einen alternativen Weg. Dazu wechseln Sie im Online Sequencer in den Editiermodus (Stiftsymbol, Most Notes), markieren alle Noten über die Schaltfläche Select All (Abbildung 5) und kopieren sie dann mit [Strg]+[C]. Anschließend fügen Sie die Noten in eine Textdatei oder direkt in Ihr Programm ein. Das komplette Musikstück besteht aus einem langen String im Format …;Start Tonhöhe Dauer Instrument;… für die einzelnen Noten.

Abbildung 5: Alle Noten eines Musikstücks kopieren.

Abbildung 5: Alle Noten eines Musikstücks kopieren.

Die Rohdaten eignen sich allerdings nicht für das direkte Abspielen. Das Umwandeln der Stücke müssen Sie jedoch zum Glück nicht manuell erledigen: Dafür gibt es im Buzzer-Music-Projekt des Autors ein Hilfsskript. Zum Abspielen dient eine passende Python-Klasse, die die Noten einliest und auf einem oder mehreren Buzzern ausgibt.

Tipps & Tricks

Noch ein paar Hinweise und Kniffe aus der Praxis: Nicht jeder Buzzer klingt gleich, und nicht jedes Musikstück eignet sich für das Abspielen per Buzzer. Das liegt primär daran, dass der Frequenzbereich der kleinen Bausteine begrenzt ist. Bei tiefen Tönen neigen Buzzer zum Brummen, bei hohen tendieren sie zum Piepsen.

Generell klingen Akkorde schlechter als Melodien, denn die Summer treffen die Frequenzen nicht perfekt. Im Zweifelsfall funktionieren deshalb einfachere Versionen eines Stücks besser als komplexe. Das Abspielen von mehr gleichzeitigen Tönen, als Buzzer bereitstehen, verursacht ebenfalls Probleme: Die Routine hat dann die Wahl zwischen dem Fallenlassen von Noten oder dem Warten auf einen freien Buzzer – beides klingt nicht gut.

Fazit

Auf Buzzern abgespielte Musik ist wohlgemerkt kein Ohrenschmaus, peppt aber Projekte durch Signale, Weckmelodien oder als Begleitung zu LED-Animationen deutlich auf. Singende Geburtstagskarten funktionieren nach demselben Prinzip. Warum also nicht einmal ein Präsent so bestücken, dass beim Öffnen die Lieblingsmelodie des Beschenkten ertönt? Oder einen Küchenwecker basteln, der mehr kann als stupides Piepsen? (jlu)

Der Autor

Bernhard Bablok genießt den wohlverdienten Ruhestand. Wenn er nicht Musik hört oder mit dem Rad respektive zu Fuß unterwegs ist, beschäftigt er sich mit Themen rund um Linux, Programmierung und Kleincomputer. Sie erreichen ihn unter mailto:[email protected].

Infos

  1. Buzzer-Musik-Bibliothek: https://github.com/bablokb/cp-buzzer-music
  2. Onlinesequencer.net: https://onlinesequencer.net
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben