Filter

Das beste an einem modularen Synthesizer: Man kann alle Module auf unterschiedlichste Weise nutzen, etwa einen Filter:

  • Der kann einen Ton filtern, etwa die hohen oder tiefen Frequenzen drinnlassen, den Rest entfernen, so den Ton interessanter gestalten. Die Filterfrequenz dazu auch modulieren, also schnell oder langsam oder zufällig höher und tiefer machen.
  • Einen Ton strukturieren; wenn etwa eine Taste vom Keyboard gedrückt wird, den Filter öffnen, auch abhängig von der Stärke des Anschlages, sonst komplett schliessen.
  • Eine Melodie spielen, dazu den Filter mehr oder weniger öffnen, abhängig von der Höhe der zu spielenden Note. Das Eingangssignal kann dafür auch ein Rauschen sein, das Ergebnis „tönt“.

Manche Filter kann man in Resonanz bringen. Dazu lässt man einen Teil des Tones vom Ausganges in den Einganz zurückfliessen. Das gibt interessante Effekte und erlaubt einen sehr speziellen Einsatzzweck, man kann den Filter als eigenständige Tonquelle nutzen, wie einen Oszillator:

  • In den Audioeingang kommt kein richtiger Ton, nur ein kurzes Knacken, ein Trigger. Das braucht der Filter zum Einschwingen, um sich in Resonanz zu bringen. Wir geben diesen Trigger bei jeder zu spielenden Note von neuem.
  • In den Frequenzeingang kommt ein Stromsignal, das die gewünschte Tonhöhe angibt, wobei 1 Volt einer Oktave entspricht. Damit es am Ende schönt klingt, muss man diesen Eingang stimmen, so dass z. B. 3 Volt einem C entspricht (das ist einfach) und dann 4 Volt dem nächst höherem C und so weiter (das ist schwierig).
  • Den Regler „Q“, der angibt, wie viel der Filter von seinem Ausgang in den Eingang zurückspielt, wie stark er also in Resonanz ist, stellen wir auf Null. Dafür haben wir einen Stromeingang, der das gleiche einfordert. Und dem geben wir immer dann Strom, während eine Keyboard Taste gedrückt wird. Würden wir das nicht machen, wäre der Filter immer in Resonanz würde ununterbrochen tönen.
  • Unser Filter hat verschiedenen Ausgänge, jeder filtert etwas anders. Wir nutzen den Ausgang „4B“, das ist ein steiler Bandpassfilter, der lässt die gewünschte Frequenz und nur ein bisschen darunter und darunter durch.

So sieht der Filter dann aus:

Und so tönt das Ergebnis: Ganz einfach…

multiconnect

Mein erstes selbst gemachtes Modul ist fertig! Es funktioniert nur als Paar und verbindet zwei Synthesizer miteinander, etwa um den Kabelsalat zu verringern oder zwei fertig verdrahtete Cases einfach zu transportieren. multiconnect ist von dem – leider noch nicht lieferbaren – Modul A180-9  inspiriert und ganz einfach aufgebaut: es überträgt die Signale von einem Modul zum anderen, einige Anschlüsse werden dabei verdreifacht. Das Modul ist passiv, verstärkt die Signale nicht; da diese meist ganz am Anfang der Signalkette (Trigger, Gates) oder knapp vor der Ausgabe stehen, sollte das kein Problem sein.

Zum Bau habe ich drei Anläufe gebraucht, zuerst zwei Prototypen und jetzt das fertige Modul:

  • Erster Prototyp (viertes Bild): das Panel ist auf Anhieb schon recht hübsch geworden, aber alles war um ein paar Millimeter falsch dimensioniert, etwa die Löcher für die Stecker zu gross. Aus Fehlern lernt man! Eine Palatine hatte dieser Prototyp noch nicht, die Stecker sind über Kabel direkt aneinander gelötet.
  • Zweiter Prototyp: das Panel ist nun korrekt auch die Bauteile entsprechen der endgültigen Fassung. Einzig die Platine (siehe fünftes Bild) ist noch nicht final.
  • Final Version (erstes und zweites Bild): Eine eigene Leiterplatte ist schon etwas Schönes! Reduziert das Löten beträchtlich und sieht gut aus. Sowohl die Platine als auch das Frontpanel kann man mit einem speziellen Computerprogramm selbst zeichnen, die Pläne dann dem Hersteller (nach Holland und Deutschland) mailen – eine Woche später und bei überschaubaren Kosten erhält man die massgefertigten Teile zurück.

Test und Endergebnis: Wie man auf dem letzten Bild sieht, überträgt multiconnect auch Audiosignale mit relativ hohen Frequenzen sauber, hier getestet mit einen Signalweg von 1.5 Meter bei 22 kHz.

Drei von Vier

Habe versucht ein Modul zu „verbessern“: drei Änderungen haben geklappt, eine habe ich vermurkst. Zuerst habe ich den falschen Widerstand genommen, 200 anstelle von 200k, dann eben diesen beim rauslöten gebacken. Oh Mann!

