Thru-Box vs. Geräte-Thru

MIDI-Thru-Box oder lieber Geräte-Thru?

  • MIDI-Thru-Box, weil ... (bitte im Beitrag sachliche Argumente dafür bringen)

  • Geräte-Thru, weil ... (bitte im Beitrag sachliche Argumente dafür bringen)

  • MIDI-Router, weil ... (bitte im Beitrag sachliche Argumente dafür bringen)


Die Ergebnisse sind erst nach der Abstimmung sichtbar.
Kippen zB bei einer Strecke A--B--C--D--E zwischen B und C ein paar Bits, kriegen D und E die Fehler auch.
Ich habe noch nie "kippende Bits" bei MIDI erlebt. Aber zB. ein Kabelbruch wäre hier ein legitimes Argument. (Und MIDI-Kabel sind leider nicht gerade die mechanisch stabilste Sache)
 
Ich habe noch nie "kippende Bits" bei MIDI erlebt.
Gibt es Prüfsummen? Falls nein, ist das, zumindest theorethisch, nicht unmöglich. Zumindest ist es rein statistisch gesehen recht irrelevant, dass du es noch nie erlebt hast. Nicht missverstehen, aber der Mathematiker würde sagen, die Stichprobenmenge ist zu klein. ;-)

Aber bezogen auf die Fragestellung könnte das dann, egal ob mit oder ohne Box, genauso passieren, also ist es irrelevant.
 
Aber zB. ein Kabelbruch wäre hier ein legitimes Argument. (Und MIDI-Kabel sind leider nicht gerade die mechanisch stabilste Sache)
Aber das habe ich tatsächlich auch noch nicht erlebt.

Ich benutze noch Kabel, die hab ich als Teenager mal Mitte der 90er gekauft.
In meiner ganzen Zeit ist mir tatsächlich nur mal ein Teil meiner MIDI-Kette kaputt gegangen, das war so ein.
Monarch MME-80 MIDI-Expander! Was der für ein Problem hatte, habe ich tatsächlich nie rausfinden können!
 
MIDI hat keinerlei Fehlerkorrektur! (mal abgesehen von herstellerspezifischen Implementierungen z.B. bei SysEx-Übertragung von großen Datenmengen)

ich hab es allerdings noch nie erlebt, dass zwischen OUT und IN irgendein Bit gekippt wäre - das funktioniert normal zu 100% (abgesehen von fehlerhafter Hardware/Kabel)

wie gesagt hatte ich auch nur ein einziges Mal Probleme mit einer längeren THRU-Kette...
 
Der Buffer nach dem Optokoppler macht es neu

Prinzip:
MIDI-In Buchse -> Optokoppler -> 74HC14 -> MIDI-Thru Buchse.

Der 74HC14 ist ein Buffer mit Schmitt Trigger: Aus dem kommt ein einsAnigelnagelneues SIgnal raus.

Verstanden?


Die einzige "Verschlechterung", die es geben kann, ist die erwähnte Verzögerung des Signals durch die Slewrate des Optokopplers, die immer noch um ein 100-faches unter der Clockrate der MIDI-Leitung liegt. Wenn Du diese Verschlechterung hörst, dann kannst Du auch in der Mittagspause zum AndromedaNebel fliegen, weil Du in anderen physikalischen Dimensionen lebst.
Das Signal wir nicht schlechter. Es wird nur 10 Nano(!)sekunden später ankommen,.

Die MIDI-Spec hat eine Verschlechterung angenommen (war ja nett von ihnen), aber die Realität hat das widerlegt.

Max hat schon recht. Eine Regenerierung der elektrischen Pegel reicht nicht aus um ein frisches Signal zu machen. Bei der Slew-Rate kommt es halt auf den Opto an. Der z.B. auf Wikipedia gezeigte "6N138" im Midinterface wird offiziell als "Highspeed-Coupler bezeichnet". Der hat lt. Datenblatt je nach Beschaltung und Übergang H->L oder L-H Slew-Raten zwischen 0.1 und 60µs. Es gibt natürlich schnellerer, kommt halt darauf an was im Gerät verbaut wurde. Das größere Problem ist aber die Assymmetrie H-L und L-H Übergängen, die Optos (prinzipbedingt) haben. Beim Durchlaufen des Signals macht der 6N138 z.B. die Low-Pegel etwas länger und die High Pegel etwas kürzer. Und genau das ist das Problem beim Verketten, weil sich die Fehler der Stufen addieren.

