Posts: 19
Threads: 5
Joined: May 2018
Reputation:
0
I don't seem to be seeing MIDI commands sent on song load.
My setup is a little complicated--I'm running MobileSheets Pro on a Samsung Galaxy Tab S3 connected by USB through a USB hub to Mod Duo pedal which is just routing MIDI to another keyboard (a Casio PX-560). But that setup is working fine for other apps running on the tablet--e.g. I can play sounds from the Casio with the "MIDI Keyboard" running on the tablet.
I'm testing by adding a Note On (value 60) command for one song, then flipping to a previous song and back to this one, assuming it would send the Note On when I return to this song. But, nothing's happening that I can hear. I also tried a Program Change, but that doesn't have any effect either (although, again, "MIDI Keyboard" can send program changes just fine).
Am I missing anything obvious?
Posts: 13,372
Threads: 302
Joined: Apr 2012
Reputation:
236
05-17-2018, 02:31 PM
(This post was last modified: 05-17-2018, 02:32 PM by Zubersoft.)
When you connect your device with MobileSheetsPro running, do you see a little pop up message at the bottom of the screen showing that the device was connected? If it's your first time connecting the device, you should also see a pop up from MobileSheetsPro requesting access. If you do not see either, the MIDI library I'm using is not able to connect to your device or is not recognizing it as a MIDI device. I'm not currently using Google's MIDI library which was released for devices running Android 6.0 or greater. That library is more flexible with connections, and can handle bluetooth as well as virtual ports. My plan is to integrate this so users can utilize either MIDI library (as many users are running devices lower than 6.0). I don't know which MIDI keyboard app you are running, but if it's utilizing the newer MIDI library from Google, that would explain why it's able to connect to your Mod Duo pedal through the USB hub. When I add the new MIDI library, I will develop a dialog where users can choose which ports to connect to for input/output. This will let users connect to devices that aren't recognized as a proper MIDI device (due to the USB connection not specifying the proper sub-class type and/or vendor id).
Mike
Posts: 19
Threads: 5
Joined: May 2018
Reputation:
0
OK, got it. No, I don't get a pop up. If I pull down from the top of the screen after connecting I do see a notification like "USB device connected as a storage device; other options..." and I can tap on that and choose "MIDI device". (Or something like that; I'm going on memory.)
I realize I left something out: actually, "MIDI Keyboard" doesn't work immediately on startup--instead I have to choose the right option from a drop-down "MIDI receiver" menu in that app first. I wonder if the OS is showing multiple MIDI devices available in my case, and that's confusing your library. If that's right, then MSP may eventually also need some UI to choose the right device to send commands, either on a global- or per-command basis....
Anyway, I'll experiment some more.
The tablet says it's on Android 7.0, by the way.
Posts: 13,372
Threads: 302
Joined: Apr 2012
Reputation:
236
The MIDI Keyboard app uses Google's new MIDI library for Android 6 or higher. That also explains why you have to pick the thing you want to connect to in the dropdown - that's basically what I'm going to have to do as well. I'm going to let users pick what they want to connect to instead of automatically connecting to devices that are correctly detected as a MIDI USB device. I'm going to have to see if I can do the same thing with my existing library for Android devices below 6.
Mike
Posts: 19
Threads: 5
Joined: May 2018
Reputation:
0
05-18-2018, 01:03 PM
(This post was last modified: 05-18-2018, 01:08 PM by bfields.)
I spent a few more minutes fiddling. If I plug my tablet into my keyboard, it works the way you expected: I get pop ups requesting access, asking if I want to start MSP when this device is plugged in, etc., and then the MIDI magic works on loading my song.
If I plug it into my MOD DUO pedal, it's as I saw last night: I get no popup; instead there's just a note in the notifications that I can click on that allows me to choose what I want to use the USB connection for--I choose MIDI, but nothing happens. The MIDI Keyboard app works, MSP doesn't.
The important difference may be that the DUO is acting as a USB host, and the keyboard as a USB device?
(Anyway, if you want a guinea pig for testing of the new android MIDI API, I'm happy to test stuff.)