The Short Version
You need a USB OTG adapter (~$10). Connect: Keyboard → USB cable → OTG adapter → Phone.
OnePlus/Xiaomi/Oppo users: Enable USB OTG in Settings first.
On This Page
1. What is USB OTG?
USB OTG (On-The-Go) lets your phone act as a USB "host" - the same role your computer plays when you plug in a keyboard or mouse. Without OTG, your phone can only be a "device" (like when you charge it from a computer).
Why is this needed? MIDI keyboards are USB "devices" that expect to connect to a "host." An OTG adapter tells your phone to switch into host mode so it can communicate with the keyboard.
Most Android phones made after 2015 support USB OTG. Crescendo will automatically detect your keyboard once it's properly connected.
2. What You Need
Android 6.0 or later
Android's MIDI API was introduced in Android 6.0 (Marshmallow). Most phones from 2016 onwards meet this requirement.
Check your version: Settings → About Phone → Android Version
USB OTG Adapter
A small adapter that converts your phone's USB-C port to a USB-A port (the type your keyboard cable plugs into).
USB-C to USB-A OTG Adapter
RecommendedWorks with most modern Android phones
What to look for:
- Must say "OTG" in the product name
- USB-C male to USB-A female
- From a reputable brand (Anker, UGREEN, etc.)
Charging-only adapters won't work
Not all USB-C adapters support OTG. Cheap "charging" adapters only transfer power, not data. Make sure "OTG" is clearly stated in the product description.
USB Cable (usually included with keyboard)
Most MIDI keyboards come with a USB-A to USB-B cable. The USB-B end (square-ish) plugs into your keyboard.
Connection chain:
3. Phone-Specific Settings
Some Android manufacturers disable USB OTG by default or require additional settings. Find your phone brand below:
| Phone Brand | OTG Status | Action Required |
|---|---|---|
| Google Pixel | Enabled by default | None - just plug in |
| Samsung Galaxy | Enabled by default | None - just plug in |
| OnePlus | Manual enable | Settings → Additional Settings → OTG |
| Xiaomi / MIUI | Manual enable | See detailed steps below |
| Oppo / Realme | Manual enable | Settings → Additional Settings → OTG Connection |
| Motorola | Enabled by default | None - just plug in |
OnePlus, Xiaomi, Oppo: OTG Auto-Disables!
CriticalThese phones automatically disable OTG after 10 minutes of inactivity to save battery. If your keyboard suddenly stops working mid-practice, you'll need to re-enable OTG in Settings.
Workaround: Play notes or touch the screen periodically to prevent the timeout.
Xiaomi / MIUI: Detailed Setup Steps
Step 1: Enable Developer Options
- Go to Settings → About Phone
- Find MIUI Version
- Tap it 7 times until you see "Developer mode has been enabled"
Step 2: Set USB Configuration to MIDI
- Go to Settings → Additional Settings → Developer Options
- Scroll down to find USB Configuration (or "Default USB configuration")
- Select MIDI
Step 3: Enable OTG
- Go to Settings → Additional Settings
- Find OTG Connection and toggle it ON
Note: Menu names may vary slightly depending on your MIUI version. If you can't find an option, use the search bar in Settings.
4. Step-by-Step Connection
Enable OTG (if required)
If you have a OnePlus, Xiaomi, or Oppo phone, enable USB OTG in your Settings first. See the table above for the exact location.
Turn on your keyboard
Power on your MIDI keyboard before connecting it. This helps Android detect it properly.
Connect the cable to your keyboard
Plug the USB-B end (square-ish connector) into your keyboard's "USB" or "To Host" port.
Tip: If your keyboard has multiple USB ports, use "To Host" or "USB to Computer" - not "To Device."
Connect the OTG adapter
Plug the USB-A end of the cable into your OTG adapter, then plug the adapter into your phone.
Open Crescendo and select your keyboard
Crescendo may auto-launch when you plug in the keyboard. If not:
- Open Crescendo
- Tap the MIDI button (top right) or go to Settings
- Your keyboard should appear in the device list
- Tap it to connect
- You'll see a green checkmark when connected
Test the connection
Play a few notes on your keyboard. You should see:
- Notes highlighted on the score as you play
- Cursor advances when you play correct notes
- Latency feels instant (USB is typically 5-10ms)
First time connecting? Crescendo will ask you to play a few notes to detect your keyboard's range. Just play the lowest and highest keys, then tap "Done."
5. Troubleshooting
My keyboard doesn't appear in the device list
Try these steps in order:
- Check OTG is enabled - This is the most common issue. Go to Settings and verify OTG is turned on.
- Verify the adapter is OTG - Make sure your adapter says "OTG" on it. Charging-only adapters won't work.
- Try unplugging and reconnecting - Disconnect everything, wait 5 seconds, reconnect.
- Power cycle the keyboard - Turn it off and back on while connected.
- Try a different cable - About 95% of detection issues are cable-related.
- Restart your phone - Sometimes Android needs a fresh start to detect USB devices properly.
My keyboard disconnects after a few minutes
This is almost always the OTG auto-disable feature on OnePlus, Xiaomi, or Oppo phones.
Solutions:
- Play or touch the screen periodically - Activity resets the 10-minute timer.
- Re-enable OTG after timeout - Go back to Settings and toggle OTG on again.
- Check for "OTG timeout" setting - Some phones let you extend or disable the timeout.
Unfortunately, there's no permanent workaround for this on affected phones. The timeout is a battery-saving feature built into the system.
I need to enable Developer Options
To enable Developer Options on any Android phone:
- Go to Settings → About Phone
- Find Build Number (or "MIUI Version" on Xiaomi, "Software Information" → "Build Number" on Samsung)
- Tap it 7 times
- You'll see "You are now a developer!" or similar message
- Go back to Settings - "Developer Options" will now appear
Once enabled, you can find USB Configuration in Developer Options and set it to MIDI.
I'm using the wrong keyboard port
Many keyboards have multiple USB ports with different purposes:
- "To Host" / "USB to Computer" - This is the correct port for MIDI.
- "To Device" / "USB to Device" - This is for connecting USB drives, NOT for MIDI.
- "USB" (only one port) - Use this one.
Check your keyboard's manual if you're unsure.
Should I use Bluetooth instead?
If your keyboard supports Bluetooth MIDI, it can be a good alternative - especially on phones with aggressive OTG timeouts:
Bluetooth advantages:
- No cables or adapters needed
- No OTG timeout issues
- Cleaner setup
Bluetooth considerations:
- Slightly higher latency (5-15ms vs 5-10ms)
- Requires Bluetooth-capable keyboard
- May need reconnection each session
Supported Keyboard Brands
Crescendo automatically detects keyboards from these manufacturers:
Other USB MIDI keyboards should also work if they follow the standard USB Audio Class specification.
Quick Reference
| Phone Brand | OTG Setting Location | USB Latency |
|---|---|---|
| Google Pixel | Auto-enabled | 5-10ms |
| Samsung Galaxy | Auto-enabled | 5-10ms |
| OnePlus | Settings → Additional Settings → OTG | 5-10ms |
| Xiaomi / MIUI | Settings → Additional Settings → OTG + Developer Options | 5-10ms |
| Oppo / Realme | Settings → Additional Settings → OTG Connection | 5-10ms |
Related Articles
Still Need Help?
If you've tried everything above and still can't connect, we're here to help.
Email: support@crescendopiano.app
Please include: your phone model, Android version, keyboard model, OTG adapter being used, and what happens when you try to connect.
Response time: 2-3 business days