23volts 1.2.0 Beta

Hello there,

I’m glad to announce my first contribution and the arrival of the 23volts module family to the wonderful land of VCVRack.

  • Cells is a deterministic gate sequencer based on Conway’s game of life algorithm.

  • ClockM8 is a polyphonic, quantized, clock modulator designed for extreme clock modulation.

  • Morph is an XY controller which can morph between 4 different snapshots.

  • Mem is a Sample&Hold module with internal memory up to 16K samples.

  • Merge8 is an 8 channel polyphonic merger.

  • Split8 is an 8 channel polyphonic splitter.

  • SwitchN1 is a polyphonic N to 1 sequential switch.

It’s been a long ride, learning C++, SVG panel design and Rack API, which was made definitely enjoyable due to the amount of open source plugins there on github (I won’t give any names because my VCV-Examples folder is quite large… but guys, you know who you are… thank you!! :slight_smile: )

The plugin will be available soon in the plugin manager. For those on osx, a compiled version is available there :

OSX Release

It requires VCV version 1.1.6 or above.

Don’t hesitate to report any issue here or on Github.

Have fun!

15 Likes

Proper

1 Like

Very nice! Just wanted to code a polyphonic sequential switch, but you did it already. :slight_smile:

1 Like

Build fails here on linux (building with rack 1.1.5):

src/Mem.cpp: In member function ‘virtual void Mem::dataFromJson(json_t*)’:
src/Mem.cpp:294:67: error: too few arguments to function ‘uint8_t* rack::string::fromBase64(const string&, size_t*)’
   std::vector<uint8_t> memoryVector = string::fromBase64(memoryStr);
                                                                   ^
In file included from ../../include/rack.hpp:6:0,
                 from src/23volts.hpp:1,
                 from src/Mem.cpp:1:
../../include/string.hpp:68:10: note: declared here
 uint8_t* fromBase64(const std::string& str, size_t* outLen);
          ^~~~~~~~~~
../../compile.mk:61: recipe for target 'build/src/Mem.cpp.o' failed
make: *** [build/src/Mem.cpp.o] Error 1

It needs the 1.1.6 SDK as this method signature has changed since 1.1.5

1 Like

Thought that might be the issue, hence mentioning 1.1.5.

@Vortico are there plans to incorporate module browser caching into the official release and if so when? Reluctant to move on from the modified 1.1.5 as the browser full screen on 4K is just too sluggish, my system though not new is not slow, others must suffer with it too.

1 Like

Can someone provide a win build? I really would like to test these.

I didn’t test the modules thoroughly or anything, just confirmed they show up in the Rack 1.1.6 browser :

4 Likes

Nice! :slightly_smiling_face:

1 Like

Available in plugin manager :sunny:

4 Likes

Version 1.1.0 is available in the plugin manager, with a few new modules :

  • Multimap is a MIDI map utility with 128 assignment banks, so it can map 16 MIDI controllers to up to 2048 vcv parameters. Its polyphonic input can be used as a CV to MIDI converter to automate hardware, and it has a polyphonic CV output which can turns it into a sequencer as well when paired with a sequential switch.

  • MIDI-PC is a midi utility that sends and receive MIDI program change messages.

  • MonoPoly, Split4, Merge4, PolyMerge and PolySplit are more 3HP polyphonic utilities aimed at manipulating poly signals.

On the existing module front, Morph had a nice workflow upgrade, and is now able to directly assign VCV parameters and supports MIDI learn for its X & Y axis.

As usual, don’t hesitate to report issue, or suggestions, it really heps !

12 Likes

These are awesome! Multimap is very useful for my workflow. Thank you for this.

Outstanding!

1 Like

You’re welcome. Glad you enjoy it !

New module added to the 23volts collection : SwitchN2.

SwitchN2 is a dual polyphonic sequential switch with a probability input. It can both function as two single SwitchN1 voices, and alternate between each voice relative to the probability settings.

This is a beta release, available for all platforms on Github

3 Likes