It was recently open-sourced
101 != 301. The former is a sequencer, the latter is a DSP device.
I’d love to see/use that.
I would like it to have built in OSC via [udp|tcp]/IP support, to enable remote control from OpenStageControl - and an interface that makes it useable on OpenStageControl.
I have a 15" android touchscreen device (1920x1080) with 10 point multitouch that i would like to use with an “ER-101 like” sequencer.
To clarify: I don’t plan to write specific MIDI functionality. Rather, I want to expose the functionality such that you can use Stoermelder MIDI-CAT or the like to map your MIDI controller to the module effectively and have it make sense to your hands.
nysthi::microseq2 is very similar to what you are going to build (but mc4 oriented)
You can just use one of the cats: osc’elot/midicat
I was just thinking, that there could be benefits if a module was developed with OSC control in mind from the beginning.
But you’re probably right, I can’t think of something I can’t do with the “cats” right now.
I just tried planning a useable OSCilot / Open Stage Control configuration to interact with “Foundry” - I can’t map the piano keys, and I don’t know how to get feedback indicating the state of CV2/p/r for example.
If it was written with OSC in it’s inner workings, I guess I could have blinking LED’s on my tablet, use multitouch to enter chords, etc.
Yes you are right, currently it can only pick up control declared as params in VCV. Maybe in v2.0 there may be a way to access these
And I just can’t get the encoders or piano keys to work … I think i have solved the 4/8/cust switch, but it’s not implemented yet.
foundry-OSC.vcv (44.8 KB)
OpenStageControl json file Foundry.json (13.0 KB)
Hmm this may be a bug, I will look into it
I don’t think so - The imprompt modules are different, CV-MAP cannot turn the knobs either - and the piano is mouseover x,y read i’m afraid.
Ah I see, maybe 2.0 might change some things we’ll see. For the piano, you should just use OpenStage to send midi and use a midi-cv module so you can patch it to foundry or any other.
Possibly one of the biggest technical hurdles is the one specifically relating to the user interface.
In the interest of making this module accessible to OSC/Stoermelder’s MIDI-CAT, I need to allow the knobs (and possibly the buttons but we’ll see) to be multifunction – one knob needs to be able to control the value of different internal variables, some alike and some different.
The one instance I can think of in VCV Rack is the blend/spread/feedback/reverb knob on Clouds – but in that case there are actually four knobs. I would need hundreds of knobs if I followed that strategy, which also makes it much less useful when exposed to MIDI, since MIDI-CAT can only see the individual knobs.
Being a novice at the alien world of C++, I’m trying to work out how to pull and place the value at will. If anyone more experienced can give me a tip on how to resolve the issue that getValue() then setValue() leads to infinite accumulation, I would love to hear it.
(I’m moderately sure the problem stems from the engine smoothing param values, which means I need a different approach to getting and/or resetting the value.)
I figured it out! Partly, anyway.
Now working on how to make this knob effectively endless. May need to collaborate with one of y’all on how this works with OSC, given that I don’t use OSC.
Can you do the equivalent of relative MIDI with OSC?
@Jens.Peter.Nielsen if you had a choice between a pure-CV interface or an interface with plain old knobs and buttons, which would you be most interested in?
I’ve discovered why OSC/MIDI can’t access the endless encoders on e.g. Impromptu Foundry. From what I understand, it’s an engine-deep issue where none of the OSC/MIDI map utilities have the ability to relatively increment or decrement parameters. Since they can’t map a finite set of data to the infinite range of the endless knobs, they instead fail to 0. @TheModularMind you may be interested in this.
For MIDI, you could use Stoermelder’s MIDI-CAT with a pure CV interface to increment and decrement values for the various parameters. I do not know if the expander for OSCelot allows for increment/decrement CV controls but that could be an alternative.
For what it’s worth, I’m more interested in a pure CV interface simply because it allows for simpler and easier data entry and can be directly controlled through the relative MIDI encoders on my device.
Ah, I don’t know. I think i would prefer the third option - a sample accurate sequencing engine in VCV, that comes with only remote OSC control - and a great interface in OpenStageControl You can connect midi controllers, knobs and dials to Open Stage Control - pre-process and send via udp/tcp OSC to the sequencer.
There’s allready so many ways to do sequencing. Some support control via OSC from a tablet - some do not.
So, Instead of doing a great deal of thinking about developing one, I think I pretty much have what I need allready in the modules available for VCVrack, but thank you for asking
An osc “command” is an adress, ex. “/sequencer/knob1” followed by properties of type string, int32 or float32 (and more - see OSC spec 1_0 )
In Open Stage Control, there’s an encoder widget that can send ticks, -1 or +1 integers depending of the direction of turning.
Or you can develop your own controls, using XY widgets (that can be made invisible) and scripting.