Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Donowa

Desperately need help with USB to MIDI adapter on Linux Mint

Recommended Posts

Hello.

 

I'm looking for help with using MIDI on Linux Mint. I want to use my Roland SC-88 for MIDI playback and recording, and to do so I am using a USB to MIDI adapter. Specifically, I am using one that shows up as a QinHeng CH345 MIDI adapter in System Information.

The problem is that I can't seem to get it to work at all. I've tried it with aplaymidi and multiple doom source ports, and neither worked. I know that aplaymidi works on my PC, I've tried it with fluidsynth and it worked, so I think it's a problem with the adapter.

I would greatly appreciate any help regarding this issue.

Edited by Donowa : The issue isn't exclusive to doom, please move this post to Everything Else

Share this post


Link to post

Gonna bump the thread, since I basically re-wrote the entire OP anyways so I feel like it's necessary.

I've been unable to find any guides for this that aren't useless and/or outdated. The ALSA wiki is horribly outdated, to the point that you're better off asking your dog. There's an article on the WineHQ Wiki, but it was last updated in 2016. I've found a couple websites that had people asking about this issue, but the answers usually address different problems.

 

If anyone can link me to some tutorials for hardware midi on Linux, please post them in this thread so that it can help others.

Share this post


Link to post

What's the output of aplaymidi -l and aconnect -o and lsusb?

 

I used the WineHQ Wiki to get midi working for my windows doom clients in there, had to use winetricks to install directmusic and a reg patch, worked fine after that, I'm using FluidSynth as a service, a native doom client should work ok?

Share this post


Link to post

For aplaymidi -l I got this:

Spoiler

 Port    Client name                      Port name
 14:0    Midi Through                     Midi Through Port-0
 24:0    CH345                            CH345 MIDI 1

aconnect -o gave me this:

Spoiler

client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 24: 'CH345' [type=kernel,card=2]
    0 'CH345 MIDI 1    '

So now I know that I should use port 24:0 for hardware MIDI, however the device still doesn't show up in GZDoom. Thanks!

 

Share this post


Link to post

Yes it does, but for some reason I can't figure out how to use it with crispy or chocolate. I tried putting snd_musiccmd "aplaymidi -p 24:0" into the cfg and it didn't work. I assume that I'd need to put something after the port number to make it work, but I don't know what I'd need to put in there.

Share this post


Link to post

I'd be happy to troubleshoot the problem for you, just ship that sc-88 to [address retracted]

Share this post


Link to post

Nah, I personally want to keep my 88. Besides, I think the problem is related to how I'm configuring the software, not the device.

UPDATE: So I think the MIDI isn't working in crispy cause it doesn't have permission, I looked at the terminal and it keeps spitting out this error:

Spoiler

Cannot connect to port 24:0 - Operation not permitted

 

Edited by Donowa

Share this post


Link to post

could you try in a term "aconnect 14:0 24:0" and then start chocolate-doom-setup and select native midi and try if it plays?

Share this post


Link to post
14 hours ago, Lemonzest said:

could you try in a term "aconnect 14:0 24:0" and then start chocolate-doom-setup and select native midi and try if it plays?

That does nothing, i think you mean aplaymidi -p 24:0 (which is supposed to play the current midi for the level)

 

Also I think I might've figured out one of the possible causes. When Crispy Doom boots up, it says that the SDL audio driver is pulseaudio, and the aplaymidi command uses alsa. I think these 2 might be conflicting with one another, causing aplaymidi to not work. I'm not entirely sure though, I'm pretty new to Linux so you can correct me all you want.

EDIT: Wait nevermind, pulseaudio and alsa aren't conflicting.

Edited by Donowa

Share this post


Link to post

I've used Linux mint before, but I can't help you since I don't know how to. Maybe research?

Share this post


Link to post

I don't use Linux often but I can say I've never had any luck with USB-to-MIDI adapters. A proper audio interface is preferable.

Share this post


Link to post

I haven't used Linux for at least a year now, and I'm not sure this will help you, but what helped me get an old midi-to-usb adapter working with my Roland E-86 synthesizer (my father's, really, thing is almost as old as me) for midi playback was using a program called The Hairless Midi<->Serial Bridge and change the serial port baud rate to match the MIDI standard -- the reason for this is because in general midi-to-usb adapters are really usb serial port adapters, so there's a fun fact for you.

 

Check out these links: https://projectgus.github.io/hairless-midiserial/

http://joost.damad.be/2009/05/how-to-set-serial-port-at-midi-speed-in.html

 

EDIT: Oh, make sure you change the baud rate in hairless-midiserial to 38400 and close the program, then run the commands needed to change your serial port's baud rate before opening it again. Changing the baud rate in hairless-midiserial is something you only have to do once, but you'll need to run the command to change your serial port's rate every time before you run hairless-midiserial for the first time in a session.

 

You could make a script that autostarts when you log into your user but I believe it would require root privileges to run succesfully, and I don't remember how to solve for that (make your user the onwer of the serial port, I guess? I really really don't know).

Edited by QuotePilgrim

Share this post


Link to post

I would check out Hairless Midi, but I don't know where the PPA repo is. I will still look into it, however.

 

Also, get this- aplaymidi has worked before with both the USB to MIDI adapter and fluidsynth. However, for some reason neither work with Crispy or Chocolate when I try to set the aplaymidi command in the cfg file.

Edited by Donowa

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×