-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MIDI2.0Workbench keeps sending Get Property Data for DeviceInfo forever #5
Comments
Yeah that's not good - |
Here are the log archives: juce-ci-demo.log.zip / ktmidi-ci-tool.log.zip On my Kotlin implementation, I can provide an Ubuntu .deb package but not others (it often happens that the Kotlin / Compose Multiplatform toolchains work fine only on occasion): https://drive.google.com/file/d/1oC1vAzyBCoQE9W9jLbB5ydz000dg7vvX/view?usp=sharing JUCE CapabilityInquiryDemo would be easy for you to build: check out JUCE sources (master release is fine), and run:
and run the resulting binary such as I guess that it is dependent on the connection setup. I also have a Kotlin/Wasm version on the web ( https://androidaudioplugin.web.app/misc/ktmidi-ci-tool-wasm-first-preview/ ), but I cannot reproduce the issue. I choose "MIDI 2.0 Workbench" virtual ports on either CapabilityInquiryDemo or my web version, but the infinite loop occurs only on desktop (I confirmed it occurs on Ubuntu and Mac). |
@atsushieno I just tried the deb package and I got the following:
|
@atsushieno I think I might have a clue to the reason. It seems that neither ResourceList from either ktmidi and juce demos have "deviceInfo" in the ResourceList. (Juce demo has it as "DeviceInfo" with a capital D). Because deviceInfo is a foundational Resource it is expecting it to be there. I have added some extra checks to hopefully stop looping. Can you please add "deviceInfo" to your ResourceList and see if it works? I'll push the changes in a few days (it's NAMM time) so you can see the changes. |
uh, oh, I was not aware of those ALSA related errors. Thanks for the heads up. (The other error stack trace is intended so far, at least I am aware of it.)
Yes it stops looping once I rename it to "deviceInfo". However, the correct name is "DeviceInfo" according to Common Rules for MIDI-CI Property Exchange version 1.1 (M2-103-UM_v1-1_Common_Rules_for_MIDI-CI_Property_Exchange.pdf) as well as MIDI-CI Property Exchange Foundational Resources version 1.1.1 (M2-105-UM_v1-1-1_Property_Exchange_Foundational_Resources.pdf). I believe juce_midi_ci is implemented based on these specifications as well. |
You are correct - sorry I'm doing this late at night and I am tired 😪 |
It might have caused midi2-dev/MIDI2.0Workbench#5.
I noticed that |
I am trying to get MIDI2.0Workbench to see if it is usable for diagnosing any interoperability issues. Sadly it is currently impossible, because the tools goes into weird "infinite loop" that keeps sending Get Property Data request to the connected device.
It keeps logging the requests and reqponses forever, which makes it impossible to even inspect the messages.
For the same reason, we cannot really debug what is going on with the actual property data, regardless of which property it is, because every time it receives the response, the tool refreshes the property details on the "Resource Data" page and resets the property selection status.
Confirmed with MIDI2.0Workbench 1d293d9, my own MICI-CI tool (atsushieno/ktmidi as of ef03b56), and JUCE CapabilityInquiryDemo (as of 0637f78).
The text was updated successfully, but these errors were encountered: