M8c Dirtywave Headless in Patchbox / audio aouting

Hi,

i am trying to run m8c on patchbox. What i try is to add a USB soundcard (in this case a teensy 4.1 with the m8c firmware) so that the audio from this soundcard gets outputted on my main soundcard (also USB).

On the m8c documentation this is done like this:

aplay output:

pi@raspberrypi:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: M8 [M8], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: vc4hdmi [vc4-hdmi], device 0: MAI PCM vc4-hdmi-hifi-0 [MAI PCM vc4-hdmi-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: v10 [AudioQuest DragonFly Red v1.0], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0

####################

Start JACK server and route audio
jackd -d alsa -d hw:M8 -r44100 -p512 &

####################

create a virtual port:
alsa_out -j m8out -d hw:3 -r 44100 &

#####################

After the virtual port has been created, we need to connect it to the M8 USB Audio capture device.

jack_connect system:capture_1 m8out:playback_1
jack_connect system:capture_2 m8out:playback_2

######################

On a clean raspian this works, but how can i recreate this on patchbox?

Dirk

What does not work on Patchbox OS in particular? Are you getting some error messages?

Have you figured out how to route M8 USB audio to pisound card output?

Thanks

hi there trying this today but getting these errors

patch@patchbox:~ $
jackd -d alsa -d hw:M8 -r 44100 -p256 &
alsa_out -j m8out -d hw:0 -r 44100 &
jack_connect system:capture_1 m8out:playback_1
jack_connect system:capture_2 m8out:playback_2
[1] 2802
[2] 2803
jackdmp 1.9.17
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2016 Grame.
Copyright 2016-2021 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
ERROR m8out:playback_1 not a valid port
Capture open error: Device or resource busy
JACK server starting in realtime mode with priority 10
self-connect-mode is “Don’t restrict self connect requests”
ERROR m8out:playback_2 not a valid port
[2]+ Exit 20 alsa_out -j m8out -d hw:0 -r 44100
patch@patchbox:~ $ Allocate: can’t check in named futex name = jack_sem.default_ system err = Permission denied
Cannot allocate synchro
Cannot allocate internal client for driver
Cannot initialize driver
JackServer::Open failed with -1
Failed to open server

any ideas would be greatfully received. works on a stock raspiOs :slight_smile:

It would be great to have a module for the M8! :slight_smile:

2 Likes

These are the errors you should sort out first.

Use jack_lsp -A to see the available ports and names.

Also make sure that the audio devices involved are not in use by any other application. Jack wants to get exclusive access to hardware, and share it with other processes through its own interfaces.

2 Likes

I run m8c with Patchbox. It works very well, but you cannot use the audio config from m8c because Patchbox expects the main audio output to be already connected and JACK starts on boot.

Here’s how I’ve done: https://github.com/RowdyVoyeur/m8c-rpi4

Hope this helps. If you need help reach out on Reddit or Discord.

4 Likes

awsome works like a dream has anyone gotten the touch screen working on m8c. :slight_smile:

Awesome! Happy to help.

I think the touch screen is an exclusive feature of the hardware. But with this setup you can connect any midi device, which will basically do the same and much more.

hi there did you manage to get audio in to work?

Yes. There are 2 audio ins: one from the audio interface, which is the default audio input and can be routed to the headless M8; the other audio in comes from the MC-101 and it’s USB audio, since the MC is class compliant. The USB audio cannot be routed to the headless M8, otherwise would create a feedback loop. The USB audio is synced with the other audio sources with the help of Alsa. You can see how everything is routed in this script: https://github.com/RowdyVoyeur/m8c-rpi4/blob/main/m8c.sh

my mistake forgot to unmute in alsamixer. thanks again this is awsome.

You’re welcome. Glad you found the issue. Have fun!

There is now: GitHub - RowdyVoyeur/m8c-rpi4-module: A m8c-rpi4 module for Patchbox OS

1 Like

Thanks a lot!

Has anybody got it to work with pisound audio and midi interface (which only runs at 48Khz)?

I know it’s a bit late, but I have Pisound perfectly working with m8c, using the m8c-rpi4-module

2 Likes