Forum: Mikrocontroller und Digitale Elektronik USB-Midi zu Midi mit AVR/Arduino oder noch einfacher möglich?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Patrick (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

mit diversen preiswerten Midi-Controllern (Korg Nanopad, iCON iPad) per 
USB an den PC angeschlossen lässt sich Midi-taugliche Software wie z.B. 
DJ- und Licht-Kram wunderbar ansteuern.

Leider haben diese Geräte allesamt nur einen USB-Anschluss und keine 
Midi-Buchsen :/ So kann man sie nicht mit anderen Midi-Geräten 
verschalten, die nur richtige Midi-Anschlüsse haben.

Gibt es einen einfachen Weg,
a) durch Eingriff in das Gerät an die Midi-Daten heranzukommen,
b) mit einem AVR oder Arduino die Midi-Daten aus dem USB-Anschluss zu 
bekommen oder
c) notfalls einen kaufbaren Converter, der sowas kann?

Ich habe schon recht lange hier im Forum und per Google gesucht, aber 
nur Leute gefunden, die den umgekehrten Weg gehen wollen. Also Midi per 
USB in den / aus dem Rechner...

Dafür gibt es wohl preiswerte Lösungen - aber vielleicht hat ja jemand 
hier eine Idee, was ich versuchen kann!?

mfg

Patrick

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Patrick schrieb:
> Gibt es einen einfachen Weg,
> a) durch Eingriff in das Gerät an die Midi-Daten heranzukommen,

Nein. Die Signale werden im Custom-Chip generiert und direkt über USB 
ausgegeben. Du wirst keinerlei "echte" MIDI-Signale auf dem Board 
finden.


> b) mit einem AVR oder Arduino die Midi-Daten aus dem USB-Anschluss zu
> bekommen

Wenn Du weisst, was der Controller wann und in welchem Format schickt, 
dann bestimmt.


> c) notfalls einen kaufbaren Converter, der sowas kann?

Nein.

d) kauf Dir einen MIDI-Controller mit echtem MIDI-I/O

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Knut Ballhause schrieb:
> Wenn Du weisst, was der Controller wann und in welchem Format schickt,
> dann bestimmt.

Das sollte ein lösbarer Ansatz sein. Man braucht "nur" einen µC und 
einen USB-Host-Controller und muss dann damit "nur" den grundlegenden 
USB-Host-Stack und die Unterstützung für eine Standardgeräteklasse 
implementieren - nämlich die der MIDI-Geräte.

Mit dem "Vinculum" dürfte das etwas einfacher gehen als mit einem 
einfachen USB-Host-Controller, da hier der Part des USB-Host-Stacks 
bereits im "Vinculum" drin steckt.

Dann muss natürlich noch eine normale MIDI-Schnittstelle an den Aufbau 
gehängt werden, aber das dürfte im Vergleich zum restlichen Aufwand 
einfach sein.

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


Bewertung
0 lesenswert
nicht lesenswert
Das mag interessant sein :
http://www.recursion.jp/avrcdc/

Implementiert einen USB CDC auf einfachen AVRs mit Hilfe von V-USB.
http://www.obdev.at/vusb/

von Εrnst B. (ernst)


Bewertung
0 lesenswert
nicht lesenswert
Matthias Sch. schrieb:
> ... USB CDC ...

Das hilft nicht weiter.
Er will ja "Midi". Genau dafür gibt es:

http://www.usb.org/developers/devclass_docs/midi10.pdf

Das exakt so implementieren (meinetwegen mit V-USB), dann sollte das 
Gerät auch direkt von so ziemlich jedlicher MIDI-Software akzeptiert 
werden.

Aber lohnt das? Ein USB-auf-Midi-Kabel kostet keine 12€...
z.B. DELOCK 61640 bei Reichelt.


Edit: Seh grad, er will es genau andersherum.

Also: USB-Host implementieren (=> "Größeren µC nehmen"), dort das 
Treiber-Gegenstück zum oben verlinkten PDF implementieren, über Serielle 
auf MIDI durchschleifen.

Am einfachsten dürfte das mit einem kleinem ARM-Board (mit Linux drauf) 
gehen.

von Krapao (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Auf dem 26C3 gab es einen Vortrag von Wesen.
Ruin & Wesen MINICOMMAND
http://ruinwesen.com

von Εrnst B. (ernst)


Bewertung
0 lesenswert
nicht lesenswert
Krapao schrieb:
> Auf dem 26C3 gab es einen Vortrag von Wesen.
> Ruin & Wesen MINICOMMAND
> http://ruinwesen.com

s.o.

der TE will aus so einem Gerät nachträglich wieder "Old School"-Midi 
(5-poliger DIN-Stecker usw) machen.

Also sozusagen wieder ein ganzes rohes Ei aus dem Rührei zurückgewinnen.

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Εrnst B✶ schrieb:
> Also: USB-Host implementieren (=> "Größeren µC nehmen"), dort das
> Treiber-Gegenstück zum oben verlinkten PDF implementieren, über Serielle
> auf MIDI durchschleifen.

Genau das habe ich hier 
Beitrag "Re: USB-Midi zu Midi mit AVR/Arduino oder noch einfacher möglich?" beschrieben.

> Am einfachsten dürfte das mit einem kleinem ARM-Board (mit Linux drauf)
> gehen.

Das ist Overkill. Ein Vinculum und irgendein mittlerer AVR sollte dafür 
schon ausreichen.

von Patrick (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hey,

sorry für den späten Dank (und die späte Antwort überhaupt!) Ich war 
mehrfach mit irgendwelchem Mist im Krankenhaus (wenn ihr beim Grillen 
Marinade vom Finger lecken wollt, bitte alles vorher gut durchgaren!) 
und habe noch einen Verein an den Hacken, da lag das Projekt hier auf 
der Halde.

Jetzt bin ich aber wieder dran...

Schade, dass es den Vinculum nur in SMD gibt. Als Vdip1 gleich 25 Euro - 
mal sehen...

Da würde ich ja fast lieber einen Raspberry Pi zum gleichen Preis 
nehmen, der noch ein wenig mehr kann ;) Aber das dauert wohl noch, bis 
ich einen davon mein eigen nennen kann :/

von Patrick (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Was ich mir auch ansehen werde:

 * Beim Makezine macht wohl einer genau, was ich will:
   http://blog.makezine.com/2010/11/30/usbhacking/

 * Es gibt ein passendes Arduino-Shield
   http://www.circuitsathome.com/arduino_usb_host_shield_projects

 * Auf dem Arduino Mega ADK ist ebenfalls ein Host-Controller
   mit drauf - damit könnte man aber auch gleich fein mit dem
   Android rumspielen und noch mehr...
   http://store.arduino.cc/eu/index.php?main_page=product_info&cPath=11&products_id=144

Es bleibt spannend ;)

Danke nochmal für die ganzen Hinweise!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.