ReVox A700
Audiovisualizer

Dieses Projekt wurde für die ReVox A700 Bandmaschine entwickelt, kann aber auch allgemein eingesetzt werden.

Überblick

Projektziel

Ersatz des analogen VU-Meters der ReVox A700 Bandmaschine durch ein Mikrocontroller gesteuertes TFT-Display.

Anzeige

Simulation der analogen Anzeige, eine digitale Anzeige mit RMS & PPM, eine Spektrum-Analyse und ein Goniometer mit Korrelationsanzeige.

Einstellungen

Design und Funktionalität aller Modi sind durch eine Konfigurationssoftware fein einstellbar und persistent.

Bedienbarkeit

Alle Modi und viele weitere Einstellungen sind per Display-Menü und einer IR-Fernbedienung erreichbar.

Hans-Volker hat mir freundlicherweise einige Bilder und ein Video seiner ReVox A700 Bandmaschine überlassen, die ich hier zeigen möchte. Herzlichen Dank dafür!

Das originale Zeigerinstrument passt zwar perfekt zum Design der Maschine, ist aber in vielen Maschinen dem Zahn der Zeit zum Opfer gefallen und defekt. Es ist teilweise sehr schwierig, dieses Instrument zu reparieren, wenn es denn überhaupt möglich ist.

Einige Tüftler haben sich bereits dieser Situation angenommen und eine Lösung parat. Der bekannteste Ersatz für das Zeigerinstrument dürfte wohl die Lösung von revox-online sein. Herr Schröder geht den Weg, das Instrument so gut wie möglich mittels LEDs auf einer schönen Skala nachzubilden. Das sieht gut aus und vereint Authentizität mit moderner Technik. Man kann dieses Produkt im Online-Shop des Anbieters erwerben und selbst auf sehr einfache Weise selbst einbauen.

Ein anderer Anbieter geht in die Richtung, die wir auch bevorzugen, den Einbau eines TFT-Displays. Genesis-Audioline bietet ein passendes Modul zum Einbau an. Durch die verwendete Displaygröße ist es bei dieser Lösung notwendig, die Aussparung in der Frontblende zu vergrößern. Laut der Produktbilder haben die Anzeigen Ähnlichkeit mit dem EVOR04 Modul des Bulgarischen Anbieters SR LOGICS Co.. Ob dem so ist, wissen wir nicht genau.

Das hier vorgestellte Projekt dient als Anleitung zum Selbstbau und verwendet handelsübliche Komponenten, wie z.B. ein 3,2″ oder 2,8″ Display, einen Teensy 4.x Mikrocontroller und das daraufhin abgestimmte I2S Audioshield. Die Bauteilkosten belaufen sich auf ca. 50€, je nachdem, wo die Komponenten gekauft werden. Die verwendete Software, sowohl für den Mikrocontroller. Der Einbau setzt auch hier gewisse Kenntnisse und Fähigkeiten voraus, benötigt aber keine Umbauarbeiten an der Frontblende der Maschine.

Benötigte Komponenten

Teensy 4.0 oder 4.1

Ich empfehle für dieses Projekt den Teensy 4.0, da er durch seine kleinere Bauform gegenüber dem Teensy 4.1 besser auf die Audioplatine passt und alle Komponenten enthält, die für dieses Projekt gebraucht werden. Die CPU ist mit der CPU des Teensy 4.1 identisch und arbeitet mit der gleichen Geschwindigkeit.

Alle Daten und Pin-Belegungen gibt es direkt beim Hersteller. Dort werden auch PDF-Dateien zum Download angeboten.

Teensy Audio Adaptor Board (Rev. D)

Das Audio Adaptor Board ist ein wesentlicher Bestandteil des Projekts, denn auf dem Board befindet sich der I2S-Audiocodec SGTL5000. Er ist für die komplette Audiosignal-Verarbeitung zuständig. Das Board mit der Revision D wurde ausschließlich für den Teensy 4.0 und den Teensy 4.1 hergestellt.

*Wenn ein Teensy 4.1 auf das Audio Adaptor Board gesetzt wird, steht ein Stück über. Die benutzen Pins stimmen aber mit dem Teensy 4.0 überein.

Display-Empfehlungen

Es ist auch möglich, andere Displays einzusetzen. Das Display muss drei Kriterien erfüllen:

  1. SPI-Interface;
  2. ILI9341 Displaycontroller;
  3. 320x240 Pixel Auflösung;

Ob das Display einen Touchscreen hat, ist nicht relevant. Es lassen sich sowohl Displays mit- oder ohne Touchscreen verwenden. Allen Displays mit ILI9341 Controllern ist gemein, dass sie eine maximale Auflösung von 240 Pixeln in der Breite und 320 Pixeln in der Höhe haben. Das reicht für den Einsatzzweck aus und auch die Software ist dafür ausgelegt. Die meines Wissens nach größte Diagonale bei dieser Art Displays beträgt 3,2″. Wer viel Zeit hat, kann auch direkt bei den bekannten Plattformen der chinesischen Anbieter bestellen, die Preise dort liegen deutlich unter den deutschen Angeboten, dafür ist die Lieferzeit verhältnismäßig lang. Eine Suche im Internet nach „ILI9341 SPI 3.2“ sollte einige Möglichkeiten zum Kauf bringen.

Wer etwas ganz Besonders sucht, findet bei Adafruit ein hervorragendes Display mit eigenem RAM-Puffer und vielen Anschlussmöglichkeiten. Dieses Display hat außerdem die Möglichkeit, die Hintergrundbeleuchtung via PWM ohne Zusatzkomponenten zu steuern.

IR-Sensor

Der IR-Sensor wird benötigt, um die einzelnen Module, einige Modi und das Display-Menü des Visualizers mit einer IR-Fernbedienung bedienen zu können. Bei eBay und Amazon gibt es Komplettangebote aus Fernbedienung und IR-Sensor. Ich rate allerdings davon ab, den meistens mitgelieferten IR-Sensor VS1838B zu verwenden, sondern auf ein Markenprodukt von Vishay, wie z.B. den TSOP 4838 zu setzen! In diesem Projekt wird nicht die Standard-Bibliothek für IR-Sensoren benutzt, sondern eine deutlich schnellere Methode, die speziell an das Projekt angepasst wurde. Darum neigen die chinesischen Modelle bei dieser Anwendung teilweise zum Erzeugen von Impulsfolgen, die nicht sicher auswertbar sind. Beim erwähnten Vishay Modell ist dieser Effekt nicht zu beobachten. Theoretisch sollten die anderen hier aufgeführten 38KHz Modelle auch funktionieren, getestet wurde allerdings nur der TSOP 4838.

Als Fernbedienungen eignen sich viele verschiede Modelle, die über das RC5-Protokoll auf einer Trägerfrequenz von 38KHz senden. Einige, sich bereits im Haushalt befindliche Modelle sollten auch funktionieren, ein Versuch mit Hilfe der Konfigurationssoftware bringt schnell Klarheit. Leider kann ich nicht alle Modelle und alle Protokolle bedienen, darunter würde das gesamte Timing beim Zusammenspiel aller Komponenten leiden. Darum gibt es die angepasste Methode für RC5 und 38KHz in der Software.

Diese und ähnliche Modelle sollten problemlos funktionieren:

DC/DC-Wandler (optional)

Obwohl die CPU des Teensy 4.x und die meisten verwendeten Komponenten nicht 5V tolerant sind und mit einer maximalen Spannung von 3,3V arbeiten, möchte ich dennoch einen galvanisch getrennten 5V DC/DC-Wandler (Step-Down Regler) für die Spannungsversorgung vorschlagen.

Die Versorgungsspannung des Teensy 4.x Moduls beträgt über einen USB-Anschluss 5V. Es gibt dann diverse Spannungsregler (auf dem Teensy, auf dem Audio Board und auf dem Display), die die benötigten internen Spannungen erzeugen. Also kann man für alle Komponenten zusammen eine möglichst stabile und im besten Fall galvanisch getrennte 5V Spannung einspeisen. Es gibt recht kleine, galvanisch getrennte DC/DC-Wandler, die sich hervorragend eignen und einen weiten Eingangsspannungsbereich zulassen. Das ist wichtig, um in der Maschine selbst, nicht nur die vorhandenen 5V benutzen zu müssen.