Der Ausweg daraus ist es die Daten mit neuem Takt neu zu versenden. D.h. man empfängt die Daten und sendet sie mit ner UART neu raus. In einem kleinen Mikrocontroller könnte man das mit 1 bis zwei Bytezeiten Verzögerung hinbekommen, in einem FPGA reichen vermutlich zwei bis drei Bit Zeiten.
 
  • hilfreich
M.i.a.u.: Max
Komisch, ich kann - anders als ihr - nicht in ein Kabel kucken und kippende Bits sehen (oder positiv sagen, dass ich keine sehe). Ich höre nur, wenn zB aus 'NOTE 50 Aus' irgendwas Undefiniertes wird, was der Synth ignoriert, worauf der Ton stehen bleibt, weil der Aus-Befehl nicht kam ...
:cool:
 
Beim Durchlaufen des Signals macht der 6N138 z.B. die Low-Pegel etwas länger und die High Pegel etwas kürzer. Und genau das ist das Problem beim Verketten, weil sich die Fehler der Stufen addieren.
Na dann rechnen wir mal:
Laut Toshiba Datenblatt
Low High typical 0.2us
High Low typical 1us
jeweils bei einem RL von 270 Ohm (wie in der MIDI-Spec)

Wir machen also immer 0.8us Verlust bei einem Up-and-Down cycle. (real macht man übrigens vermutlich nur 0.4us Verlust, weil ja der Schwellwert wohl bei der Mitte des Anstiegs überschritten wird).

ein 10Bit Wort ist bei MIDI 1ms lang. Sprich 1 Bit ist 100us lang.

Jetzt teilen wir 100us des Bits durch die 0.8us vom Slewrate-Verlust. Das macht,... rechen :denk: rechen :denk: rechen.... Waaahh😱: Schon nach einer MIDI-Thru Kette von 120 Geräten hintereinander ist das MIDI-Signal im Eimer. Oh Oh Oh, ich kriege echt Angst um meine MIDI-Datensicherheit

:rofl:

PS: und im Ernst: selbst beim schlechtesten Wert von 5us Slew-Verlust muss man immer noch 20 Geräte hintereinanderhänge. Da müssen aber dann 20 Geräte maximal schlechte Optokopppler haben.
 
Zuletzt bearbeitet:
Ja, einfache Arithmetik ist immer sehr überzeugend. Danke für die Schilderung.

Aber dann bleiben da noch die Mysterien der (Quanten)physik. Und wer weiß, welche Auswirkungen die Existenz unserer Galaxie innerhalb eines schwarzen Lochs auf die MIDI-Verkabelungen wohl haben mag ...
 
@fanwander ich denke nicht, dass deine Rechnung stimmt...

Erstmal würde ich natürlich den Worst-Case in Betracht ziehen und nicht den typischen Wert, da steht im Datenblatt 10μs bzw. 35μs, also 10x mehr.

Außerdem kannst du nicht einfach die Zeit für ein Bit durch den durchschnittlichen Verlust teilen - was soll dieser Wert aussagen? Das würde ja bedeuten, dass das Signal konstant um genau ein Bit verzögert wird, was überhaupt kein Problem wäre. Das tatsächliche Problem scheint ja das unterschiedliche Verhalten bei 0 und 1 zu sein welches sich ungünstig aufsummiert.

Um genau ausrechnen zu können ab wann es problematisch wird, müsste man wissen bei welcher Abweichung ein serieller Empfänger aus dem Takt gerät, und ich bin mir sicher das ist schon wesentlich früher als bei "genau einem Bit Verzögerung".
 
