Problem beim MIDI umschalten

  • Ersteller joe_fisch
  • Erstellt am
joe_fisch
joe_fisch
Registrierter Benutzer
Zuletzt hier
26.12.20
Registriert
12.02.08
Beiträge
79
Kekse
300
Ort
München
Servus an alle!
Ich bin etwas ratlos. Aber zunächst kurz zu meinem Projekt: Ich modifiziere meine MIDI-Fußliste FCB1010. Dabei erweitere ich das Gerät um zwei Sachen: Eine USB-Schnittstelle und zusätzliche MIDI-Funktionen. Zweiteres mache ich mittels Arduino. [Ich möchte u.a. die Pedale nicht nur auf einem MIDI-Kanal haben, sondern mehrere Geräte auf unterschiedlichen Kanälen manipulieren...]
Um die Fußleiste AUCH über USB zugänglich zu machen, muss ich zwischen den normalen MIDI-Anschlüssen und dem USB/MIDI-Converter hin und herschalten. Hier eine schematische Darstellung...(Relais sind gegen die Norm als nicht geschaltet dargestellt.) Schema.jpg
Wenn ich jetzt die MIDI-Anschlüsse überprüfen will habe ich ein Problem. Es kommen falsche Daten raus. :confused: Direkt an den FCB-Ausgängen sehe ich die richtigen MIDI-messages. Gehe ich einen Schritt weiter und lasse das Signal noch meinen Umschalter passieren (also am Gehäuse geguckt) kommt konfuses Zeug raus. Das was MIDIOx "sieht", habe ich als kleinen Screenshot:
MIDISignal.jpg
Ich habe mit'm Multimeter durchgepiepst und alles scheint in Ordnung zu sein. "MIDI source" und MIDI sink" (ich nehme an man nennt das so) sind korrekt verdrahtet, es bestehen keine ungewollten Kontakte... So müsste es stimmen. Laut MIDIOx stimmt's nicht. Ganz komisch es es, dass mein Effektgerät (Digitech GSP 1101) das Signal aus der Gehäuse-Buchse völlig richtig interpretiert. Das heißt, es schaltet und waltet so wie ich mir das vorstelle.
Hier noch ein paar Bilder meiner Bauten:
20140319_125136.jpg 20140319_125104.jpg 20140319_124850.jpg 20140319_124912.jpg
Ich hätte nicht gedacht, dass durch einen simplen "Umschalter" (Relais) solche Probleme entstehen. fange ich mir Einstreuungen ein oder was ist das? Warum kommen meine Daten nicht unverändert durch? Hat jemand eine Idee? Ich möchte nämlich auch andersrum Sysex in die MIDI-Leiste geben und die werden wie ich vermute auch gestört...

Falls jemand hilfreiche Gedanken dazu hat wäre ich sehr dankbar wenn solche hier gepostet werden. :)
Gruß,
Joe
 
Eigenschaft
 

Anhänge

  • Schema.jpg
    Schema.jpg
    72,4 KB · Aufrufe: 454
Gedanken:
* Wenn ich dein Schaltbild sehe: Midi Out wird in der Regel an einen Midi In angeschlossen und nicht die Midi Ins verkabelt bzw die Outs
* Hast du beide Signaladern der Midi Signale umgeschaltet? Kennst du die Schaltung? Midi ist eine Stromschleife (zumindest tut die so, als ob).

die Midi Hardware ist hier beschrieben (etwa Mitte der Seite). Signal: 220 Ohm von V+ im Sender zum Pin, im Empfänger nochmals 220 Ohm in Reihe zur Optokoppler LED (die Diode in Gegenrichtung ist nur Schutz, falls ei nKabel verpolt ist), im Sender (Rückweg) nochmals 220 Ohm in Reihe zum Ausgang des Treiberbausteins. Der Treiberbaustein kann ein normales Gatter sein oder Open Collector.

Gruß
Christoph
 
Danke für die Antwort. Bei meinem Schema hat sich tatsächlich ein Fehler eingeschlichen. Allerdings nur beim USB/MIDI-Converter. Da werde ich gleich die Grafik korrigieren (siehe unten). Beim Gehäuse war alles korrekt, denn es handelt sich hier ja nur um eine "Verlängerung" aus dem Geräteinneren nach draußen. Zum besseren Kenntlichmachen habe ich "Beschriftung" in die Grafik eingefügt. Bei der tatsächlichen Verkabelung habe ich mich schon mehrfach vergewissert dass alles richtig angelötet ist.

