Plug the keyboard into the computer with a USB cable, open a page that listens for MIDI, allow it when the browser asks, and play. Most keyboards need no driver.
The three steps
- The cable. Nearly every keyboard made in the last fifteen years uses USB, usually the square USB-B plug on the keyboard end. Plug it straight into the computer if you can; hubs sometimes starve keyboards of power. Older keyboards with round 5-pin MIDI sockets need a small USB-to-MIDI interface.
- Power and drivers. Switch the keyboard on. Most are class-compliant: Mac and Windows recognise them without installing anything. A few larger keyboards ship a driver on the maker’s site. If the keyboard shows up nowhere, that is the first thing to check.
- Allow it in the browser. Open the MIDI keyboard test page in Chrome, Edge or Firefox and press Enable MIDI. The browser asks to allow MIDI for this site. Choose Allow. The page lists your keyboard by name, and every key you press appears with its velocity.
Only one program at a time
On Windows especially, a keyboard can be held by one program. If your music software is open, the browser may see nothing. Close the other program, unplug and replug, and reload the page.
Questions people ask
- Do I need an audio interface?
- No. MIDI is just messages; the computer makes the sound. An audio interface only matters for better speakers or lower latency when recording.
- Can I connect a MIDI keyboard to a phone or tablet?
- Sometimes, with a USB adapter. Safari has no Web MIDI, so on an iPhone or iPad the browser route does not work. On Android, Chrome does.
- Can I connect without a cable?
- Yes, if the keyboard has Bluetooth MIDI. Pair it in your computer’s settings first (on a Mac in Audio MIDI Setup, on Windows in the Bluetooth settings), and the browser then sees it like any other keyboard. Expect a little more delay than a cable.
- Why does the browser ask for permission?
- Because a page could otherwise read every key you press on a connected device. The prompt shows once per site; you can change it later in the site settings.