Midi funktioniert nicht mit allen Geräten

Gast #5376204
Lesenswert?

Hallo,

ich habe eine MBox2 und einen billigen USB-Midi Adapter hier. Die 
angehängte Midi-Out Schaltung funktioniert mit der MBox2 hervorragend, 
mit dem billigen Adapter jedoch gar nicht.

Woran könnte das liegen? Verbinde ich den Midi-Out der Mbox mit dem 
Midi-In des Adapters funktioniert das ebenfalls, es ist also nichts 
kaputt.

An der Basis des Transistors sehe ich beim Senden das Signal, 2.2V-3.3V. 
Am Collector sehe ich beim Senden auch ein Signal, welches sich jedoch 
nur schwer in Worte fassen lässt.

Tips? R3 auf 1k reduzieren bringt auch nichts. Ich bin etwas ratlos.
Angehängte Dateien:
Gast #5376234
Lesenswert?

Bestimmte billige Midiadapter haben keinen Optokoppler. Die brauchen 
dann direkt 3/5V. Es fließt also kein merklicher Strom gegen GND.

Ich habe aber schon in Billigteilen OKs eingelötet. Die Leiterplatten 
sind meistens dafür ausgelegt.
Gast #5376235
Lesenswert?

Stefan U. schrieb:
> Hast du eventuell einfach
> die beiden Anschlüsse 4 und 5 vertauscht?

Siehe, dass es mit der MBox2 hervorragend funktioniert.

Jens schrieb:
> Bestimmte billige Midiadapter haben keinen Optokoppler. Die brauchen
> dann direkt 3/5V. Es fließt also kein merklicher Strom gegen GND.

Wenn ich den geschmeidig aufmachen könnte, würde ich mal reinschauen. So 
billig scheint der aber nicht zu sein, es ist ein Prodipe.
Gast #5376307
Lesenswert?

Ist das so ein kleines ovales Ding, wo drei Kabel rauskommen - Midi In 
Out und USB?

Wenn ja, dann ist es genau das. Man bekommt die Dinger auf - irgendwie. 
Dann kann man dort einen SMD-OK einlöten und Widerstände.

Was auch geht, ist die Schaltung etwas umzubauen. Den MidiOut 1.3B mit 
220 Ohm direkt an Anschluss 5 ohne Transistor. Anschluss 4 mit 220Ohm 
gegen +5V.  Und GND an Anschluss 2. Dann funktionieren die Adapter auch 
ohne OK. Auch Deine MBox2 wird weiterhin laufen.
Angehängte Dateien:
Gast #5376468
Lesenswert?

Du machst hier aber die Widerstände ja noch größer als meine. Meinem 
Verständnis nach geht in meiner Schaltung mein Transistor voll in die 
SÄttigung, wenn ich 0V an R3 anlege. Dann habe ich 44Ohm 
Strombegrenzung, du hingegen 440Ohm.

Da sollte doch bei meiner garantiert mehr Strom fließen und das Ding 
eher durchschalten?
#5376496
Lesenswert?

Die 220Ω sind der übliche Wert für diese Widerstände, allerdings an 5V. 
Wenn dem murksige Interface(*) der Optokoppler fehlt, braucht es 
womöglich die 5V, um zu funktionieren. Und wie Jens zeigt, wird 
normalerweise auch Pin 5 per Transistor geschaltet und Pin 4 über einen 
Widerstand an die 5V gehängt. Kann gut sein, dass das Ding das auch so 
erwartet. Einem Optokoppler wär's natürlich egal.

* Ich würde so einen Schrott ja einfach entsorgen
Gast #5376586
Lesenswert?

Das geht schon.

Ein Vorwiderstand von 660 Ohm (3 x 220 Ohm) insgesamt schaltet die Led 
im Optokoppler mit 3V und auch mit 5V.

Es soll ja für beide Teile funktionieren.

Wenn kein OK, dann ist Anschluss 5 (nicht 4) direkt an den Eingang (RxD) 
vom uC des Adapters verbunden. 3V reichen aus um 5V Logik zu schalten.
Die Daten müssen also über Anschl. 5 laufen.

Einfach vertauschen geht aber auch nicht. Du müsstest es so umbauen mit 
den Widerständen - das hab ich auch so gemacht und es läuft.
Oder ein zweiter Transistor ....

Am Ausgang TxD von 1.3P wird die meißte Zeit Hi sein. Die "Daten" sind 
dann "Lo-Impulse" und nur wenn TxD (1.3P) Lo ist, soll ein Strom durch 
den OK fließen. Wenn Hi, dann passiert nichts.

Der Adapter aber verlangt das gleiche SIgnal wie Dein 1.3P liefert - 
also muss das durchgegeben werden. Mit einem Transistor allerdings würde 
es invertiert sein, also Lo = Hi und umgekehrt.
Angehängte Dateien:
#5376665
Lesenswert?

Servus,

was ist eigentlich so schwer daran, sich bei der Schaltung an die 
allseits bekannte (notfalls googeln) Standard-Schaltung für den MIDI Out 
zu halten? So kompliziert ist die doch nicht!
Wenn man das macht, muss man nicht rätseln, warum die eigene Kreation 
nicht funktioniert und muss auch nicht auf murksige Interfaces schimpfen 
oder diese gar entsorgen, weil sie dann nämlich mit ziemlicher 
Sicherheit auch funktionieren.
Gast #5376860
Lesenswert?

