TyCoon Keyboard Interface



Full tracks of Analog-Monster project on YouTube channel Sushonyo Synth Project
Full tracks of Analog-Monster project on SoundCloud channel Analogmonster




Einleitung:

Da das hier ein Keyboard Synthesizer ist, musste ich offensichtlich ein Keyboard Interface entwickeln. Natuerlich wollte ich alle Keyboard Specials des Syrinx haben (LFO 1 - Verhalten bei jedem Tastendruck, LFO 2 - Verhalten bei jedem Tastendruck, Portamento), aber da mein Synthesizergehaeuse eine FATAR-Tastatur beherbergt, entschied ich mich, zusaetzlichen Kram zu implementieren, den das Original nicht vorsieht, da das Keyboard der damals ueblichen Widerstandsketten-Architektur folgt.

Hier eine funktionale Uebersicht meiner Version:
  • Interne CV / GATE - Erzeugung: Wie beim Syrinx
  • Interne Tune COARSE und Tune FINE - Regelung: Wie beim Syrinx
  • Portamento - Zeitregelung: Wie beim Syrinx
  • LFO 1 - Verhalten bei jedem Tastendruck: Wie beim Syrinx
  • LFO 2 - Verhalten bei jedem Tastendruck: Wie beim Syrinx
  • Portamento ON / OFF - Schalter: Neu
  • Key Velocity - Analyse: Neu
  • Key Velocity - Wirkungsregelung: Neu
  • Interne Keybord- oder Externe MIDI System Control - Auswahl: Neu
  • MIDI IN OUT THRU: Neu
Die Implementierung der notenabstandsabhaengigen Portamentoregelung des Originals, welche die Portamentozeit ueber den gesamten Keyboard-Bereich unabhaengig vom Notenabstand gleich haelt, habe ich weggelassen.

Human Interface

  • MASTER TUNE COARSE Regler
  • MASTER TUNE FINE Regler
  • PORTAMENTO Zeitregler
  • VELOCITY Wirkungsregler
    Bestimmt die Auswirkung der Key-Velocity auf das MIDI OUT Noten-Volume.
  • VELOCITY Schalter
    Aktiviert / deaktiviert die Key-Velocity - Analyse. Die Auswahl wird ueber eine LED der schnelleren Uebersicht halber angezeigt.
  • PORTAMENTO Schalter
    Aktiviert / deaktiviert die Portamentofunktion. Die Auswahl wird ueber eine LED der schnelleren Uebersicht halber angezeigt.
  • LFO 1 Verhaltensauswahl
    Wird das Verhalten von LFO 1 bei jedem Tastendruck bestimmen, also ob LFO 1 bei jedem Tastendruck zurueckgesetzt wird, um einen neuen Wellendurchlauf zu starten oder ob er einfach nur durchlaeuft. Das Keyboard-Interface transportiert diese Userentscheidung lediglich auf dem Systembus. Der LFO wird sich drum kuemmern muessen.
  • LED TRIGGER EVENT
    Blinkt bei jedem von Keyboard Control erzeugten Trigger.
  • LFO 2 Verhaltensauswahl
    Wird das Verhalten von LFO 2 bei jedem Tastendruck bestimmen, also ob LFO 2 bei jedem Tastendruck nur einen Wellendurchlauf initiiert oder ob er einfach nur durchlaeuft. Das Keyboard-Interface transportiert diese Userentscheidung lediglich auf dem Systembus. Der LFO wird sich drum kuemmern muessen.
  • LED MIDI OUT
    Blinkt bei jeder ausgehenden MIDI Sequenz. MIDI OUT wird automatisch mit der Auswahl der internen Keyboard basierten Systemkontrolle aktiviert.
  • KBD MIDI System Control Schalter
    Bestimmt, ob der TyCoon vom internen Keyboard oder einem externen MIDI-Datenstrom gesteuert wird.
  • LED MIDI IN
    Blinkt bei jeder eingehenden MIDI Sequenz. MIDI IN wird automatisch mit der Auswahl der externen MIDI basierten Systemkontrolle aktiviert.
  • RESET TRIGGER
    Notfall MPU Reset des Keyboard Interface


