PS-PurrSoftware Plugin Modules

Thanks for sharing everything Ken. You create the one of my favorite module for VCV Rack ever. Meander is on top of my personal list of VCV Rack modules. It is a pity that it happened. I respect and understand your decision. I can continue to enjoy what you left us. All the best and lots of fun making music for the future. Merry Christmas and may the next year was much better than this. Cheers

I think Meander is amazing, and thank you to bring it to VCV. Are you working in something else, music or soft related? if I can ask

Sorry, I accidentally deleted my post while trying to copy it over to my development topic.

I am tentatively planning to attempt to migrate my PurrSoftware Meander plugin/module to V2 after V2 launches. As I announced in December of 2020, I “suspended” development. This plugin is not abandoned. The anticipated effort to migrate Meander is so great that I do not want to do it piecemeal and more than once.

Migrating Meander to V2 boils down to a few big issues:

Since Meander started out as a Windows app in 1988, I essentially turned the app into a plugin/module. To do this, I had to make all of the app variables global for V1 as the module and the module widget both needed to access the variables. The source code for the module amounts to just under 12,000 lines including just under 2000 of those being global variables.
Due to the use of globals, I had to make Meander operate as a singleton with only one instance of the single module plugin allowed.
A dynamic GUI circle of 5ths required that the GUI graphics mostly be runtime procedural with a very sparse SVG panel graphic.
To duplicate the Windows app, the GUI needed to display parameter values on the panel.
Upon users request, I made all parameters settable via CV with values once again rendered to the panel. Since the SVG panel image is basically just the plugin module logo, all input and output jacks as well as parameter knobs, etc., had to be generated procedurally at runtime.

Bottom line, Meander is a very complex module done in non-standard ways.

My approach to migrating to V2 will be to first migrate the existing V1 singleton module. If that works, I will try to figure out a way to not use global variables so that multiple module instances can be instantiated. My V1 experiments over the past couple of months have not been successful in moving all variables to the module instance level. The module code works correctly but the module widget code has referencing errors whatever I try.

If you are interested in me migrating Meander to V2, please like this post so that I have some idea that others want Meander migrated, without cluttering up this topic.

I am going to attempt to maintain a low profile, focusing on positivity, encouragement, respect, kindness, acceptance and all of those common sense but not-always commonly practiced values. Constructive suggestions are welcome.

Ken (cyberpunken)

Thanks for all the work you kindly put in, at least for some of us respect and kindness are still important

Just want to say that Meander is a gem of a module and I wish you the best!

Hi Ken. I’ll never stops keep my thumbs close for your module. This is one of the best module in VCV Rack ever in my humble opinion. Cheers P.s. It would be nice to see Meander in dark mode, but it’s not necessary if it would complicate your work.

Hi Ghalebor. Thank you for the kind words about Meander. I also have really enjoyed the videos you have posted where you used Meander in your works.

Ken

Question: I can’t seem to find a way to make Meander sync to Clocked any time Clocked is synced to an external BPM. My master clock comes from my ES-9 module, and Clocked must be at x4 to sync properly. But actually it seems that anything attached to BPM will stop Meander from clock syncing. I even tried chaining two Clocked modules to “convert” the clock to 8x.

For better or worse, this is the by design behavior of the Meander clock inputs. If you have not read the Meander manual, there is a paragraph in the manual devoted just to clock inputs and the complexity of getting BPM, clock ticks and time signature working together. Since when I was porting Meander to VCV 1.0 there was no apparent standard for BPM CV control, I followed the Impromptu CLOCKED protocol. Yes, any clock inputs connected to Meander will stop the Meander internal clock.

I may revisit this at some point in time but currently have no firm plan to do so.

I’m not sure if there is any trick that could be done with CLOCKED and Meander that would make this work as-is. But, the CLOCKED BPM out must be connected to the Meander BPM in and the CLOCKED clock output must be set to 8X and connected to the Meander external clock input. It is recommended to also connect the “reset” connections so that everything is synced properly.

By the way, what mode do you have CLOCKED set to? Meander assumes that CLOCKED is at least outputting BPM in CV mode. I am not certain what CLOCKED does to the BPM output mode if the input mode is something other than CV.

There’s an option menu

I do not see this in the option menu for the CLOCKED currently in the library. Is it actually in the library yet? What Marc said seems to imply that perhaps it is only available from GitHub.

Oh sorry, not in the library version.

@marc_boule

Hi Marc. Will the feature request to CLOCKED that Jens referenced make its way to the library in your next release?

I still have not sorted this out, but it looks like my Meander module requires that CLOCKED output BPM in CV format even it the CLOCKED BPM input mode is not set to CV. Unless it already does that. An option menu is a fine way to handle this.

Sorry, that I cannot tell for sure what the status of this request above is. Since you marked it as done, I suspect it will be in the next library release, unless this was done just for experimental purposes.

Thanks, Ken

So to sum up, I need the input of Clocked in x4, and a clk out at x8, and the ability to keep BPM out in CV mode while the input is x4. The current Library version doesn’t do that.

When you say CLOCKED needs the BPM input at x4, what does that mean? Does it mean mode “P 4”? Or does it mean something more complicated? What CLOCKED BPM mode setting are you using?

Hey Ken,

Sure no problem, I’ll put in a request today, so it should make the next round of library updates. Cheers!

Marc

Thank you Marc!

Also, to help me understand your setup, are you using the VCV Rack V2 standalone or the VST? If in the standalone, how are you getting your ES9 clock into the Rack patch? MIDI->CV? Sorry, for my ignorance, but is your ES-9 “module” hardware or Rack plugin module?

ES-9 is a DC coupled interface. So it will be accessed as a device in the VCV Audio module(s). The clock will come in as an audio pulse (at 4ppqn/16th note by the sound of it.)