Teensy4.1 recognizing external MIDI/USB hubs

muxer

New member
Hi, my first post.
I have had a Teensy 4.1 for some time now and have been slowly designing a 16x16 a standalone router to route 8 midi in/out and 8 usb clients thru the hubs.
I am aware of Paul's USBHost_t36 and the Interface_16x16 example and the basic functions of the USBhost but, what I would like to confirm is

Do I need all these types of device (below) if NOT sending to a PC, just back and forth between the teensy host's client USB and uart midi. ?
USBHost myusb;
USBHub hub1(myusb);
MIDIDevice midi01(myusb);

IF I am going to monitor debugging on the Arduino interface do I still need to have a PC connection for testing and then remove it later ?

Can I add and have recognized a class compliant commercial Midi/USB-Hub router to the teensy 4.1 (something like a Doremidi, pictured)
and if so would I need either Teensy or doremidi to think it was talking to the PC and if so I would need to still have some kind to PC usbMIDI.send capacity ?
doreme6x6.jpg



If I did connect something like this to Teensy (being class complaint) what would the midi(DIN) ports look like to a Teensy ?
eg Would they display as Usart ports or if something was connected to them like a usb device thru the USB cable that connected the Doremidi and the teensy ?

Would they be virtual ports somehow beyond what the USB creates normally.
Has anybody asked these questions or tried this before that could give me some pointers to a header files or some clues to this design situation.

I use USBTreeview (https://www.uwe-sieber.de/usbtreeview_e.html) to view USB ports.

Thanks

PS. am using my local library for internet as my internet is down so my replies may be a little slow. thanks for your patience
 
I am trying to make a hardware version of the MidiTrix where I can map & store connections between certain inputs and outputs.
I use two hubs a 4 port hub and a 7 port hub with switchable ports.

As Paul has replied in other posts, when you insert or enable a device a usb device it is allocated to the first available midi MIDIDevice midi01(myusb); device
so if I turn on the switches in another order 7264351 then the ports are allocated in that order and a router is pointless as the allocated ports change tool often. Where my idea was to be able to load different port mappings if only using a few devices sometimes.

in Pauls Interface_16x16 example and most so called routers .ino I have seen there is no control of the ports mapped it is just all the midi being broadcast to all other ports.

I had thought that the hubs mentioned in teensy documentation were just empty ports being connected to the Teensy not something controlled by a class compliant microprocessor, not I thought just asking another hub question, I thought someone had encounter this problem before that could give me some clues in that regard..

UsbTreeview allows in the left tree side that the ports can be shown with their chain numbers 1-2-1, 1-2-2, 1-2-3, 1-2-4 and It might be possible to program that in to Arduino and Teensy to help overcome the allocation problem and help provide fixed USB ports.
 
Back
Top