Schaltungsbeschreibung


Zum Oeffnen anklicken

MPU

Die MPU wird vom ATmega8535 Microcontroller U9 gesteuert. Die Software wird ueber ein Standard-ISP-Interface J3, r39-r42) hochgeladen. Die 5-polige DIN-Buchse befindet sich an der Geraeterueckseite. Der Controller wird mit dem internen 8 Mhz Oszillator betrieben, der durch das Setzen entsprechender Fuses aktiviert wird. Dadurch konnte ein Quarz weggelassen werden. Die /RESET - Schaltung befindet sich auf der Frontpanel-Platine (siehe unten).

Die FATAR-Keyboard-Haelften werden vom 4051 Decoder (U6) simultan gescant. Die gedrueckten Tastendaten der Keyboard-Haelften werden von den Bus-Transceivern 74652 (U7, U8), welche die Daten zum Datenbus durch Auswahl mittels SELUPPER und SELLOWER transportieren, voneinander isoliert. Die FATAR-Ausgangsleitungen werden von den 100k Widerstaenden r3,r4,r9-r14,r16-r21,r23 auf Masse gezogen.

Die Software erzeugt die interne CV mit dem 12 Bit DAC MCP4821 (U10), der mittels SPI Standard vom Microcontroller als Slave angesteuert wird. Die CV kann vom Opamp U13A, dem 220k Trimmer RV6 (Scale) und dem 100k resistor r59 auf 1V/Oktave - Verhalten normalisiert werden.

Die CV wird zur Frontpanel-Schaltung ueber J7 geschickt, welche das Portamento-Handling (TOPORT, FROMPORT, Spannungsfolger U13D) vornimmt. Das Ergebnis wird mit einem invertierenden DC Mixer zusammen mit den TUNE COARSE - und TUNE FINE - Spannungen sowie einem Null-Abgleich gemixt. Als letztes wird das ganze mit einem weiteren invertierenden Spannungsfolger gepuffert. Die CV wird zusammen mit dem GATE - und TRIGGER - Signal, welche direkt vom Microcontroller per Software erzeugt werden, am System-Bus J9 bereitgestellt.

Die Ausgangsspannungen der Wheels werden ebenfalls direkt auf den Bus gegeben.

Die User-Entscheidungen LFO 1 und 2 bei Tasten-Betaetigungen betreffend werden am System-Bus ohne weitere Verarbeitung oder Interpretation bereitgestellt. Die entsprechenden LFOs muessen sich spaeter um die Verarbeitung kuemmern.

MIDI IN, THRU und OUT sind Standard-Current-Loop - Physik.
Eingehende MIDI IN Sequenzen (J5) werden ueber r1, D1 und dem PC900 Optokoppler U2 opto-isoliert. Das Schmitt-Trigger - Ergebnis wird vom Widerstand r22 und der Open-Collector-Ausgangsstufe des Optokopplers invertiert dem Microcontroller an RXD bereitgestellt.
Zusaetzlich werden die MIDI-Sequenzen ueber den 4050-Buffer U3A und den Current-Loop - Erzeugern r5 und r6 an der MIDI THRU DIN - Buchse (J4) bereitgestellt.
Ausgehende MIDI-Sequenzen werden vom TXD-Pin des Microcontrollers und einem weiteren 4050 Buffer (U3B) mittels r7 und r8 in Current-Loop - Physik gewandelt und ann der DIN Buchse J6 bereitgestellt.

Frontpanel

Die Frontpanel-Schaltung beinhaltet den /RESET - Teil, die PORTAMENTO-Schaltung, alle LED-Treiber sowie die Doppel-Umschalter-Schaltungsanteile mit und ohne Anzeige-LEDs.

Der RESET-Taster entlaedt C16, und /RESET geht runter (RESET wird im Microcontroller ausgefuehrt). Nach dem Loslassen des Tasters wird C16 ueber r30 wieder aufgeladen. D3 schuetzt den /RESET - Eingang des Microcontrollers.