Typische Vertreter dieser DC/DC-Wandler sind z.B.:

Die Links zur Beschaffung der Komponenten stellen eine kleine Auswahl deutscher Anbieter dar und sind unverbindlich. Sowohl der Preis, als auch die Verfügbarkeit kann sich jederzeit ändern. Auch bei eBay gibt es viele Angebote, eine Suche lohnt sich dort immer.

Komponente / BauteilAmazonReichelt ElektronikBerryBaseEckstein KomponenteAntratek
1 PJRC Teensy 4.0LINK1, LINK2LINK1LINK1, LINK2LINK1, LINK2LINK1, LINK2
2 Audio Adaptor Board (Rev. D)LINK1LINK1LINK1LINK1LINK1
optional: TFT-Display (2,8″)LINK1, LINK2
3 TFT-Display (3,2″)
optional: Adafruit Display (3,2″)LINK1
4 IR-SensorLINK1LINK1

Das Desktop-Konfigurationsprogramm dient der komfortablen Einstellung aller Parameter, der Positionen, Betriebsmodi und aller Farben. Der Audio Visualizer muss dabei mit einem USB-Kabel mit dem Computer verbunden sein und das Desktop-Konfigurationsprogramm muss den gleichen Versionsstand haben, wie die Teensy-Firmware. Eine Installation ist nicht nötig, die Software wird nur an eine beliebige Stelle entpackt und gestartet. Es werden keine Registry-Einträge erzeugt.

Nach dem Start des Programms erscheinen einige Informationen im unteren Log-Bereich. Auf der linken Seite gibt es Status- und eventuelle Fehlermeldungen des Programms, rechts die Statusmeldungen und Antworten des verbundenen Teensy Mikrocontrollers. Ein Symbol im mittleren Bereich zeigt, ob der Controller über USB verbunden ist oder nicht.

Bei allen Modulen sind folgende Einstellungen immer verfügbar (sofern anzeigbar): Displaydrehung, Offset der Anzeigeposition (Korrektur um 26px), Farben für jedes Element im Display, Höhe der Balkensegmente, Ballistik und Colorwheel.

VU/PPM

Das digitale Anzeigeinstrument stellt die Anzeigen für RMS und PPM zur Verfügung und beinhaltet auch eine Korrelationsanzeige. Die PPM-Anzeige kann in den Einstellungen abgeschaltet werden. Der Anzeigebereich geht von -40dB bis 6dB und ist umschaltbar zu -30dB bis 6dB.

Die Peak-Anzeige ist zwischen einem verzögerten Rücklauf und einer Hold-Funktion umschaltbar.

Analoge Anzeige

Die analoge Anzeige entspricht im Wesentlichen der originalen mechanischen Anzeige der Bandmaschine ReVox A700.

Es sind drei Ansichten verfügbar: hell, dunkel und warm. Die Zeiger bestehen aus drei parallelen Linien und können farblich angepasst werden. Außerdem ist die Schaltschwelle der PEAK-LED Anzeige einstellbar. Der Anzeigebereich geht von ca. -25dB bis 3dB, die Schaltschwelle der PEAK-LED Anzeige kann von 0 bis 6dB eingestellt werden. Die PEAK-LED Anzeige leuchtet bei einer Spitze über dem eingestellten Wert und wird über eine einstellbare Zeit gehalten.

Spectrum-Analyzer

Dieses Modul stellt das Frequenzspektrum in Form von Balken dar. Der Anzeigebereich geht bis 20 KHz und wird im unteren Bereich nur von der Lieferfähigkeit des Audiochips begrenzt. Für die Aufarbeitung des Spektrums wird eine FFT1024 verwendet.

Es gibt mehrere Ansichten:

  1. Baumansicht: beide Stereokanäle werden vertikal links und rechts angezeigt;
  2. Horizontal: beide Stereokanäle werden untereinander horizontal angezeigt;
  3. Beide: beide Stereokanäle werden summiert und vertikal angezeigt;

Der Anzeigebereich PPM/RMS ist auswählbar und geht von -40dB bis 6dB und ist umschaltbar zu -30dB bis 6dB.

