[PD] A little help in automating pd?

marius schebella marius.schebella at gmail.com
Sat May 5 20:45:07 CEST 2007

Hi Daniel,

I don't know if it has advantages, but it is possoble to open/close 
patches from another patch. Maybe an advantage would be that it is 
faster, because you don't have to resart pd. but I don't know how to 
handle crashes... anyway, have a look at 
you open a patch by using a message to pd (starting with ";pd").
the first argument is open, the second the patchname and the third the 
directory. to close you give the argument menuclose and then the prefix 
"pd-" and the patchname. some time ago it was not possible to use 
abbreviations for directories (like a dot). maybe this works now. but 
you can always use the full path name. regarding closing, many people 
are talking about a "closebang" but I am not sure if that is about 
shutting down pd or closing a patch. it should provide a clean shutdown. 
  maybe this affects serial connections? I don't know. For me it worked 
the way I described it above and I had no problems.
[that is a message(
[;pd open mypatch.pd /home/marius/pd(
[;pd menuclose pd-mypatch.pd(


Daniel Wilcox wrote:
> Hi,
> So this is my first post to the list.
> back story:
> I'm running pd in Linux on a small wearable computer.  I do not
> use a screen, mouse, or keyboard, just an arduino box with a button
> and some other doo dads to control patch loading / activation.
> I've successfully automated pd in Windows using a python windows
> testing library to grab widgets and send keys to applications, but the Gnome
> alternative cannot see tcl/tk widgets ... I'm better off running without 
> a gui anyway. :P
> I've hacked a quick controller patch using the ;open message for a show, 
> but that was only
> a temp fix as I have no way to close patches from within pd ... or is 
> there?  I do not
> want to have to open an entire set of patches at once as my machine only 
> has 256 Mb of ram
> and, if I start using lots of samples, this could be a problem.
> So now I'm exec launching and SIGINT'ing pd in C :
> - lauch pd with the current patch and remember the process id
> - the patch contains an osc object to receive all of my controllers
> - sigint pd when I'm done (btw Whats the cleanest kill signal to send?)
> Now my questions are:
> - Is there a built in way to close an open pd patch from within pd ...?
> My thinking is that I can open pd with a small control patch that 
> receives messages to open and close
> patches.
> - If not, has anyone made an automation object? Would anyone be 
> interested if I attempted
> to write one?
> - Does having a built-in method to do this provide any advantage over my 
> current solution of launching/killing pd?
> The advantage I have now is that I can monitor the running status of pd 
> so if it crashes, which it has done when using
> the aforementioned temp hack, I can safely kill and restart on the 
> current patch.
> Thanks!
> -- 
> Dan Wilcox
> danomatika
> www.robotcowboy.com <http://www.robotcowboy.com>
> ------------------------------------------------------------------------
> _______________________________________________
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list

More information about the Pd-list mailing list