I promised my daughter Lila that I’d get this USB-MIDI keyboard controller working, which I had been talking about doing for some weeks, but which has become more pertinent, given that we are going to be homeschooling, and music is part of our curriculum.
Anyway, here are notes on how I got MIDI sound working on a Pi4 2GB with my Nektar IMPACT iX61 MIDI controller:
- Install base raspberry OS
- apt install qsynth
- Start jackd with the seq module so the MIDI keyboard works (from http://slackermedia.info/handbook/doku.php?id=qjackctl):
pi@raspberrypi:~ $ jackd -R -d alsa -X seq jackdmp 1.9.12 Copyright 2001-2005 Paul Davis and others. Copyright 2004-2016 Grame. Copyright 2016-2017 Filipe Coelho. jackdmp comes with ABSOLUTELY NO WARRANTY This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details JACK server starting in realtime mode with priority 10 self-connect-mode is "Don't restrict self connect requests" audio_reservation_init Acquire audio card Audio0 creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit ALSA: Cannot open PCM device alsa_pcm for capture. Falling back to playback-only mode configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods ALSA: final selected sample format for playback: 16bit little-endian ALSA: use 2 periods for playback port created: Midi-Through:midi/playback_1 port created: Midi-Through:midi/capture_1 port created: IMPACT-iX61:midi/playback_1 port created: IMPACT-iX61:midi/capture_1 port created: IMPACT-iX61:midi/playback_2
- Start qsynth and load it up with the soundfonts that should have been installed along with it:
- Click Setup
- Click the Soundfonts tab
- Click Open
- “Open” both of those sf2 files
- Make the jack connections by clicking Connect in qjackctl
- There will need to be connections made in each of the tabs:
- Start playing
- change the sound in qsynth by clicking Channels, then double-clicking the first one - it should bring up a list of other instruments
If sound isn’t working, first try restarting qsynth by clicking the Restart button.