Ich verwende MIDI mit dem klassischen MIDI-Trio, um unterschiedliche Controller und Steuergeräte miteinander zu verbinden. Gesteuert wird Audio, PA und Licht. In der jüngeren Zeit ist es allerdings so, dass viele Controller-Geräte keinen klassischen MIDI-Ausgang und vor allem kein Through mehr haben, sodass Ich grosse Probleme bekomme, moderne Geräte ins Setup einzuklinken. Das Verknüpfen über USB-Hubs ist leider oft nicht möglich, weil die Endgeräte nur ein Gerät erkennen oder akzeptieren bzw keine echte host-Funktion haben oder es am Strom scheitert. Ich möchte daher eine programmierbare Platform, an die ich 4 oder mehr USB-Geräte anschließen und selber mappen kann. Das heisst, das USB-Protokoll umsetzen, die Befehle auf Kanäle verteilen und das feedback oder inquiries vom host Rückverteilen und den Controllern zuleiten, je nachdem, wer gesendet hat. Im Prinzip ist es ein Internet-Router für USB, wobei der host nur ein einziges Gerät sehen soll. Das Ummappen hat auch den Zweck, die Bedeutung der Befehle zu ändern: Bei den üblichen launch-Pads bin ich oft auf die programmierte Funktion festgelegt, die ich nicht schnell ändern kann. Die Setups müssen erst vom PC runter geladen werden, was erneuten USB-Stress macht. Schaltet man die Settings an machen Geräten um, wie z.B. an meinem Akai MPC, dann werden gleich mehrere Funktionen geändert und Geräte fehlgeschaltet. Obendrein sind die Launch-Pads teuer und haben wenige Tasten. Daher würde Ich gerne ganz normale Keyboards benutzen und die Tasten in Bereiche gruppieren und zweckentfremden. Eine Tabelle soll dann einfach definieren, welche Befehlssequenz gesendet werden soll, wenn eine bestimmte Taste betätigt wird. Die Sequenzen bestehen idealerweise aus bis zu 24 MIDI-Befehlen, was mir sehr viele Tasten sparen würde, weil Ich dann mit einer Taste ein komplettes Lampensetup weiterschalten könnte. Ich habe schon bei UCAPPS geschaut, aber da ist nichts derartiges zu finden. Kennt einer zufällig so ein Projekt oder ein System, mit dem man das aufziehen kann?
Das meiste deines Postings verstehe ich leider nicht. Wie wäre es denn, wenn du dir einfach ein USB Midi-Interface mit mehr als 1 In/Out kaufst? z.B. MOTU MIDI Express 128 (hat 8 Ein-/Ausgänge). Oder iConnectivity mio10 (10x In/Out).
:
Bearbeitet durch User
Hallo Joe, solche Gerätschaften wie 8x8 habe ich haj, aber die verarbeiten nur echte MIDI-Geräte mit den bekannten 3 Buchsen. Heutige Controller haben die kaum noch, sondern gehen über USB direkt in den PC. Ich brauche aber ersten so viele von den Geräten, dass es schwer wird, die über USB Hubs zu mischen. Oft werden die Geräte nicht mehr erkannt und es geht gar nichts. Wenn sie erkannt werden, geht früher oder später etwas schief. Daher dachte ich mir, einen intelligenten USB-hub zu nutzen, den man programmieren kann, um gleich noch zwei andere Dinge zu tun: 1) Ich möchte die Daten ausmaskieren, um das von von manchen Problemcontrollern kommt, zu blocken. 2) Ich möchte die Funktionen dahingehend erweitern, dass ein "Press On" eines einzelnen Gerätes nicht nur ein MIDI on sendet, sondern eine ganze Sequenz abspielt, um ein Gerät zu konfigurieren. Von den bekannten MIDI-Programmen her geht das mit SYSEX, aber ich möchte und kann das nicht automatisieren. Ich möchte idealerweise EINE Taste drücken und es werden mehrere Geräte per MIDI umgeschaltet. Das ginge von PC aus, aber auch dann muss der die USB MIDI Daten alle kriegen. Daher dachte Ich, man könnte es gleich in einer externen Hardware reinstecken und auf den PC verzichten. Leider sind Masterkeyboards otf nicht umfangreich genug, um andere zu kaskadieren und solchen Umfang auszuführen. Es wäre also so, dass ich einen intelligenten Prozessor habe, der von mehreren USB-Kanälen die MIDI-Daten empfängt und diese über eine Tabelle übersetzt und dann einfach abspielt, was in der Tabelle drin steht.
Ich habe mal ein Beispiel gemacht mit der Annahme von 8 USB-Eingängen, die alle mit einem 61-Tasten-Keyboard versorgt werden. Der Controller im Gerät (Hub?) müsste wissen, auf welchem Kanal welche Taste kommt und dann handeln. Konkret müsste er z.B. 32 MIDI-Ausgänge bedienen: Fall 1: Alle MIDI Daten vom Input 1 auf den Ausgang 3: If Event.InputKanalNumber = 1 then Ausgang3 := CurrentEvent Fall 2: Die Taste 3 des Keyboards auf Input 2 schaltet Lampen 2-4 If Event.InputKanalNumber = 1 AND Event.ToneNumber = 3 then { for L = 2 to 3 SentMidiEvent (Ausgang3, Lamp2On); SentMidiEvent (Ausgang3, Lamp3On); SentMidiEvent (Ausgang3, Lamp4On); end loop } Es wird also ein Programm durchgerattert, das eine vorprogrammierte Folge ausgeben kann. Mir würde es reichen, das fest compiliert zu haben.
USB ist auf der Host-Seite sehr komplex. Etwas fertiges gibt es nicht; am nächsten käme noch der Kenton MIDI USB Host, das MIDI-Anschlüsse für ein USB-Gerät bereitstellt. Ich würde es mit einem Raspberry Pi (oder einem ähnlichen Linux-System mit USB-Host-Unterstützung) versuchen. Für Linux gibt es dann Software, mit der man sich so etwas basteln kann (z.B. mididings, midish).
Das habe ich befürchtet. Ich werde mich mal nach einer solche Linix APP umsehen. Im Technoforum wurde eine Software dafür empfohlen. Kann mehrere Devices, kostet aber 499,- und ist nicht frei einstellbar.
Oder man kauft halt nur Controller, die noch echtes MIDI sprechen. Wenn das nicht geht, versuchen, im USB-MIDI-Controller MIDI-Daten abzugreifen und da einen Treiber und eine Buchse dranbauen. Wenn das auch nicht geht, die Platine 'rausbauen und was eigenes einbauen, also nur die Hardware des Herstellers verwenden. Das wird allemal günstiger und schneller gehen, als ein komplettes Host-System zu entwickeln.
:
Bearbeitet durch User
So einfach ist das sicher nicht, eine HW rauszuschmeissen. Ich will mich ja eigentlich nur filternd dazwischenhängen.
Hier sind nochmal zwei solche Kandidaten: ICON i-ConPad und the i-creativ IR controller. Die haben beide USb, sind auch USB-powered und so ohne weiteres nicht gemeinsam oder mit anderen zu verwenden. Selbst ein PC mit mehreren USB-ports kommt da oft nicht mir klar.
Gerade für einen anderen Thread gefunden: http://www.kentonuk.com/products/items/utilities/usb-host.shtml Könnte möglicherweise irgendwobei helfen.
Das ist der, der oben bereits erwähnt wurde, nehme ich an "Kenton MIDI USB Host". Ok, es würde wieder auf normale MIDI-Schnittstellen übersetzen, aber die müssten auch wieder gemerged werden. Möglicherweise kommt man aber in dieses Gerät irgendwie rein.
Re. S. schrieb: > Ok, es würde wieder auf normale MIDI-Schnittstellen übersetzen, aber die > müssten auch wieder gemerged werden. ... und nicht nur das: Für jeden USB-Kanal braucht es einen eigenen USB-MIDI-Wandler! Wieviele sollten das werden? Vielleicht ist es ja eine Möglichkeit, das mit intelligenter Hwardware zu lösen, z.B. mit Teensy / Arduino. Dafür gibt es DIY USB-Anwendungen, teilweise auch MIDI. Da gäbe es z.B. das hier: http://www.inspektorgadjet.com/cerebelusb/ Der scheint sowas mit Arduino gemacht zu haben. Braucht auch mehrere und die müsste man dann dazu bringen, miteinander zu reden. Die meisten Musiker, die das brauchen, mischen das im PC mit Software. Dort gibt es auch die Möglichkeit, MIDI-routing zu betreiben.
Clemens L. schrieb: > Das iConnectMIDI 4+ sieht auch vielversprechend aus. Glaub Ich eher nicht. Das sieht mir mehr so aus, als ob das zwei hoasts auf die 4 MIDIS zugreifen können. Ich habe in der Zwischenzeit auch nochmals gesucht aber nichts gefunden. Kann ja wohl nicht sein! Sind alle damit zufrieden, dass sie nur ein Keyboard anschließen können?
Reinhard S. schrieb: > Clemens L. schrieb: >> Das iConnectMIDI 4+ sieht auch vielversprechend aus. > > Glaub Ich eher nicht. Das sieht mir mehr so aus, als ob das zwei hoasts > auf die 4 MIDIS zugreifen können. Wäre es zu viel verlangt, mal ins Handbuch zu schauen? "The default routing (remember, this can be changed): ... Each port on the USB Host jack routes to: all four pairs of MIDI DIN jacks"
Ob 4:1 oder 4:4 ist nicht das Problem. Es geht um die Datenrichtung und um die Tatsache, dass die gemultiplexten Daten selbst vom PC oft nicht sortiert werden können.
Hier ist ein solches Projekt aufgeführt: https://hackaday.io/project/169980-20-usb-midi-host Die hosten praktisch das MIDI-Gerät und wandeln dessen Information in ein "normales" (altes) MIDI um. Dazu braucht es eine Verwaltung des MIDI-Gerätes, also ein management des Instruments als UBB-Client, einen Takt mit Abfragen an das Gerät und einen Empfangspuffer für das Gesendete (aus Sicht des Vermittlers, das "Empfangene") sowie einen Sendepuffer mit Übersetzung der Pegel. Soll das als MIDI heraus, braucht es noch eine Stromschleife. Wenn die MIDI-Geräte auch gemischt werden müssen, dann braucht es A) entweder einen HUB, der das schon auf der USB-Seite tut, oder B) mehrere USB-Anschlüsse und hosts, deren Ausgänge wiederum gemischt werden. A) Das erste scheitert daran, dass die Geräteverwaltung oft schon mit professionellen Chips in einem PC nicht funktioniert, weil die Clients immer denselben FTDI-Chip drin haben und man sie nicht auseinander halten kann, oder sie zuviele Daten liefern, dass der Vermittler es nicht schafft, das timing einzuhalten. Besonders bei USB 2.0 Geräten ist das so: Die funktionieren oft nur richtig, wenn sie an unterschiedliche hubs im PC angeschlossen werden. Trotzdem kommt es da immer wieder zu Problemen. Oft haben sie sogar ein spezielles Protokoll und erfordern einen speziellen Teiber. B) Das Zweite scheitert daran, dass der Vermittler nicht weiß, wie er mit mehreren Geräten umgehen soll: MIDI kommt mit 16 Kanälen und wenn es aus 4 Geräten prickelt, dann müssen 64 auf 16 gemappt werden, was erst einmal eine Zuordnung braucht, die willkürlich erfolgen muss. Mein MIDI-Mischer ist dazu programmierbar, kann in der neuen Version 8x2 solcher Eingänge auf 8+8 Ausgänge mischen. Jeder davon hat wieder "seine" 16 logischen MIDI-Kanäle. Was noch fehlt ist ein MIDI-host, der schnell genug ist, wirklich das Tempo von USB mitzugehen und es auf (m)ein schnelles MIDI übersetzt, respektive zumindest auf 230k seriell, damit es Arduino und Raspberry oder andere Hardware wie die hier verarbeiten können: Beitrag "Analoge Orgel mit USB-MIDI steuern"
Der obige Beitrag war von mir, war aber nicht eingelogged, da vom anderen Browser aus gepostet. Hier wurde das Thema auch aufgegriffen: Beitrag "Re: Analoge Orgel mit USB-MIDI steuern" Was ich abweichend von oben noch gefunden habe, ist das hier: http://www.inspektorgadjet.com/cerebelusb/ Die mischen offenbar sogar schon die USB-Geräte, allerdings geht der shop link nicht.(?) Hier gibt es ein fertiges Produkt für einen Kanal: https://www.indiamart.com/proddetail/mini-usb-host-shield-2-0-for-arduino-adk-slr-development-tool-20922080730.html und auch der hier hat was gebaut: https://modwiggler.com/forum/viewtopic.php?t=240740 Dazu gibt es noch einen "CAMOLA USB MIDI Host Box MIDI". Diese Geräte kranken aber alle daran, dass sie auf langsames MIDI übersetzen und damit ungeeignet sind, Daten aus einem Masterkeyboard praktisch zeitgleich zu verarbeiten. Das sendet nämlich auch noch spezifisches SYSEX und hat gfs einen Sequenzer drin, der die angeschlossenen Synths mit Daten vollklopft. Schnelle USB-breath controller produzieren inzwischen auch schon deutlich mehr MIDI-Daten-Dichte, als es per MIDI 1.0 transportierbar wäre. Dazu gehören auch und einige Theremine und Ribbon-Controller. Mein Ziel ist eine open Plattform, bei der man an die firmware rankommt, um sie entsprechen umschalten zu können.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.