Pd crashing


I am trying to track down a problem with pd crashing in such a way that a hardware reboot is required. A UI reboot stops the stuck notes, but the synth cannot be restarted without a full reboot. There are no running pd processes in ps, so I’m guessing jack is locked up or something?

Anyway, I’m trying to get more info, and so I have added the -stderr flag to the startup command for pure data in zynthian_engine_puredata.py, and set the logging to DEBUG with the ZYNTHIAN_LOG_LEVEL envar set to 10, but can’t see where the logging module output is actually going.

It’s probably obvious, but it would be great if someone could help me out, and point me at stderr and stdout for the pd zynthian engine please! :smiley:


Maman ? Ca veut dire quoi, PD ?

1 Like

Tu ne pouvais pas la rater celle-là :rofl:

Rires… j’aurais pu me retenir, c’est vrai…

Nan… En fait nan, j’aurais pas réussi…

It will be going to the journal, over ssh run journalctl -fl and monitor the output.

1 Like

I’m not seeing any of the pd stderr in the journal, but I did see a lot of this after I locked up the Zynthian.

Jan 24 16:43:32 zynthian startx[432]: ERROR:zynthian_autoconnect: Jack Audio XRUN!

I do see the pd stderr in the putty shell when I run pd from the command line, so I’m going to speculate that pexpect isn’t grabbing the output from the pd process stdout and stderr, or it in some other way isn’t putting it into the journal. I’m more famillar with subprocess module than pexpect, so just guessing there. I might try adding a new handler to logging so I can control output better while debugging.

While I look for further info, I will add that killall jackd followed by jackd $JACKD_OPTIONS didn’t allow any synth to work again after rebooting the Zynthian UI. (I tried my synth, some generative pd synths, and a regular ZynAddSubFX.) None made a sound. Jackd definitely seems to be locked up. Eventually the UI wouldn’t even restart, and a full hardware reboot was required (even had to pull the power plug cause Ctrl-Home wouldn’t work).

Maybe there’s a way to restart jackd when "REMOVE ALL"is called form the Layer list? Anyway, I’ll keep trying to get the output from pd, and report back later.

Hmm. I hacked in some logging code on my Pi, broke it, and reverted. That’s a truly awful way to develop code changes, so I looked into getting myself a proper Zynthian dev environment. I’m not in a position to set up an emulator as described here right now, so I think I’m going to log a ticket to get pd log output and crash info.