Solved USB MIDI controller not recognized by DAWs

nickednamed

Active Member

Thanks: 29
Messages: 186

#1
I'm trying to get my Akai MPK25 USB MIDI controller to work with a DAW such as audio/lmms or audio/ardour.

But the controller is not available from within either program using the menus, and I'm not able to connect either DAW to the MIDI controller using audio/qjackctl.

I know the hardware is OK, and it works with some applications EG audio/qysnth via audio/jack and audio/qjackctl, but not the more full-featured DAWs listed above.

I have tried installing from packages, and compiling from ports, with various compile time options (with JACK support, without JACK support, with ALSA, without ALSA, etc.), but no luck yet. Depending on the setup, I get varying degrees of success.

First, some basic information, just in case:

Plug in Akai MPK25:
dmesg | tail
Code:
ugen0.6: <Akai> at usbus0
uaudio0: <Akai Akai MPK25, class 0/0, rev 1.00/1.03, addr 6> on usbus0
uaudio0: No playback.
uaudio0: No recording.
uaudio0: MIDI sequencer.
uaudio0: No HID volume keys found.
ls /dev/ | grep umidi
Code:
umidi0.0
umidi0.1
umidi0.2
usbconfig -d 0.6 dump_all_config_desc
Code:
ugen0.6: <Akai MPK25 Akai> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (360mA)
...
So it appears device is detected properly.

Install some necessary programs:
portmaster audio/jack (tried with ALSA=ON and then ALSA=OFF)
portmaster audio/jack_umidi (no options to configure)
portmaster audio/qjackctl (tried with ALSA=ON and then ALSA=OFF)
portmaster audio/lmms (tried with JACK=ON and then JACK=OFF)
portmaster audio/ardour (no options to configure)

Then I run audio/jack_umidi to convert RAW USB MIDI devices into JACK MIDI devices: jack_umidi -d /dev/umidi0.0 -B

Then I start the JACK server, and some prgrams as root:
jackd -r -m -d oss -r 44100 -p2048 -C /dev/dsp0.0 -P /dev/dsp0.0

jack_lsp
Code:
system:capture_1
system:capture_2
system:playback_1
system:playback_2
Akai Akai MPK25 #0:midi.TX
Akai Akai MPK25 #0:midi.RX
lmms-01:master out L1
lmms-01:master out R1
qsynth:l_00
qsynth:r_00
qsynth:midi
Using audio/qjackctl I can see that my MIDI controller is listed in the "Connections" / "Patchbay" windows. My system playback device, capture device and audio/qsynth are all listed and connectable. I can use Qsynth with no problems.

Now here is where I get problems with audio/lmms and audio/ardour - different problems depending on compile-time options.

When audio/lmms is compiled with JACK=NO, LMMS doesn't appear in the list of available connections (neither via jack_lsp, nor audio/qjackctl).

When audio/lmms is compiled with JACK=YES, it appears in the jack_lsp output, but only in the "Audio" tab of audio/qjacktl. It does not appear in the "MIDI" tab.

As a result, I AM able to connect LMMS to my playback device and hear sound from it, but I am UNABLE to connect my MIDI controller to LMMS and control it that way.

Following these instructions also does not work, as no MIDI device is listed in "INPUT".

If I go through the menus, Edit > Settings > Audio Settings > Audio Interface
I can choose JACK or OSS

If I go through Edit > Settings > Audio Settings > MIDI Settings
I can choose "Dummy" or OSS Raw.

Neither works, and ALSA has yet to appear in the menu.


As for audio/ardour, it keeps crashing at the moment, so I can't check, but it never appeared in jack_lsp, or qjackctl, and no MIDI device was visible from within the application.


If anyone knows what I'm doing wrong, I'd be grateful for some help.
 
OP
OP
N

nickednamed

Active Member

Thanks: 29
Messages: 186

#2
SOLVED.

I changed my package repository to the "latest" repository, as outlined below:
I created the file /usr/local/etc/pkg/repos/FreeBSD.conf and added the following:

Code:
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest"
}
Then I reinstalled audio/jackit, audio/jack_umidi, audio/qjackctl, audio/ardour5, audio/zynaddsubfx from packages.

And it works. I'd prefer to track the Quarterly Packages, but at least I'm now able to connect my MIDI controller to ardour, zynaddsubfx, and use it as intended.
 
Top