I want to share my setup for Octatrack / “The Drop” style scenes on Overbridge supported devices.
Here is a quick demo on the Digitakt 1
The idea is that we get in depth machine control by manipulating via the Elektron Overbridge + VST
The current version is basically just Octatrack style scenes + “The Drop” style automated sweeps.
I’ve been using Cursor and a couple different models:
Opus 4.8 for design + solving trickier problems
Composer 2.5 (or any smaller one) for implementing smaller features
Usually I’ll throw the smaller models at something for a bit and if they cannot sort it out throw a larger one at it.
I am totally new to vst3 spec, core audio, etc, and I am sure a little background knowledge there would go a long way.
For this project, because it is a lightweight vst host (almost a lightweight daw) I would reference source code of other open source daws. That helped me out of a couple corners.
Just wondering why overbridge is needed , is it not using midi cc’s and usb midi … it’d be compatible with any device that sends / receives midi cc without overbridge ? Is it the specific pattern / bank info ?
I did a little VST3 instrument in the JUCE framework also with AI. I used codex in VSCode and put it on itch.io “Singulartisynth” but I fell into the trap that AI also says the ideas you throw at it are super cool and stuff and just at the end I realised I had build an VST instrument basically on NFT base idea xD my idea was every licence is a single sound…but yeah thats NFT/lootbox BS so there is that…but still was cool to create a complete product with AI
Snapshotting ALL params on the device
When moving from base parameter set (no scene) to scene 1, we need to know the start values of the parameters otherwise we risk jumps.
There is no way to poll the device to have it dump all the midi values it contains.
Midi jumps (pickup mode)
I haven’t been successful getting pickup to work on Elektron devices with external controllers, and even if supported it’s not a viable solution to avoid jumps.
Imagine this case:
Move the scene fader half way
adjust an individual param
Continue moving the master scene fader
With just mifi we will get jumps, or abandon that param on step 3.
With vst, we know the last val I manually adjusted to, and can interpolate from the new value smoothly when the scene fader moves again.
VST spec creates easy (and auto generated) mappings
This is just dev qol, I don’t need to worry about what channels or cc to send, whether to use nprm or other.
The controls are registered in the VST itself, it is trivially easy to know what I can control and how.
We actually DO use midi a couple places:
To consume pattern / bank changes, that data is oddly enough not surfaced in the vst (from what I can tell)
To consume clock and transport for automated fader sweeps
That being said, there is nothing wrong with the midi approach, which is how the drop is built, and it’s obviously a super cool machine.
There is room to expand this to support generic midi as well, and support other devices (as you suggest)
But for elektron specifically we can squeeze out a couple finishing touches via VST.
Seems a little over my head right now but bumping because this seems like a great project and I appreciate the work you’re doing on it. I’ve just started using a fader midi controller with digitakt 1 and having a lot of fun. Keen to come back to this at some point and to experiment with an octa-style fader, seems like it could expand the capabilities a lot.