Der PORTAMENTO - Doppel-Umschalter aktiviert LED D7 in ON - Position, und mit der CV vom MCU-Board (J8, FTOPORT) wird C8 ueber das PORTAMENTO-Poti RV4 und r54 entsprechend der CV-Veraenderungen aufgeladen oder entladen. Diese sich ueber die Zeit aendernde CV wird an das MCU-Board ueber J8 FFROMPORT zurueckgegeben.
In OFF - Position ist die LED ausgeschaltet und FTOPORT (Eingang) ist direkt mit FFROMPORT (Ausgang) verbunden.

Die reinen "Entscheidungsschalter" geben lediglich "0" oder "1" (0V oder 5V) ueber entsprechende Widerstaende und ueber die entsprechenden Ausgangsports (FLFO1MOD, FLFO2MOD, FKBDMOD) zurueck.

Der VELOCITY - Doppel-Umschalter aktiviert seine Anzeige-LED D8 und gibt die logische "1" (5V) an FVELOMOD in der On-Position, ansonsten "0" und die LED wird ausgeschaltet.
Das VELOCITY-Poti stellt eine Spannung zwischen 0V und 5V am VELOCITY ADC - Port des Microcontrollers auf dem MCU-Board via FVELOCITY zur Verfuegung. Die Software analysiert die Spannung und uebergibt den Wert an die VELOCITY - Auswirkungsberechnung.

Die FFINE - und FCOARSE - Ports stellen entsprechende Spannungen an den korrespondierenden Ports auf dem MCU Board zur Verfuegung.

Die LED-Treiberschaltungen aktivieren ihre korrespondierenden LEDs ueber entsprechende Widerstaende (r31 - r34), in dem die entsprechenden Transistoren (Q1 - Q4) geoeffnet werden.


Software

TyCoonKBD V1
YouTube



Full tracks of Analog-Monster project on YouTube channel Sushonyo Synth Project
Full tracks of Analog-Monster project on SoundCloud channel Analogmonster


Fragen und Anmerkungen bitte an:
Carsten Toensmann

Home



Link Disclaimer:
Wichtiger Hinweis zu allen Links: Mit Urteil vom 12. Mai 1998 - 312 O 85/98 - "Haftung fuer Links" hat das Landgericht (LG) Hamburg entschieden, dass man durch die Anbringung eines Links, die Inhalte der gelinkten Seite ggf. mit zu verantworten hat. Dies kann - so das LG - nur dadurch verhindert werden, dass man sich ausdruecklich von diesen Inhalten distanziert. Hiermit distanzieren wir uns ausdruecklich von allen Inhalten aller gelinkten Seiten auf unserer Homepage und machen uns diese Inhalte nicht zu eigen. Diese Erklaerung gilt fuer alle auf dieser Website angebrachten Links.

Haftungsausschluss:
Die bereitgestellten Informationen auf dieser Web Site wurden sorgfaeltig geprueft und werden regelmaessig aktualisiert. Jedoch kann keine Garantie dafuer uebernommen werden, dass alle Angaben zu jeder Zeit vollstaendig, richtig und in letzter Aktualitaet dargestellt sind. Dies gilt insbesondere fuer alle Verbindungen ("Links") zu anderen Web Sites, auf die direkt oder indirekt verwiesen wird. Alle Angaben koennen ohne vorherige Ankuendigung ergaenzt, entfernt oder geaendert werden. Alle auf dieser Website genannten Produktnamen, Produktbezeichnungen und Logos sind eingetragene Warenzeichen und Eigentum der jeweiligen Rechteinhaber.

Schematics:
Saemtliche Schaltplaene, Skizzen, Bauplaene und Funktionsbeschreibungen auf den Seiten von www.analog-monster.de/* sind - falls nicht anderweitig gekennzeichnet - Eigentum von Carsten Toensmann und duerfen lediglich fuer private Zwecke genutzt werden. Jegliche Haftung ist ausgeschlossen.