Zum Technischen: Zumindest weiß ich im Groben wie MIDI übertragen wird. Meine Herangehensweise war die, dass ich "nur ein Stückchen mehr Kabel einfüge"... entweder geht das Kabel "hier lang" oder durch das Relais umgeschaltet "dort lang". Ich füge keine praxisrelevanten Widerstände noch andere Bauteile hinzu. Deswegen habe ich erwartet dass es funktioniert... Was verändert schon ein Relais im Signalweg außer eventuell Einstreuungen?!? *amKopfkratz* :gruebel:

Natürlich habe ich auch nicht nur ein Kabel pro MIDI-Signal über das Relais geschaltet sondern parallel "source" und "sink" - dabei habe ich mich auch versichert, dass jeweils das Richtige ankommt. Im Falle von MIDI Out also beides zum Gehäuse oder beides zum USB/MIDI-Converter. [Das Effektgerät GSP1101 versteht ja auch den "Gehäuse-Ausgang"]

Was übersehe ich nur?
Schema.jpg
 
Ich steige bei deiner Zeichnung nicht wirklich durch, ist etwas seltsam gezeichnet und zerstückelt. Aber einmal dahingestellt was es ist, grobes Problem von dem ich ausgehe ist, du willst alternativ zwei Slaves an einen Master schalten, sowohl IN wie OUT. Gehe weiterhin davon aus das du weißt das ein MIDI OUT immer auf einen MIDI IN muß. Das ein MIDI-Kabel immer zwei Adern hat, die Datensignal führen (Stromschleife) - Option die Dritte für den Schirm, der aber nur auf einer Seite auf GND aufliegen muß. Ein einfachers Relais mit einem Umschaltkontakt genügt daher nicht. Es muß ein doppelter Kontakt sein mit zwei Umschaltern bzw. zwei Schliessern. Der FCB1010 hat nur einen einfachen Relaiskontakt an den Buchsen (3 Pins an der Klinke). Da müßte man demnach extern ein Relais nachrüsten (Leistung egal), das aus diesem gesteuert wird, und dann zwei Umschalter bereitstellt. An deiner Zeichnung ist zuerst einmal IN mit OUT vertauscht, das bitte drehen, konnte das kaum erkenen bei der schlechten Farbwahl. Hier noch eine Skizze die ich noch gezeichnet habe, sollte das Prinzip wie es funktioniert zeigen. Das mußt du aber zweimal aufbauen, hast ja zwei Kreise. Hat das Relais z.B. 9VDC muß eben 9VDC als Spannungsversorgung zur Verfügung stehen (üblicherweise 30...70mA je Relais).

MIDI-Umschalter.png

Gruß Wolfgang
 
Ha, es freut mich erst ein mal dass eurerseits Hilfe angeboten wird. Danke!

Bei deiner Zeichnung, Wolfgang, herrscht für mich wiederum Chaos. :)
Mit deinem Relais würdest du in einem Schaltzustand den "positiven Datenpol" ( MIDI source ) von MIDI A und von MIDI B gleichzeitig auf MIDI Common geben. Nach dem Umschalten des Relais würden die beiden "negativen Datenpole" ( MIDI sink ) auf MIDI Common gehen.

Ich kann guten Gewissens deine genannten Fehlerquellen ausschließen. Ich weiß:
- dass MIDI Out auf MIDI In geht
- dass für MIDI zwei Signalleiter nötig sind. (Stichwort Stromschleife)
- dass somit ein einfaches Wechselrelais nicht reicht, sondern für jedes MIDI-Signal zwei Wechsler erforderlich sind

Die Beschriftung ist im Schema (2. Post meinerseits) korrekt. Das FCB1010 generiert ein MIDI-Befehl und gibt den aus "MIDI Out" raus, das geht durch das Relais geht an die "MIDI-Out"-Buchse am Gehäuse. Bis dahin ist's ja nur eine Verlängerung vom Inneren nach draußen.
Wenn ich ein Kabel an "MIDI-In" vom Gehäuse stecke, wird das einfach nur verlängert und an den MIDI-In vom Arduino gegeben.

