I developed a USB-MIDI device based on an embedded microcontroller. That all works well on both Mojave and Catalina. I configured my device to expose two IN ports and two OUT ports and they appear as expected in Audio MIDI Setup and various MIDI programs on the Mac talk to the device which responds appropriately.
I'm in the process of porting that design from the first micro to a new one (new family, new vendor device API, the whole works) and I've gotten as far as getting the device to enumerate. Mojave correctly shows the two IN and two OUT ports. Catalina, however, claims that my device has no ports. (The configuration descriptor completely defines the device's four ports.)
Wireshark's USB packet capture shows that after enumeration, both Mojave and Catalina send a SYSEX message to the device. What is the meaning of this message, and what response should I give?
I should note that I do see this message with my older (fully functioning) device, but I don't send any reply. It's possible that in Catalina, NAKs on the OUT endpoint are enough to say "no ports available" whereas earlier that didn't matter.
I'm in the process of porting that design from the first micro to a new one (new family, new vendor device API, the whole works) and I've gotten as far as getting the device to enumerate. Mojave correctly shows the two IN and two OUT ports. Catalina, however, claims that my device has no ports. (The configuration descriptor completely defines the device's four ports.)
Wireshark's USB packet capture shows that after enumeration, both Mojave and Catalina send a SYSEX message to the device. What is the meaning of this message, and what response should I give?
I should note that I do see this message with my older (fully functioning) device, but I don't send any reply. It's possible that in Catalina, NAKs on the OUT endpoint are enough to say "no ports available" whereas earlier that didn't matter.