Forum: Mikrocontroller und Digitale Elektronik MIDI Controller für Verstärker


von Busy B. (busy)


Lesenswert?

Moin Zusammen

Ich baue mir gerade eine Steuerung der Presets und Controll Changes für 
einen Gitarrenverstärker.

Als MIDI Footcontroller habe ich das FX1 von Axess Electronics (gibts 
leider nicht mehr daher keinen Support).

Die Steuerung für jeweilige Kanäle usw. habe ich fertig was noch fehlt 
ist die Übertragung der MIDI Befehle.

Hier ist das Problem. Ich hatte das Gefühl das mein Controller die 
ankommenden Daten nicht versteht also habe ich einen Serial Monitor 
mitlaufen lassen um zu sehen welche Befehle ich erhalte. Num muss ich 
feststellen, dass nur lauter FF also 255 von meinem Microcontoller 
empfangen werden und nicht zB. C3 05 für MIDI Channel 4 Kanal 6.

Das FX1 funktioniert mir mit anderen MIDI Endgeräten einwandfrei.

Kennt einer so ein Problem und kann mir helfen?

von Andreas H. (ahz)


Lesenswert?

Busy Burningmaier schrieb:
> Kennt einer so ein Problem und kann mir helfen?

Klingt nach dem "Üblichen" ;-)

Entweder ist Dein Midi Interface an Deinem Controller buggy oder Deine 
Software hat noch ein Problem.

Mess doch mal, wie das Signal am RX Pin des Controllers ankommt.

/regards
Andreas

von Busy B. (busy)


Lesenswert?

OK Ich bin relativ neu in der Welt der Contoller daher weiß ich nicht 
genau was ich messen soll. Daher alles was ich mir vorstellen konnte:
U 4,86V
I in Ruhe 6,7 uA
I beim Empfangen 5,4uA
Alles mit vorgeschalteten 220 Ohm

von MIDIMAN (Gast)


Lesenswert?

Soweit ich mich errinere, sind diese 255er irgendwelche regelmässigen 
Zeitsignale.

von Clemens L. (c_l)


Lesenswert?

Nein, FF ist Reset (und wird in der Praxis nicht verwendet). Clock wäre 
F8; Active Sensing FE.

Alle Bits gesetzt sieht aus wie keine Signal. Wobei ich mich dann frage, 
wieso das Start-Bit erkannt wurde; könnte aber auch ein Software-Problem 
sein.

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Busy Burningmaier schrieb:
> also habe ich einen Serial Monitor
> mitlaufen lassen um zu sehen welche Befehle ich erhalte.

Was für ein Teil ist denn das?
Kann man sich darauf verlassen?
Ist das rein passiv (hochohmig)?
Werden damit bei anderen Midi-Verbindungen die korrekten Bytes 
angezeigt?
Hast Du ein Oszi mit Decoder oder einen Logik-Analysator (SALEAE CLONE)?

: Bearbeitet durch User
von Andreas H. (ahz)


Lesenswert?

Poste doch mal den Schaltplan

Grüsse
Andreas

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Clemens L. schrieb:
> Wobei ich mich dann frage,
> wieso das Start-Bit erkannt wurde; könnte aber auch ein Software-Problem
> sein.

Wahrscheinlich stimmt die Baudrate nicht. Mit 16Mhz oder 8 Mhz Takt am 
MC kriegt man die 31250 bit/s genau hin:
8000000 / 256 = 31250

von Busy B. (busy)


Lesenswert?

Vielen Dank für die vielen Medlungen.
Ich habe durch einen Zufall eine Lösung gefunden, die zwar nicht schön 
funktioniert aber:
Es kommen ja zwei Signale vom Footcontroller eins +5V und eins +5V mit 
den Befehlen. Die beiden sollen eigentliche auf einen Optokoppler. Die 
Schaltung hatte ich bislang aber nicht zum laufen gebrach (nach 
elektrikal specification von MIDI.org). Deswegen hatte ich nur das 
Signal mit den MIDI befehlen über 220 Ohm in RX. Zufällig bin ich mit 
dem zweiten 5V auf GRD gekommen und da hat alles funktioniert.