Erstmal würde ich natürlich den Worst-Case in Betracht ziehen
Damit der Worstcase relevant für die Berechnung ist, müssten alle(!!!) Geräte in der Thru-Kette Optokoppler von katastrophaler Qualität haben. Das Ist aber sicher nicht der Fall. Genausowenig wie alle Optikoppler den perfekten minimalen Wert haben werden. Genau dafür sind Durchschnittswerte da, dass man sich nicht um die extremwerte kümmern muss. Die Extremwerte dürften nur nicht über der Impulsdauer des Nutzsignals liegen.


Und wie ich schrieb: selbst wenn alle Geräte Katastrophal schlecht wären, müsste man trotzdem 20 Geräte verketten, damit die Verkürzung der Impulse durch die unterschiedlichen Slewrates zum Tragen kommen.

Das würde ja bedeuten, dass das Signal konstant um genau ein Bit verzögert wird,
Falsch. Es wird nichts verzögert bzw die Verzögerung ist irrelevant. Das Problem ist, oder besser: wäre die Verkürzung der High-Zustände: Wenn die Anstiegsslewrate länger als die Abfall-Slewrate ist, und das Signal danach durch einen Schmitt-Trigger geht, dann werden die High Zustände kürzer. Wenn das Signal mehrfach durch solche Stufen geht, werden die High-Zustände mit jeder Stufe kürzer und kürzer, um irgendwann komplett nur noch einen Zustand zu kennen: Low.

Das kann man übrigens hübsch mit einer AD-Hüllkurve und einem Komparator-Modul simulieren.


PS:
Tatsächlich ist das MIDI-Signal übrigens invertiert, also der untätige Zustand ist High.
Zudem habe ich noch nie die einzelnen Bits als symmetrische Rechteckimpulse gesehen, vielmehr sind sie typischerweise (negative) Nadelimpulse mit einer Tastrelation von 1:99. Das bedeutet, für unser Problem, dass wir vermutlich nicht nur 120 Thru-Stufen hintereinander hängen können, sondern vermutlich um die 5000 bis 8000...
 
Zuletzt bearbeitet:
Falsch. Es wird nichts verzögert bzw die Verzögerung ist irrelevant.

Ganz genau, deswegen ja Konjunktiv - "würde"! Du gehst in deiner Berechnung von einer konstanten Verkürzung aus, was mMn nach nicht stimmt, das wollte ich damit sagen - ein und der selbe Optokoppler wird sich immer leicht unterschiedlich verhalten und auch der Übergang Low-High wird ja auch etwas verzögert. Und dass die Probleme dann bei einem Verlust von genau einem Bit anfangen würden (Konjunktiv!) klingt für mich auch eher zweifelhaft, je nach UART wird das denk ich schon deutlich früher aus dem Rhythmus kommen. Ich weiß auch nicht wie man es richtig rechnet, aber es ist mit Sicherheit komplizierter als die Länge von einem Bit einfach durch die durchschnittliche Verzögerung zu teilen. Und selbst wenn eine MIDI-Kette "im Durchschnitt" bis zu 120 oder sogar 5000 bis 8000 Geräte (really?) enthalten kann, kann man doch alle paar Tausend Noten durchaus mal Pech haben und es verhält sich so ungünstig, dass die serielle Kommunikation aus dem Takt gerät (was sich auch mit meiner praktischen Erfahrung deckt - funktioniert meistens, aber ab und zu dann halt auch mal nicht).

Wie dem auch, sei, ich will mich weder streiten noch dich in deinem MIDI-Weltbild irritieren sondern geh jetzt auf eine schöne Radlermaß in den Biergarten 🍺

Wenn dir mal langweilig ist, kannst du ja mal ausprobieren, wie lange du eine MIDI-Kette bauen kannst, die auch bei stundenlangem Betrieb keinen einzigen Fehler macht. Ich weiß aus eigener Erfahrung, dass ich bei ca. einer Handvoll Geräten gelegentliche Hänger bekommen habe, von daher ist mein persönliches Limit ca. 3 - was auch Konsens im Internet zu sein scheint. Vielleicht sind auch nur bestimmte (ältere?) Geräte betroffen, keine Ahnung, aber so völlig aus der Luft gegriffen ist das Problem doch sicher auch nicht oder meinst du die haben das in die MIDI Spec geschrieben ohne den Fehler ein einziges Mal "in echt" gesehen zu haben?
 