Und hier noch ein paar neue „Töne“:

Gleichzeitig

Ich habe zwei Sequencer: der Acid Stepper kann kurze Melodien mit bis zu 256 Noten speichern und abspielen. Den A-155 habe ich eher für die Begleitung vorgesehen, er kann nur 8, dafür komplexere Signale nacheinander abgeben.

Bis gestern konnte ich die beiden zwar dazu bringen gleich schnell zu sein, im Takt zu arbeiten, sie waren aber nicht synchron: während der eine eben begonnen hat, war der andere bereits beim zweiten Ton oder umgekehrt. Das Problem: Zwar kann der Acid Stepper sagen, wann er loslegt, der A-155 springt dann tatsächlich zum ersten Ton, aber spielt ihn nicht, sondern beim nächsten Impuls und dann gleich den zweiten. Nun gäbe es ein Zusatzmodul A-154, das interpretiert das Zurücksetzen (Reset) anders, und springt beim darauffolgenden Impuls zum ersten Ton, aber das Modul habe ich nicht.

Heute und nach vielen Versuchen habe ich dann eine feine Lösung gefunden: Immer wenn der A-155 mit seinen 8 Schritten fertig ist, stoppt er erst mal. Das kann man auf unterschiedliche Arten machen, bei mir triggert der letzte Schritt den Stop-Schalter. Läuft die Melodie, wird ständig und im Takt der Start aktiviert, und alles beginnt von vorne. Ist sie aber fertig, bleibt der A-155 wie gewünscht beim letzten Schritt stehen. Beim nächsten Start kann er direkt und wie gewünscht mit dem Ersten beginnen. Mit dieser kleinen Logik starten die beiden Sequencer – ausser beim allerersten Mal, da muss der eine den letzten Schritt suchen – synchron, und, als Zugabe, schaltet der eine den anderen ein und aus. Das ohne den eigentlich für diese Aufgabe vorgesehenen „Reset“ zu nutzen.

So sieht die Verkabelung aus, und die beiden Signale: Unten in Blau der Acid Stepper, oben in Gelb der A-155:

Erste Software

Habe die Hardware etwas erforscht: im Inneren des simblee ist ein nRF51822 von Nordic, in der dritten Revision, beim RFduino war es die erste. Der nRF51822 ist sehr preisgünstig (3, 4 Franken), dazu kommt noch die Antenne. Der simblee kostet viel mehr, 20 Franken, hat aber schon alles dabei, und ein Bootloader, ein kleines Stück Software auf dem Chip, das beim Programmieren hilft. Auch dadurch ist er sehr gut in Arduino integriert, einem Werkzeug, um Mikrocontroller zu programmieren, das viel von der Komplexität verpackt und versteckt.

Die Programmierung erfolgt in C, wobei eigentlich ist es C++ (dessen Eigenheiten aber kaum genutzt werden), oder besser einem Ardunio-Derivat davon: So sind die Einstiegspunkt die Funktion setup und loop, anstelle des klassischen main, auch hilft Arduino mit praktischen Konstanten und Funktionen. Der Prozess, wie der Code zu etwas maschinenenlesbarem umgewandelt und dann auf den Chip übertragen wird, ist bei Arduino zwar untransparent aber auch einfach.

Ich möchte mich irgendwann davon emanzipieren, also auf dem reinen, preisgünstigen Chip aufbauen und „nur“ die Entwicklungswerkzeuge von Nordic nutzen – aber erst im nächsten Projekt: aktuell bin ich dankbar für die einfache Welt von simblee und Arduino.

Heute habe ich an zwei Bereichen weitergearbeitet:

  • Für den Mac eine Software (in Swift) geschrieben, die alle Bluetooth Geräte in der Umgebung findet, vor allem natürlich die Amulette. Wenn seit dem letzten Advertising mehr als 20 Sekunden vergangen sind, werden sie nicht mehr angezeigt, sonst sauber aufgelistet. Diese Software wird am Ende die Geräte beim Ein- und Ausgang auslesen, die Begegnungen sammeln und visualisieren.
  • Das Amulett mit dieser zentralen Software verknüpft: Um Strom zu sparen begibt es sich für 10 Sekunden in einen Tiefschlaf, dann weckt es sich selbst, sendet 0.3 Sekunden recht intensiv, insgesamt 10 Impulse – und geht wieder schlafen. In diesem Signal (dem sogenannten Advertising) ist auch gleich die Information verpackt, wieviele Begegnungen es seit dem letzten Auslesen gespeichert hat und der Zentrale übermitteln möchte. Gut gefällt mir: Da diese Information bereits beim Advertising mitgegeben wird, erspare ich mir viel Kommunikation. Denn nur wenn wirklich Daten vorhanden sind, muss sich der Mac mit dem Amulett verknüpfen um es auszulesen. Diese Funktion kommt nun als nächstes an die Reihe.

Hardware