Thomas E. schrieb:
> Servus,
>
> was ist eigentlich so schwer daran, sich bei der Schaltung an die
> allseits bekannte (notfalls googeln) Standard-Schaltung für den MIDI Out
> zu halten? So kompliziert ist die doch nicht!
> Wenn man das macht, muss man nicht rätseln, warum die eigene Kreation
> nicht funktioniert und muss auch nicht auf murksige Interfaces schimpfen
> oder diese gar entsorgen, weil sie dann nämlich mit ziemlicher
> Sicherheit auch funktionieren.

Sie funktioniert ja scheinbar nur mit dem Gerät nicht, welches sich 
widerum nicht an den Standard hält (Optokoppler am Eingang). Ich kann 
bei der im ersten Post gezeigten Schaltung nichts falsches erkennen, 
denn bei einer "0" schaltet der Transistor durch und es sollte der Strom 
fließen.

Wenn die Gegenseite aber 5V haben möchte und sich nicht an den 
Midi-Standard hält, sehe ich das Problem eher dort.

Vermutlich würde das Interface auch nicht funktionieren, würde man 
direkt an/aus schalten mit 0-3.3V. Eben wegen den 3.3V.
Gast #5377159
Lesenswert?

3,3V schalten - ich glaube schon ab ca. 0,7V sieht der uC (ATM16 z.B.) 
die Sache als Hi.
Und in der Tat, der Adapter ohne OK braucht über Anschluss 5 ein Signal. 
Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5 
dauerhaft an GND liegt. Anschluss 5 geht im Adapter über einen 
Widerstand direkt auf RxD des uC.
Gast #5377207
Lesenswert?

> ich glaube schon ab ca. 0,7V sieht der uC (ATM16 z.B.) die Sache als Hi

Nee, AVR Mikrocontroller wollen 2/3*VCC als High Pegel haben. Mit etwas 
Glück genügen schon knapp mehr als 1/2*VCC. Aber sicher nicht 0,7V. Ich 
kennen auch keinen anderen Mikrocontroller, bei dem das klappen würde.

Vielleicht einem einem Taschenrechner...
Gast #5377309
Lesenswert?

Muss mich korrigieren: ATMega168 schaltet in der Tat erst bei ca. 2,5V 
nach Hi und bei 2V wird er Lo. Ca. Werte !!! Aber bei 3V schaltet er 
sicher. Auch wenn z.B. Wid. 10K zwischen TxD des einen und RxD des 
anderen uC liegen.

>>den Widerstand mal erhöhen?

es muss das Signal anliegen, nicht statisch GND. Siehe meinen Schaltplan 
- habs ja gemacht und es geht.
#5377690
Lesenswert?

Jan schrieb:
> Jens schrieb:
>> Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5
>> dauerhaft an GND liegt
>
> Das stimmt so nicht. 10 Ohm gegen Masse. Evtl. den Widerstand mal
> erhöhen?

Und dann? … kommt dort immer noch kein Signal vom µC an. Das ist 
unabhängig davon, wie hoch der Widerstand ist.

Thomas E. schrieb:
> Wenn man das macht, muss man nicht rätseln, warum die eigene Kreation
> nicht funktioniert und muss auch nicht auf murksige Interfaces schimpfen
> oder diese gar entsorgen, weil sie dann nämlich mit ziemlicher
> Sicherheit auch funktionieren.

Murksige Interfaces entsorgt man, weil sie eben Murks sind. Die bleiben 
Murks, auch wenn sie trotzdem funktionieren sollten. Der Optokoppler 
gehört zu einem vernünftigen MIDI-Interface dazu.
Und nein, das bedeutet nicht, das man dafür dann auf der Gegenseite 
murksen darf. Auch da sollte die Schaltung ordentlich aufgebaut sein.
#5379681
Lesenswert?

Jan schrieb:
> Jens schrieb:
>> Deshalb geht die Anfangsschaltung vom TO nicht, da ja dort Anschl. 5
>> dauerhaft an GND liegt
>
> Das stimmt so nicht. 10 Ohm gegen Masse. Evtl. den Widerstand mal
> erhöhen?

Dein Adapter misst die Spannung an Pin 5 (mit einem hochohmigen 
CMOS-Eingang), und ignoriert Pin 4. Da praktisch kein Strom fließt, ist 
der Spannungsabfall über R4 ungefähr 0 V. Ein größerer Widerstand hilft 
auch nicht.

Für deinen Adapter kannst du MIDI_OUT direkt mit Pin 5 verbinden.

Das funktioniert dann aber nur für diesen Adapter ohne Optokoppler; wenn 
du eventuell auch andere MIDI-Geräte verwenden willst, brauchst du einen 
5-mA-Treiber an Pin 5; siehe MIDI.

Wo kommt dein MIDI_OUT überhaupt her? Wenn der µC 5 mA bereitstellen 
kann, brauchst du keinen Extra-Treiber; andernfalls kannst du auch mit 
zwei Transistoren einen bastelen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren