New Engine: Pure Data

I modified 48Presets so it will receive midi data on the assigned channel. Nothing else was changed except I renamed it to 128Presets. Here is the modified file.128Presets.zip (7.7 MB)

So was this first post not the one that had the instructions how to customize pd-patches for Zynthian? Is it gone?
P.s. Works like a charm with assigning midi-channels :slight_smile:

Ok, I think I need a more detailed “for dummies” explanation. And a dedicated page for integration on the wiki would be great :slight_smile:
What I’ve gathered so far that I’d needed to got thorugh for a step-by-step integration

  • The pd patch needs to have a ctlin object with a cc-number attached for every parameter that needs to be controlled. Are these cc numbers (1, 63, …) just arbitrary numbers or are they THE general cc-numbers of the zynthian controller?
  • The yml file assigns cc and default values for use of the zynth with the patch. Can I also map an external midi-controller to this file? I know I can use midi-learn, but my problem with that is that I specifically need to load those in a snapshot every time. Or is it the idea that the yml file be used for external controllers? I’m confused as to how the zynth-knobs work as a midi-controller in general.
2 Likes

Ok, although not understanding exactly what I’m doing I tried giving it a go. Connected to my zynthian via scp and made a folder in “presets”.
put my patch in it plus a yml-file with mappings.
Reboot -> Doesn’t show up in the list when adding a special layer.
Is there another step I need to take?

EDIT: I managed. I didn’t realize there is a “data” and a “mydata” folder with the presets and that I need to save it in “mydata”. What is the exact difference? I think it’ be good to have a wikipage explaining folderstructure inside a Zynth. I’m privileged through being a linux user and still found it difficult.
EDIT2: And now it’s broken again. I changed some slight values in the patch and now its broken beyond repair :frowning: Can’t find the origins and getting a bit desperate. The patch still works fine on my computer. If I get a GUI of the zynth-pd through putty it starts working again. But only if I add another layer from non-pd like Zynaddsubfx. Also I can not have several pd-layers in there anymore.
Don’t think that makes any difference, but I installed the “cyclone” and “creb” library as externals through the GUI earlier.
Sorry the repetetive cry for help, have a presentation with my pd-patch next week.

1 Like

little off-topic, but I have the same problem with Helm, not sure where to put my presets !

1 Like

Yep. I would like a little more “for dummies” style info about how to get PD patches across to my Zynthian. Perhaps something that involves grabbing a freely available patch (preferably one that involves a few midi control channels) and going through all the steps required to be able to play it on the Zynthian. Thanks!

2 Likes

Hi @emji-1!

You can choose the numbers as you want, but it’s more elegant to follow, as far as you can, the GM list. For instance, you should use CC7 for volume, etc.

If you want, you can choose the CC numbers that fit your MIDI controller and it will be mapped to the parameters. The YML file is for telling to the Zynthian UI what parameters are attached to MIDI CC, so it can generate the knobs interface. If you don’t write this file, the UI won’t show any controller, but the parameters still could be controlled by an external MIDI controller.

Please, could you write this “dummies guide” for the wiki? :wink:

Regards,

Well now that I got some more experience I will try to take my time for that :slight_smile:

1 Like

Helm presets (same for any other LV2-plugin) have to be converted to LV2 format. Then you can copy the presets to the LV2 presets folder in:

/zynthian/zynthian-my-data/presets/LV2

Regards!

1 Like

Hi Martin,
Excuse me for digging up this thread…does this mean you’re capable of using Organelle patches on the Zynthian ? With the same sound profile and all?
Is this possible for every Organelle patch ?
Truth is they’ve got a huge database with tons of interesting patches, being able to integrate them on the Zynthian would be a big step.

some work some dont this: https://llllllll.co/t/norns-mother-organelle-patches-on-norns/30237
is really cool runs most organelle patrches on norns but it is pd based so possible with some work i think. :wink:

And it’s possible to integrate this ‘norns’ software (is it considered as software ? ) in the Zynthian ?

Now’s the moment when you probably realise how little I know about this whole technology…is this what you call Pure Data?

And therefor compatible with the Zynthian OS?

Thanks !

Hey Vincent. Organelle uses pure data patches. In theory all pd-patches can be used on the Zynthian, although there seem to be some hindrances here and there. However I know that pd-patches are again slightly modified to work on an Organelle. So you would need to reverse engineer organelle patches work in pd vanilla. And then modify them in a way again to work on Zynthian which is explained in the wiki.

Norns is again something completely different and is in itself again an OS with a soundengine based on supercollider. I already opened a thread previously since it is known that Norns can run on a raspberry pi. Norns on Zynthian Hardware

Well I guess that answers my initial question; It might be possible but not necessarily for the regular newcomer :space_invader:

Anyway the whole idea isn’t to turn the Zynthian (which I haven’t received for the moment) into some Organelle clone; I would’ve bought an Organelle if that’s what I wanted. It started wondering if the possibilities of the Zynthian might be compared to those of the latter.

Bumping this thread to ask if there is any progress. Any news on that Pd on Zynthian for dummies guide? I’m trying to write some simple Pd patches (also new to Pd) but I have no idea whatsoever on how to adapt those to work with Zynthian. Is there a template patch that I could add to a patch that I write to incorporate stuff such as volume control and the encoders?

Or should I just add the yml file to the folder?

Hello @dhoinjo this is something people have been discussing on this thread also Adding Pure Data synths ....(and Csound?)

I am currently tinkering with CTLINs and yml files and trying to load a PD patch into my Zynthian but so far have not managed to make it work. I would be delighted to write a “for dummies like myself” guide to this process when I finally get it sorted, because there’s a lot of PD content out there.

Check out Automatonism https://www.automatonism.com/ which provides higher level abstractions (modules) to facilitate your PD patching process. I’d be delighted if I could get Automatonism patches to port into the Zyn, and delighted to share that knowledge.

Please check out the good advice from people way smarter than me in that other PD thread. Maybe you’ll have a breakthrough.

I added automationism by putting it’s zip as a preset via webconf, and you can forward the interface to a computer to edit the patches

1 Like

Hi @guys!
Why don’t take a look to the existing working examples? There is a few of them, some using Automationism:

Regards,

1 Like

I thought the following post from the Daisy forum might be of interest to Zynthianers who use Pure Data, even though we don’t have the same issues that Daisy users have with Pure Data since we have the luxury of running on the Raspberry Pi with an Operating System and oodles of memory:

[Daisy Forums] [Integrations/Pure Data] Plugdata - new PD editor that can flash straight to Daisy

January 11

Yesterday we released plugdata v0.6.3 which has integration with heavy/hvcc → Release v0.6.3 · plugdata-team/plugdata · GitHub

Plugdata is a new interface and user experience for pure data, that can also run as a plugin.

It includes a Compiled mode that will warn you when you use incompatible objects. After which you can retrieve the compiler toolchain for your platform (about 1.5GB) and then either export just C++ code, flash a Daisy device or output plugins created with DPF.

We have included the typical target boards and also one for Simple (which simply has all the analog control pins mapped). You can also select a custom board.json for your specific hardware setup.
You can then either output the Daisy source code, create a binary or flash directly to your Daisy!

Just like pd2dsy it has some options for optimizing for RAM and ROM which may be required based on the size of your patch or if you use large memory buffers (for delays and such).

|autoxauto

Would love to hear what people think about this integration and what you come up with for Daisy.

1 Like