Die Hardware ist gekommen: Soweit ich verstanden habe ist simblee (RFD77101) der Nachfolger vom RFduino, von der gleichen Firma gemacht und aktueller: Ich versuche es mit dem. Das Programmieren hat fast auf Anhieb geklappt, ich nutze dafür Arduino und ein USB-Shield, das ursprünglich für den RFduino gedacht war. Ich wollte zuerst meinen eigenen Programmer nutzen (USBTinyISP), aber der hat 5V und der RFD77101 läuft mit 3V.

Für einen ersten Versuch habe ich eine RGB-LED angeschlossen: Der RFD77101 kann nur 5mA Strom und auch nur an 3 Pins ausgeben, das reicht aber knapp. Da mir noch  die passenden Wiederstände fehlen, ist alles noch etwas zu blau, aber immerhin im erlaubten Spannungsbereich. Am Ende möchte ich alle Farben „mischen“ können: ein Prozessor kann zwar kein analoges Signale ausgeben, aber durch einen Trick (PWM, man schaltet den Strom schnell an und aus) und weil LEDs etwas träge sind, kann man variablen Strom, oder in diesem Fall mehr oder weniger von jeder Farbe, doch erzeugen.

Hier der Zwischenstand: zuunterst das Breadboard, mit LED, Wiederständen und Verkabelung, darauf der eigentliche Prozessor und obendrauf das Interface zum Computer. Am Ende wird dann alles schrumpfen und nur der eigentliche Prozessor, die LED, eine Knopfzellenbatterie und etwas Kleinzeug auf einer massgeschneiderten Platine übrig bleiben.

IMG_3584

Mikrocontroller

Meine letzten beiden Projekte habe ich abgeschlossen:

  • Messung der Geschwindigkeit einer Billardkugel
    Zuerst kallibrieren sich eine Zentrale mit Display und drei Aussenstellen, verbunden mit nRF24. Dabei werden die Distanzen der Aussenstellen zueinander ausgemessen und die internen Uhren geeicht. Anschliessend hören sie den Stoss, und bestimmen daraus Position und Geschwindigkeit der Kugeln.
  • Virtuelles Schaufenster
    Wenn man in die Nähe dieses Bluetooth-Gerätes kommt, notifiziert es die zugehörige iOS-App. Diese erkennt die vier LEDs des Gerätes und projiziert eine Augmented Reality in das Kamerabild.

IMG_3529IMG_3546

Beide Projekte nutzen einen ATmega32-Mikroprozessor, mit Arduino-Bootloader, extern getaktet und mit 3V versorgt.

Ein drittes Projekt, Amulett, habe ich gestoppt. Das Ziel des Projektes war – wie der Name schon sagt – ein Amulett, das man sich um den Hals hängen kann. Es versorgt mit einer kleinen Batterie oder Solarzelle den Prozessor und das Bluetooth-Modul im Innern. Alles soll sehr leicht und sparsam sein. Das Amulett kann – mit eingebauten LEDs – in mehreren Farben leuchten und lässt sich über eine App konfigurieren; man kann etwa einstellen, welche „Interessen“ man hat. Ist man in der Nähe eines anderen Amulettes, das von einer Person getragen wird oder an einer speziellen Stelle positioniert ist, leuchten beide Amulette eine kurzen Zeit in der gleichen Farbe. Alle solche Begegnungen können über die App ausgelesen und an einer zentralen Stelle gesammelt und ausgewertet werden. Als Hardware habe ich Simblee versucht. Die Software darauf war fast fertig, aber der (Test-)aufwand für verschiedenen, gleichzeitig aktive Geräten war zu viel für mich.

Es war schön

Heute war der letzte Wandertag, morgen geht es zurück, erst nach Nara, dann in die Schweiz. Ich bin 980 Kilometer gelaufen, an 41 Tagen, habe zudem an 8 pausiert (Schmerzen, Wetter, Hundebiss, Schlafen!). Die durchschnittliche Strecke war mit 24 Kilometer etwa gleich lange wie 2012, da waren es Total 1505 Kilometer, pro Wandertag 23.

Und, wie war es? Ich kennen jetzt Japan ein bisschen besser, und auch mich. Einige Etappen – vor allem am Anfang und bei Regen und am Ende in der Hitze – waren anstrengend. Am Ende war auch etwas Routine dabei, auch Ok.

Letztes Mal war es nicht ganz einfach zurückzukommen: die Zeit draussen, im Wetter, an der Sonne hat mir nach der letzten Wanderung sehr gefehlt. Auch die aufmerksamen, ruhigen Japaner vermisst bestimmt jeder, der sie kennengelernt hat, vielleicht schon in Kloten, am Gepäckband. Am häufigsten zurückdenken werde ich aber bestimmt an die vielen kleinen Dinge: Am Morgen, die ersten Meter laufen, die Blumentöpfe vor den Häusern, die Reisefelder, die Freude, wenn ein Getränkeautomat am Wegrand steht, und auch das Lieblingsgetränk hat. Nach der Wanderung ein heisses Bad. Dann dass gute Essen, die gesellige Stimmung in einem Isakaya.

Danke an meine liebe Frau und brave Familie; danke an die Leserschaft.

R1000445

R1000454

R1000456

IMG_3446