Troubles with jack2

Hello,

so, I’m not so far away to get zynthian to work on my nanoPi m4v2 (see here also: Questions about zynthian OS automated build system - #9 by le51), but I’m stuck with jack server.
I first started from a desktop installation of armbian, with qjackctl. Everything work well with:

/usr/bin/jackd -r -dalsa -r44100 -p128 -n4 -D -Chw:U192k -Phw:U192k

then I run step by step all the scripts from zynthian-sys/scripts for installing zynthian software (except jack2, linuxsampler that have failed).
Here is my /etc/systemd/system/jack2.service :

[Unit]
Description=JACK2 Audio Server
#After=sound.target

[Service]
Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/dbus/system_bus_socket
Environment=LV2_PATH=/zynthian/zynthian-plugins/lv2:/zynthian/zynthian-my-plugins/lv2:/zynthian/zynthian-data/presets/lv2:/zynthian/zynthian-my-data/presets/lv2
LimitRTPRIO=infinity
LimitMEMLOCK=infinity
ExecStart=/usr/bin/jackd -P 70 -t 2000 -s -dalsa -r44100 -p128 -n4 -D -Chw:U192k -Phw:U192k -X raw
Restart=always
RestartSec=1

[Install]
WantedBy=multi-user.target

But jack won’t start.
I’ve tried to launch it via ssh as root with -v option (verbose):

Failed to connect to session bus for device reservation: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

To bypass device reservation via session bus, set JACK_NO_AUDIO_RESERVATION=1 prior to starting jackd.

Audio device hw:U192k cannot be acquired…

Any advice ?

ok, it’s getting “better” after a dirty hack: in zynthian.service, I’ve commented

#After=jack2.service splash-screen.service
#Requires=jack2.service

then I’ve launched manually via ssh …

  1. UI
  2. jackd
  3. webconf

Problems: I can’t add new layer, but the touch is OK + I’ve got no midi in signals from the step sequencer (wich is usb connected) + a bunch of errors from UI + many Xruns …

But enough for today, will investigate tomorrow.

1 Like

Whats the output of aplay -l ?

Jackd2 MUST be running before zynthian-UI. That’s for sure …

card 0, card 1: dummy, loopback, not shown here
    card 2: realtekrt5651co [realtek,rt5651-codec], device 0: ff890000.i2s-rt5651-aif1 rt5651-aif1-0 [ff890000.i2s-rt5651-aif1 rt5651-aif1-0]
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 3: rockchiphdmi [rockchip,hdmi], device 0: ff8a0000.i2s-i2s-hifi i2s-hifi-0 [ff8a0000.i2s-i2s-hifi i2s-hifi-0]
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 5: U192k [UMC204HD 192k], device 0: USB Audio [USB Audio]
      Subdevices: 1/1
      Subdevice #0: subdevice #0

The command lines parameters I use are the ones that QJackctl use. And jackd start without a hassle when I’m under a regular X session.

Yeah, that’s why UI looks like frozen I imagine. But it’s like an infernal round trip:

=> jackd won’t start because UI is not launched => UI won’t start because jackd is not launched => …

I know that some of you are running zynthian headless, so all that $DISPLAY stuff should not be a problem …

I don’t think that dbus-daemon means that jackd is failing to run.

I do not really understand what you mean. But a quick search show me that this is a recurrent problem when running jack without Xorg.
For now, in my jack2.service, I use:

dbus-run-session /usr/bin/jackd …

as found here on linux-audio forum and it seems to approximately “work”:

  • After boot, I got ERROR screen, no jackd running job
  • systemctl stop zynthian
  • systemctl stop jack2
  • systemctl start jack2 => it starts …
  • systemctl start zynthian => UI starts, but I can’t add a new layer, and a lot of Xruns

:thinking: