VCV Prototype and Pure Data


Is anyone here using the VCV Prototype and Pure Data? I’m looking for more examples or tutorials, but can’t seem to find any, except for the 3 examples included when you install the module.

I think I have a basic understanding, but a few things aren’t clear to me. For example, looking at the source code for the module, it seems you can display short messages in the 2nd. line of text by sending “display …” to Prototype, but I also see something about sending “error” in the source code:

const std::map<std::string, int> LibPDEngine::_utility_map{
	{ "display", 0 },
	{ "error:", 1 }

However, when I tried sending “error …” to Prototype, nothing happened.

Also, when I tried to set the colour of the buttons and LED’s at load time (using Pure Data’s [loadbang]), nothing happened. I can see this being done in one of the examples, rainbow.pd, but when I tried to do something similar, it didn’t work.

Finally, it seems you can query Prototype to get sample rate, sample time and block size using Lua or JavaScript, but I don’t see how you would do that in Pure Data. Maybe it just isn’t supported in PD.

Anyway, I’d be curious just to see what other people are using it for.


Well, I found the answer to my first question. I was missing the colon in “error: …”. I don’t know if this is just a mistake in the source code. Why should the colon be required in “error: …” but not “display …”? Anyway, they both seem to do the same thing, at least visually. I thought “error” might cause the message to be high-lighted in some way.

Did a similar question few days ago…tbh seems like no one cares about PD.

Or maybe Pure Data users don’t care (or know) about VCV Rack?

that too. anyway, only reason i’d use pd inside vcv is to have more efficient modules, since vcv can do almost anything PD does. Example:

  • 6 independent sine oscillator with fm input
  • granular effect;
  • 6 channel looper;

That’s why I’m curious about what other people are using it for. I’m not even sure there’s any efficiency to be gained. It probably depends on what the particular module is doing and how well it was designed.

A search for “pure data vcv rack” on YouTube indicates otherwise. :slight_smile:

I’m using Pd for its GEM support, manipulating video in Pd with control data (OSC messages) coming from VCV Rack. I suppose I could keep everything in Pd but I prefer using VCV Rack for the audio synthesis.

1 Like

OK, but I was specifically looking for examples of VCV Prototype and Pure Data, not VCV Rack and Pure Data communicating over OSC. They’re not the same thing. Besides, most videos on YouTube just show screen shots while the sound plays, without attaching the patch or explaining how it works. They may be interesting, but they’re not very helpful for learning.

Maybe OSC is a better alternative than VCV Prototype. It’s certainly more flexible, but I don’t know if it’s fast enough to handle data at audio sampling rates.

Sorry, I missed that you were specifically looking for its use with Prototype. I did a few experiments with that module, simple stuff that worked all right (playing with the examples, IIRC). However, my purposes are better served by an OSC connection between the two environments. Good luck with your research, there are so many possibilities. :slight_smile:

Thanks. I suspect I’ll do the same, and/or send audio data through virtual cables (Jack or DDMF). I just want to play around with Prototype a bit.

That’s also what I would think. Certainly in VCV there are modules that do “the same thing” as each other, but can be at least 10 times different in CPU usage.

There are some eurorack modules that can be programmed using puredata (see Bela and Salt for example), ant I think they’ll increase in popularity. I think it is way more easy to program a module on Pure Data (providing you have some fixed controls, inputs and outputs that you can refer in the PD project) than writing a plugin in C++. This is especially true for prototyping and experimenting. It’s an “intermediate” step between using already made modules and programming a plugin from scratch (or using javascript). Not to mention other hardware that uses the same approach (see Critter & Guitari Organelle).

Final note: I just found in this moment what “VCV Prototype” exactly is and it seems great for sketching high level functions / generators :slight_smile:


If I understand correctly, you’re referring to hardware modules that can be programmed in Pure Data. But I was asking about modules in VCV Rack. The only one I know of that can be programmed in Pure Data (or any other computer language) is VCV Prototype. Are there others?