Tatsächlich ist das MIDI-Signal übrigens invertiert, also der untätige Zustand ist High.

Natürlich, wie jedes UART Signal.
Zudem habe ich noch nie die einzelnen Bits als symmetrische Rechteckimpulse gesehen, vielmehr sind sie typischerweise (negative) Nadelimpulse mit einer Tastrelation von 1:99. Das bedeutet, für unser Problem, dass wir vermutlich nicht nur 120 Thru-Stufen hintereinander hängen können, sondern vermutlich um die 5000 bis 8000...
Dann miss nochmal. Bei UART ist ein Bit kein Rechteckimpluls sondern entweder Low oder High für die gesamte Bitzeit.
ein 10Bit Wort ist bei MIDI 1ms lang. Sprich 1 Bit ist 100us lang.
Nein 31250 Baud -> 1 Bit ist genau 32µs lang. Wenn man nun weis, das eine UART asynchron abtasten muss dann: Fast alle Uarts verwenden einen 16x höheren Abtasttakt als die Baudrate. D.h. von 32µs Fenster verliert man durch die Abtastquantisierung schon 2µs bis die UART erst mal den Start erkannt hat. Dann wird je nach UART an ein bis drei Zeitpunkten innerhalb der 32µs der Pegel gemessen und daraus das Bit berechnet. Typischerweise in der Mitte. D.h. effektiv bleiben etwa 16µs Sicherheitspuffer übrig, die sich die Flanken verschieben dürfen. Dazu kommt dann eventuell noch eine Taktabweichung zwischen Sender und Empfänger

Bei der Berechnung muss man natürlich den Worst-Case betrachen. Man will ja nicht, das es "im Durchschnitt" funktioniert, sondern immer. Wenn ich unseren Kunden erzählen würde das ne SPS durchschnittlich mit 1ms Zyklus läuft, es manchmal aber auch 10ms dauer könnt, dann würden die mir aber ziemlich in den Hintern treten.
 
Habe für Midi Router gestimmt .
Sämtliche Hardware läuft bei mir über 2x Mio XL's ( ca 10 Synths , 2 Sequenzer , 1x Drummcomputer und 3 Effektgeräte )
Noch NIE Probleme gehabt !!!
Ich kann mir gar kein anderes Arbeiten mit Midi mehr vorstellen .
Mio XL kompliziert ??? Nee einfacher geht es kaum : über das jetzt sehr gute auracle so einfach einzustellen !!!
Extrem flexibel und easy zu routen = Routing Optionen anklicken ... evtl. Filteroptionen anklicken ... preset speichern und Namen vergeben ... Fertig . Computer bleibt aus ... presets direkt an den Mio's auswählen .
Einfacher geht es kaum ( Einarbeitungszeit ca 1 Std und nie wieder anleitung lesen weil fast alles selbsterklärend ist ... rtp midi nutze ich nicht , das mag etwas mehr Einarbeitungszeit benötigen )
die iConnect Geräte tun wohl auch was sie sollen, Konfiguration soll aber sehr umständlich sein was man hier so liest
 
ein und der selbe Optokoppler wird sich immer leicht unterschiedlich verhalten
Nein. Er wird sich im messbaren Dimensionen gleich verhalten.
Wenn dir mal langweilig ist, kannst du ja mal ausprobieren, wie lange du eine MIDI-Kette bauen kannst, die auch bei stundenlangem Betrieb keinen einzigen Fehler macht.
Hab ich. Mir war nicht langweilig. Ich habe Geld dafür bekommen Studioverkabelungen mit 20 oder30 MIDI-steuer/editierbaren Effektgeräten in einer Thru-Kette zu haben (ich hab auch die Switches für die Outs der Effekte selbst gebaut), und da kam nie eine Beschwerde.

Kann sein, dass Deine Erfahrung so ist. Meine ist definitiv anders. Meine Erfahrung ist, dass Leute mit MIDI-Problemen eigentlich immer ganz andere technische Problem haben.
 