@ Torsten C.

Ich habe das ganze auf der Arduino Plattform aufgebaut und eine 
vorgefertigte MIDI Lib. verwendet. Die Lib schickt alles ankommende THRU 
nach TX von da habe ich das über USB an PC und mit Serial Moitor mir 
angeschaut:
http://www.com-port-monitoring.com/portmonitor.html

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Busy Burningmaier schrieb:
> Die Lib schickt alles ankommende THRU nach TX

Du hast also nicht den Midi-Datenstrom angesehen, sondern das, was Dein 
Arduino daraus gemacht hat.

Damit vermischst Du zwei Fehlerquellen:

a) Das Midi-Signal

b) den Empfang des Midi-Signals durch den Arduino


Mit anderen Worten: Du weißt zwar, daß was schiefgeht, aber nicht wo und 
also auch nicht warum.

von Andreas H. (ahz)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Du weißt zwar, daß was schiefgeht, aber nicht wo und
> also auch nicht warum.

n1 :-)

Ich sag ja: SCHALTPLAN pls.

Grüße
Andreas

von Busy B. (busy)


Lesenswert?

Ich hab noch keinen Schaltplan angefertig. Wie oben beschrieben gehe ich 
momentan mit dem MIDI Signal über 220 Ohm direkt in RX. Die andren 5V 
lege ich auf GRD.
Funktioniert soweit aber das Ziel sollte sein den Schaltkreis nach MIDI 
Spezifikation aufzubauen. Wie hier:
http://www.midi.org/techspecs/electrispec.php

Warum ich das nicht ans laufen bekomme weiß ich nicht ist ja quasi 
stecken nach Zahlen. Als Optokoppler nehme ich den Sharp PC-900.

@Rufus:
Zum Messen der Datenströme habe ich nicht die erforderlichen Mittel.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Busy Burningmaier schrieb:
> Zum Messen der Datenströme habe ich nicht die erforderlichen Mittel.

Das kann eine simple LED mit 220 Ohm Vorwiederstand sein, du sieht die 
LED bei Daten blitzen.
> http://www.midi.org/techspecs/electrispec.php
Du weisst, das alle Gatter in der Schaltung Inverter sind? 'To UART' 
heisst, das du dort dann direkt den AVR anschliesst.

: Bearbeitet durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Busy Burningmaier schrieb:
> Wie oben beschrieben gehe ich momentan mit dem MIDI Signal über 220 Ohm
> direkt in RX. Die andren 5V lege ich auf GRD.

Das hast Du nicht "beschrieben", eine "Beschreibung" ist Deine wirre 
Darstellung da oben jedenfalls nicht.

Mal 'nen Schaltplan.

> Zum Messen der Datenströme habe ich nicht die erforderlichen Mittel.

Dann hilft Dein "Selbstbetrug" aber auch nicht, weil Du damit den Fehler 
nicht eingrenzen kannst.

von Michael X. (Firma: vyuxc) (der-michl)


Lesenswert?

Midi ist eine 20mA Stromschleife. Wo hast du die µA gemessen?

von Busy B. (busy)


Lesenswert?

Mit einer LED kann ich aber nicht die Daten auslesen. Die zeigt mir nur 
an ob was rein kommt oder nicht. Den Rest weiß ich.

Es gibt kein Schaltplan. Mit nem Serial Monitor die ankommenden Daten 
lesen und dann manuel auswerten ist für mich kein Selbstbetrug sonder 
eher pragmatisch.

Gemessen hatte ich, als das MIDI Signal noch nicht angekommen ist, 
vieleicht habe ich am Wochenende etwas Zeit das noch mal im momentanen 
Zustand zu messen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.