Use a MIDI keyboard in the browser

midimemo listens to USB-MIDI pianos and controllers in Chrome, Edge, and Firefox — so music theory drills land under your fingers. No MIDI gear? Use the on-screen piano or computer keys; grading counts the same. Connect a MIDI keyboard to midimemo in Chrome, Edge, or Firefox. Or practice with the on-screen piano — same grading either way.

How to connect a MIDI keyboard

Hardware MIDI uses the Web MIDI API. Once connected, midimemo grades the notes you play the same way as on-screen keys.

Plug in and power on: Connect your USB-MIDI keyboard or controller and power it on so your operating system sees the device.

Open midimemo in a Web MIDI browser: Use Chrome, Edge, or Firefox 108+ over HTTPS (or localhost). Safari on iPhone and iPad does not support Web MIDI.

Request MIDI access: Open Settings → MIDI, or tap the MIDI status control in the navbar. Tap Request MIDI access and allow the browser permission when asked.

Choose your device and play a note: Select your keyboard from the list (recommended ports are usually the real device, not a virtual loopback). Play a few keys — the preview should light up.

Connect and start practicing: Tap Connect (or Save if you are changing devices). midimemo remembers the selection for later sessions so prompts are answered on the keys.

Browser support for Web MIDI

Web MIDI works in Chrome, Edge, and Firefox (108+), including Chrome on Android. Use HTTPS or localhost — insecure origins cannot request MIDI access.

Safari on iPhone and iPad does not support Web MIDI. On those devices, practice with the on-screen piano or computer keys, or switch to a supported desktop browser for hardware input.

Firefox may ask for a site-permission add-on the first time you request MIDI — approve it when prompted, then try Request MIDI access again.

No MIDI keyboard? Still practice

You do not need a MIDI keyboard. Enable audio when prompted, then answer with the on-screen piano or your computer keyboard.

Both paths count the same for grading. You can connect a controller later from Settings → MIDI whenever you use a supported browser.

Troubleshooting

Empty device list: unplug and replug the keyboard, power it on, then refresh devices from Settings → MIDI. Make sure no other app is exclusively holding the MIDI port.

Permission denied: click Request MIDI access again and allow the prompt. On Firefox, approve the MIDI site-permission add-on if the browser asks for it.

Preview does not light up: pick the recommended (primary) port, not a virtual loopback such as loopMIDI — midimemo filters those when possible so you train against keys that reach your hands.

Still stuck on Safari or an unsupported browser: use on-screen or computer keys, or open midimemo in Chrome, Edge, or Firefox for hardware MIDI.