Da ich mich erst einmal auf's Wesentliche konzentrieren wollte, hatte ich manche Verbindungen blass dargestellt und die wichtigen im knalligen Orange. Gut, ich habe mal alles in knalligen Farben gehalten...
Schema.jpg

Meine Relais (2 doppelte Wechsler) werden vom +5V aus der USB-Verbindung geschaltet. Sobald ich das USB-Kabel einstecke, ziehen die Relais an und die Kommunikation geht nicht mehr über die Gehäuse-MIDI-Buchsen, sondern lediglich über das USB-Modul...
 
Zuletzt bearbeitet:
Ihr mögt diesen Doppelpost verzeihen, aber dies sind "breaking news". Ich habe mein USB-MIDI-Adapter mal genauer angeguckt, aufgemacht und feststellen müssen, dass kein Optokoppler eingebaut war. Vielleicht nicht schlimm, hier aber schon. Wahrscheinlich war das Problem eine Massenschleife. Den Adapter habe ich dann wie auf dieser Seite beschrieben modifiziert und siehe da, es klappt.

(Für diejenigen, die wirklich genau hinschauen und sich wundern: Im Post 1 zu sehende Bilder zeigen einen anderen USB-MIDI-Adapter als jetzt zum Testen genutzt. Der Adapter ist inzwischen schon draußen und wird dann durch den jetzt modifizierten Adapter ersetzt.)

Es klappt. Danke für die angebotene Hilfe und investierte Zeit.

Gruß, Joe
 
Super wenn es nun funktioniert. Wären immer etwas genauere Eckdaten interessant, muß man immer viel raten. Vieleicht ist auch das der Reiz der Sache :)
An der Schaltung hatte ich einen Fehler gezeichnet. Richtig gedacht, falsch gezeichnet, danke für den Hinweis, habe es umgezeichnet. Ist nur ein Umschalter der beide Pole umschalten kann. Korregierte Version:
MIDI-Umschalter.png
Die Umgebaute Schaltung der MIDI-IN ist schon besser, ist aber auch nicht korrekt. Wenn man es richtig nach Spezifikationen macht, um sich keine Probleme einzufangen sollte man es mit zwei 220R-Widerständen, einer Schutzdiode gegen Verpolung (z.B. 1N4148) umbauen. Die 330R sind auch wieder nur eine halbherzige Lösung des Problems. Die älteren baugleichen Adaper hatten noch alles richtig gemacht, dort war ein richtiger DIL-Prozessor, ein echter Optokoppler, und ein echter TTL-Treiber vorhanden. Die neueren fielen wohl dem Sparstift zum Opfer auf Kosten der Betriebssicherheit. Man bekommt eben was man bezahlt wie es scheint.

Gruß Wolfgang
 
Deine Zeichnung ist jetzt fast das Schaltbild, was ich (doppelt) aufgebaut habe. Nur die Spannung zum Anziehen der Relais habe ich vom USB-Port, aber das schrieb ich ja bereits. Was würdest du dir noch für Informationen wünschen? Ich gebe gerne Auskunft über alles. Ich hatte einige Sachen extra vereinfacht oder als nicht relevant eingestuft da es sonst das Thema und die Problematik sprengen würde...

Allerdings verstehe ich deine Kritik an der Modifikation auf der verlinkten Seite nicht - die Schusselei mit den 330 Ohm und fehlenden Optokoppler sind doch somit ausgemerzt. Der einzige Schönheitsfehler ist die nicht eingesetzte Diode. Ansonsten stimmt zumindest der MIDI In so mit den aus MIDI.org veröffentlichen Spezifikationen überein: einem 220 Ohm Widerstand in Serie. (Du erwähntest zwei 220 Ohm Widerstände, das müsste aber beim Through und Out so sein.)

Oh, habe gerade deine Homepage entdeckt - :eek: öhm, *Hut-zieh*
 
Kritik sollte es in dem Sinne keine sein. Nur ein nachdenkliches Kommentar zu der Sparerei der Hersteller um jeden Preis, und die Folgen die daraus entstehen. Als Notlösung kann man das schon mal machen, aber nicht wenn man es im Verbund und stabilen Kriterien haben will.

Willst du das eigentlich alles in den FCB1010 verfrachten? Hatte etwas ähnliches mal gemacht, allerdings neuen besorgt, leergeräumt und eigene Hard/Software entwickelt. Brauchte nur ein schönes Metall-Gehäuse für meinen Live-Sequencer. Netterweise kann man die MIDI-Buchsen beibehalten, auch wenn man die Hauptplatine herauswirft. Hat man auch gleich den Optokoppler auf der Platine. Daher vieleicht eine Idee, da es eigentlich an der TTL-Seite aufgetrennt ist, die ganzen Optokoppler einfach zu sparen, und die Umschaltung per Logik zu realisieren. Dann fallen die ganzen Relais und mehrfachen Wandlungen MIDI/TTL weg. In Ruhe hat MIDI an TTL-Seite immer High. Der Arduino übrigens ebenso an TXD der UART. Passt also alles sehr gut zusammen. Ein Ansatz wären CMOS-Multiplexer vom Typ CD4051, CD4052, MOS4053 und die TTL-kompatiblen Derivate dazu. Du mußt dann nur noch die TTL-Signale umschalten, keine Stromschleifen mehr, was das Ganze deutlich verringern würde. Umschaltung per IO-Pins am Arduino ist sehr ideal, auch per Schalter oder sonstigem. Zudem kannst du auf die Datenleitungen im TTL-Bereich auch gleich an IO-Pins des Arduino "Sonden" legen, damit du dir Pausen detektieren kannst, die den besten Umschaltpunkt darstellen. Mitten im Datenpaket umschalten ist bei MIDI nicht besonders schön, daher die Idee.

Gruß Wolfgang
 
Achso, ich dachte du kritisierst du Modifizierung. Das "Sparprodukt" kann man von mir aus sehr gern kritisieren. :)

Habe schon entdeckt dass du ein neues MIDI-Board ins FCB1010-Gehäuse gebaut hast - finde ich auch interessant. Leider bin ich auf diesen Gebieten Laie und schlage mich mit meinem Schul-Physik-Wissen durch. Alles andere wird mühselig nachgelesen... - deswegen auch die (vielleicht Steinzeit-)Lösung mit Relais. An sich ist schon alles vorhanden und im umlackierten FCB drin (siehe Bilder erster Post). An solche Luxusprobleme, wie während eines MIDI-Befehls umzuschalten, habe ich nicht gedacht. Das ist für mich auch nicht praxisrelevant. Der USB-Port wird hauptsächlich genutzt, um mit Sysex die Fußleiste zu programmieren (und vielleicht später um eine DAW zu steuern). Man steckt das USB-Kabel ja auch nicht ein, wenn man g'rad auf den Tastern rumtritt... Bei einem professionellen Gerät, gebe ich zu, muss sowas beachtet werden.

Gruß, Joe
 
Hier noch die Schaltung, falls es dich oder andere hier in späteren Projekten einmal interessiert, wie man es digital auf TTL-Ebene schalten kann. Habe das Versucht etwas universell zu zeichen das es auch funktioniert. Ist eben mit 4 Teilnehmern anstatt 2, dachte ich nehme einfach den anderen, geht aber auch auf 2. Kann man sich zusammenwursteln wie man es will.

MIDI_IO_Switch4x2.png

Habe da noch in der Schublade gekramt, und einen USB-Adapter der Sorte fotografiert der ca. 2 Jahre alt ist. Da hatten die den Optokoppler und die Diode samt dem 220R-Widerstand noch verbaut.

MIDIUSB2.jpg

So sollte das eigentlich ab Werk aussehen. Das einzigste was da weggespart wurde, ist der Ausgangstreiber mittels zweier Transistoren, die nicht bestückt wurden in PNP/NPN.

Grundregel ist eh immer: Hauptsache es funktioniert wie man es will ;)

Gruß Wolfgang
 

Ähnliche Themen


Unser weiteres Online-Angebot:
Bassic.de · Deejayforum.de · Sequencer.de · Clavio.de · Guitarworld.de · Recording.de

Musiker-Board Logo
Zurück
Oben