danke für die schnelle Antwort. Von der Baudrate ist es schneller, ok - ich dachte da eher an Buffer bei der seriellen Schnittstelle, die bei den USB Treibern vielleicht nicht vorhanden sind.
Sowohl MIDI->USB als auch USB->PC sind gebuffert, zusaetzlich bietet USB auch noch eine Art Handshaking, so dass Daten nur auf der MIDI->USB Strecke verloren gehen koennten.
Das serielle Interface hat einen Hardware Buffer, doch der ist kleiner. Auf Treiberseite wird jedoch ein zweites mal softwaremaessig gebuffert, so dass die Wahrscheinlichkeit fuer einen Datenverlust sehr gering ist (in der Praxis wird das wohl niemals geschehen).
Ok, was wäre nun zu tun? Nehme ich nur die MIDIbox, müsste ich im Quelltext oder per Parameter einfach die Baudrate auf 38400 Baud setzen?
Ja, wie unter http://www.ucapps.de/mios_bootstrap_experts.html beschrieben, muss im ID Feld der Wert “000000000000100” eingetragen werden. Dies geschieht beim Programmieren des Bootloaders, der holt sich dann genauso wie spaeter MIOS die Konfiguration aus diesem Feld.
Die Variante mit dem MIDI-Merger ist - soweit ich verstanden habe - nur für das alte OS notwendig.
was moechtest Du genau mergen?
Das I2C Prinzip mit den 2x2 MIDI in/out klingt aber auch sehr interessant. Wenn man das mit einem COM Interface und einer MIDIbox vereinen könnte, wäre das ziemlich genial.
Theoretisch waere das moeglich, ich habe es jedoch noch nie selbst ausprobiert. Man kann das interne MIDI Interface auf 38400 Baud einstellen, und die MBHP_IIC_MIDI slaves (bis zu vier koennen betrieben werden) mit normaler Baudrate.
Allerdings werden die Datenstroeme nicht von MIOS verwaltet, sondern das muss auf Applikationsseite geschehen. Ein Beispiel befindet sich in der MIDI Router Applikation.
Ein Problem: in dieser Konstellation kann es sehr einfach zu einem Buffer Ueberlauf kommen, da die Daten ueber den internen Port schneller eintreffen, als sie ueber das normale MIDI Interface mit niedrigerer Baudrate uebertragen werden koennen (Flaschenhals Problem) - MIDI bietet kein Handshaking. Grosse Buffer mildern das Problem (bei MIOS: 64 Bytes, bei MBHP_IIC_MIDI: 96 bytes), doch die Gefahr besteht…
Nachtrag: Wer ist dort eigentlich der I2C Master? Ist das schon die MIDIbox?
Ja, ausschliesslich (Multi Master Betrieb wird nicht unterstuetzt)
Gruss,
Thorsten.