Kann sein, dass Deine Erfahrung so ist. Meine ist definitiv anders. Meine Erfahrung ist, dass Leute mit MIDI-Problemen eigentlich immer ganz andere technische Problem haben.
Das deckt sich mit meinen Erfahrungen. Ich finde es auch faszinierend, wie lange sich das MIDI-Protokoll schon am Markt behauptet!
 
@fanwander deine Art zu kommunizieren passt mittlerweile ganz gut zu deinem Profilbild - Quatsch. Falsch. Nein. :opa:

@amesser hat es find ich gut erklärt: die Zeit für ein Bit ist nicht 100µs sondern nur 1 / 31250 s = 32µs, und das ist sogar noch weniger als die maximal spezifizierte Zeit L->H beim Toshiba 6N138. Davon muss man fairerweise noch die Zeit H->L mit 10μs abziehen, denn interessant ist ja nur die Differenz und von mir aus kann man die Zeit auch noch halbieren bis der Schmitt-Trigger anschlägt. Der 6N139 ist noch deutlich besser, aber auch in der selben Größenordnung. Kann ja gut sein, dass man mit hochwertigem Equipment mit High-Speed Optokopplern lange Ketten bauen kann wie du das erfolgreich getan hast, aber vermutlich war auch etwas Glück dabei.

Du deutest ja an dass ich bei meiner geschilderten Erfahrung "ganz andere technische Probleme" hatte, aber ich kann dir versichern dass jedes Gerät in kürzeren Ketten einwandfrei funktioniert hat - ebenso mit einer Thru-Box.

Dein Punkt mit den "Nadelimpulsen" und den "vermutlich 5000 bis 8000" Geräten in einer Kette ist - wie ebenfalls von @amesser schon angesprochen - auch komplett falsch: bei einem UART bleibt der Wert LOW bzw. HIGH für die gesamte Bit-Zeit und ggf. auch länger solange sich nichts ändert, also auch wenn 3x hintereinander LOW kommt bleibt der Wert einfach LOW.

So sieht das dann aus (ziemlich stumpfe Nadeln wären das):

1659648478621.png
 
So, jetzt haben wir hier also ein Patt (in Form von 9 Stimmen für die Box und genauso vielen für den Rouuter) und mal wieder ein vorläufiges Ergebnis, dass anscheinend aussagt, dass kleinere Setups (Box) genauso im Einsatz sind, wie größere (Router). Na, wenn das nicht der Tenor vieler Threads ist ... ;-)

Zusammenfassend kann man vielleicht sagen "Thru-Box ist OK", möchte man es aber programmierbar haben oder flexibler, vielleicht auch wegen eines größeren Setups, dann ergibt ein Router mehr Sinn, da man sich viel Arbeit sparen kann. Dafür greift man naturgemäß tiefer in die Tasche.

Erfahrungen mit einzelnen Routern (Pro / Contra) wären noch gern gesehen (auch wenn eine Person schon etwas dazu geschrieben hat).
 
Ich nutze gern Thru-Boxen, die sind für mein simples Hirn genau das Richtige.

Früher hatte ich mal einen Doepfer MS-404, und der kam mit dem Signal aus einer Thru-Box nicht klar (mehrere Modelle ausprobiert). Das war ein absolut reproduzierbares Problem (das keins mehr war, als ich es erkannt hatte: Ich hab ihn einfach VOR die Thru-Box-gesetzt -schlau, nicht?).
Woran könnte das gelegen haben? Falls diese Frage in die Fachdiskussion passt...

Schöne Grüße
Bert
 
@SynthGate wenn dir 8x In/Out für's erste reichen, kann ich dir eine MOTU MIDI Express XT empfehlen. Das ist gleichzeitig MIDI-Interface für den PC und funktioniert aber auch als Standalone-Router. Die Konfigurations-Software für den Standalone-Betrieb ist sicher nicht das gelbe vom User-Experience-Ei, funktioniert aber soweit und macht was sie soll. Ich hatte die jahrelang und hat immer einwandfrei funktioniert.

