Maybe interesting for other people encountering this (type of) problem:
I used these steps to let the patch start when RPi boots up:
(I changed the /myscipt.py into the Pd-patch)
Using "systemctl status myscript.service" I could see the output of Pd from the patch that started when RPi boots up. At first it didn't work, and I couldn't see my errors, but after a while it worked. Don't know if I changed anything which could cause it to happen.
Okay, I got it working when starting up from Terminal. But I still don't know what's going on.
When I open the patch (with a pd~) from Terminal with "-nogui -nrt" it works.
When I open it from Terminal with "-nogui -nrt -nosleep" I get an 'audio I/O stuck' error.
When the patch runs from startup with "-nogui -nrt" OR "-nogui -nrt -nosleep" it doesn't work. Again it stops when opening the pd~ subpatch.
The funny thing is that when I don't have a pd~ object, but just osc~ the patch WON'T open when using '-nosleep' from Terminal somehow.
But it DOES work if I'm using "-nosleep" when the patch runs from start-up.
Can anyone shine some light on the start-up flags? A link to more in-depth information than what the Pd-site says or so? And does anybody know why Pd reacts different when a patch opens from start-up compared to when opening from Terminal?
Yes it does!
I was just foolish enough to let the pd~ subpatch open with a GUI (with XQuartz/X11 forwarding).
I applied the -nrt -nogui -nosleep flags for Pd as standard flags and got some errors such as:
error: audio I/O stuck... closing audio
ALSA input error (snd_pcm_open): No such file or directory
Thanks, now I've got something to work with.
Sorry, slow response. Went to a festival in the mean-time.
Thanks for you reply alexandros. And -verbose could help, but I'm starting in nogui mode, so I can't see the output of the Pd-window. There's probably an easy solution for this, but I just can't find it.
Hi everyone, I'm having some difficulties with how Pure Data starts up on a (headless) Raspberry Pi 3.
I'm using a Raspberry Pi 3 Model B 1 GB that boots up with a Pure Data patch.
When it's a patch without the "pd~" object everything goes fine.
However, when the pd~subpatch starts, it it crashes.
As a buffer, the loadbang that instantiates the pd~ subpatch is delayed with 8000 ms.
When Pd starts I can hear a little bit of noise, but after 8 seconds, when the subpatch should open, it goes completely silent.
I also see in htop that Pd has stopped.
To get the best performance I start up Pd with -nosleep -nrt -nogui and run in 22050 Hz. When I open up the Pd-file from the Terminal with these flags it works, and I can hear sound so there's nothing wrong with the patch. (it's also a really simple one for testing purposes).
The patch pd~ refers to is in the same folder als the startup-patch. (I've noticed that that's necessary, same goes for files/abstractions you're linking to in 'Path'. You need to put them in the same folder)
I want to use pd~ to get better performances, and when opening patches from the Terminal I have noticed a substantial difference.
I have tried using more and/or larger delays after loadbang in the main patch as well as in the subpatches but I couldn't come up with something that worked.
Anyone has an idea what to try? Or can someone explain how to keep a file with the errors Pd gave or how to send these error-messages to the Terminal line? I know there is [shell] but I don't know how how to use it in this way.
I'm no Linux or RPi expoert so any help is welcome. (I also asked this on the RP-forum but got no response yet)