Die Peak-Anzeige ist zwischen einem verzögerten Rücklauf, einer Hold-Funktion über den gesamten Zeitraum und einer 4 Sekunden Hold-Anzeige umschaltbar.

Goniometer

Das Goniometer stellt den Korrelationsgrad zwischen den Stereokanälen grafisch dar und darunter auch als Balkenansicht.

Die grafische Darstellung wird aus den Audiosamples der beiden Kanäle gebildet und kann zwischen 512 und 2048 Samples eingestellt werden. Daraus ergibt sich eine mehr oder weniger dichte „Pixelwolke“. Es ist möglich, statt der Pixel, Linien darzustellen. Dabei werden die letzten Pixelkoordinaten mit den aktuellen Koordinaten verbunden. Bei einer geringen Samplerate kann dadurch die Darstellung deutlicher werden. Die Farbe der Pixel oder Linien ist frei definierbar.

Die Darstellung und das Verhalten der wahlweisen PPM/RMS Anzeige kann analog zum Spectrum-Analyzer eingestellt werden.

Fernbedienung

Die wichtigsten Funktionen des Audio-Visualizers können mit einer Infrarot-Fernbedienung beeinflusst werden.

Es stehen einige gängige Modelle zur Auswahl und zwei komplett selbst definierbare Fernbedienungen. Auch bei den voreingestellten Fernbedienungen lassen sich die übertragenen Codes und die Tastenzuordnung ändern und können abgespeichert werden. Beim Druck auf eine Taste der Fernbedienung wird im rechten Bereich der Konfigurationsseite der übertragene Code angezeigt, der sich via Maus in den linken Bereich ziehen lässt. Wird kein übertragener Code angezeigt, ist die verwendete Fernbedienung nicht kompatibel zu diesem Projekt.

Snap!

Es ist möglich, einen Live-Abzug des momentanen Displayinhaltes anzufertigen. Dabei wird jedes Pixel des Displays zur Konfigurationssoftware übertragen und daraus ein Bild generiert. Dieses Bild kann mittels Zoom-Regler oder mit dem Maus-Scrollrad vergrößert und verkleinert werden. Das Bild lässt sich auf den PC speichern. Empfohlen wird das .PNG Format (ohne Komprimierungsartefakte).

Kalibrierung

Der verwendete I2S-Audiocodec SGTL5000 kann eventuell kleine Differenzen in der Signalaufbereitung der einzelnen Kanäle haben. Kompensieren kann man dies durch den Einbau von eingangsseitigen Trimmpotenziometern oder über das Konfigurationsprogramm selbst. Beide Kanäle und separat auch PPM/RMS können zwischen +/- 1dB korrigiert werden. Der Korrekturfaktor kann im Controller persistiert werden und ist dann dauerhaft verfügbar. Der momentane Messwert wird zur Konfigurationssoftware übertragen und mit Balken oder Linien (umschaltbar) dargestellt. In diesem Modus ist im Display ein deutlich sichtbarer Rand zu sehen, der darauf hinweist, das ein Datentransfer zur Software erfolgt. Die Balkenanzeige/Linienanzeige dient nur zur Kalibrierung und erhebt keinen Anspruch auf ein genormtes Anzeigeinstrument! Auch die Ballistik ist ausschließlich zur Kalibrierung geeignet. Die besten Ergebnisse bei der Kalibrierung erreicht man durch die Einspeisung eines möglichst genauen und konstanten Sinussignals bekannter Größe.

Da die Konfigurationssoftware für Microsoft Windows entwickelt wurde, läuft sie ab WIndows 7 (64Bit). Das heisst aber nicht, dass Mac-Benutzer sie nicht benutzen können! In einer virtuellen Umgebung (VMWare oder VirtualBox) funktioniert alles einwandfrei.

Windows 10, virtualisiert mit VMWare Fusion unter macOS Catalina:

Windows 7, virtualisiert mit VMWare Fusion unter macOS Catalina:

Windows Server 2019 Evaluation-Version, virtualisiert mit VirtualBox unter macOS Catalina, Kalibrierung mit Audiosignal:


*In meinem GitHub-Repo gibt es immer die aktuellste Version zum Download.