Oder halt eine von den aktuellen iConnectivity MIO's, wenn man nur eine über USB hat scheint es ja ganz gut zu funktionieren. Beim Betrieb von mehreren über LAN/RTP scheint's aber hässlich zu werden mit der Konfiguration, aber ich hab selbst noch keine unter den Fingern gehabt, da können andere sicher mehr berichten (bzw. Forensuche benutzen, war hier schon öfter Thema)

Früher hatte ich mal einen Doepfer MS-404, und der kam mit dem Signal aus einer Thru-Box nicht klar (mehrere Modelle ausprobiert). Das war ein absolut reproduzierbares Problem (das keins mehr war, als ich es erkannt hatte: Ich hab ihn einfach VOR die Thru-Box-gesetzt -schlau, nicht?).
Woran könnte das gelegen haben? Falls diese Frage in die Fachdiskussion passt...

Waren es MIDI Solutions Boxen? Die machen wohl öfter Probleme, weil sie unerlaubterweise die Stromversorgung aus der MIDI-Leitung abzapfen... Bei mir haben sie bis jetzt immer funktioniert und dass sie kein Netzteil brauchen ist natürlich praktisch, aber manche Geräte kommen damit wohl nicht klar.
 
@Max Ja, danke für den Tipp. Werde ich mir definitiv merken (bzw. dank des Forums nicht merken müssen :) ).

Für den Augenblick werde ich mir eine weitere Thru-Box anschaffen, so komplex ist mein Setup bisher noch nicht, dass ich da nicht durchsteigen würde. Ich möchte aber schon NUR die Geräte laufen haben, die ich auch tatsächlich gerade benutze. Mittelfristig wird es dann vermutlich auch noch ein Router werden, aber vorerst wohl nicht.
 
Waren es MIDI Solutions Boxen? Die machen wohl öfter Probleme, weil sie unerlaubterweise die Stromversorgung aus der MIDI-Leitung abzapfen... Bei mir haben sie bis jetzt immer funktioniert und dass sie kein Netzteil brauchen ist natürlich praktisch, aber manche Geräte kommen damit wohl nicht klar.

Die Frage ist ja nicht nur, welches Gerät geht damit und welches nicht.
Die Frage ist doch: was passiert dann?
Dann fängst du an Kabel zu prüfen, alles auseinander zu nehmen, die Geräte einzeln zu prüfen - aber an die midi solutions Kiste denkst du nicht, die „hat ja immer funktioniert“.

Bei mir war es so, dass das Midi solutions Teil lange funktioniert hat, und dann irgendwann, mitten auf Tour, nicht mehr.
Einfach abgeraucht. Klar geht Equipment auch mal kaputt. Aber bei so Dingern, die ohnehin außerhalb der Protokoll Spezifikation laufen, weißt du dann halt nicht, was passiert.

Ich rate ab.
 
  • Daumen hoch
M.i.a.u.: Max
Mit Geräte-Thru habe ich schlechte Erfahrungen gemacht, von Lags über nicht gesendeten Daten bis hin zu Geräteabstürzen mit MIDI-Data-Error. Aktuell benutze ich überhautp kein Thru und habe alle Geräte direkt an MIDI-Interfaces angeschlossen, die teilweise auch ohne Computer funktionieren.
 
  • Daumen hoch
M.i.a.u.: Max
So, ich habe mir nochmals die Features vom Blokas MIDIHub angesehen. Im Vergleich zu einer normalen Thru-Box, kann das Teil einiges mehr, auch PolyChaining (inkl. Round-Robin), was mit persönlich nicht ganz unwichtig ist. Außerdem ist die Editor-Software für sämtliche Platformen verfügbar, selbsr Raspi. So wie es momentan aussieht, wird wohl das MIDIHub gegenüber einer Thru-Box gewinnen, insbesondere, da es auch als Router fungieren kann und immerhin 8 Konfigurationen onboard speichern kann.

Hat jemand Erfahrungen damit bzw. kennt Vor-/Nachteile gegenüber den genannten Routern?
 
ich nutze für midiumaschltereien das hier - es ist noch nie ein bit abgesoffen.
schnell schaltbar, leicht eingerichtet, schnell umschaltbar, Schaltpresets abspeicherbar
alles wunderbar - nur unser midigott mag den nicht.


1661341419671.png
 


News

Zurück
Oben