Using the system's BPM Setting?

Was searching for the “BPM” Wiki page, but it’s not yet written, so a few questions on using the system BPM setting in my plugin.

I’ve currently got a ModDwarf and a ModDuoX for different instruments, I may require another ModDwarf at some point but not sure that’s still in production, so might be hard to buy another. That’s another story.

So I’m trying the sync the various Mod Devices to a BPM, so was hoping to use the BPM setting of the system, (on my master Mod Device). There’s a BPM setting at the bottom of the Web Interface and I’ve configured it to be set by one of the Device’s Endless Encoders and pressed the “Play” button to kick it off, but I’m not seeing any MIDI events in my plugin. I can change the BPM with the encoder but no event.

My plugin has a midi_in port and that’s receiving MIDI events with the run() code:

	LV2_ATOM_SEQUENCE_FOREACH (looper->midi_input, ev) {
        }

But I’m guessing that there’s another “MIDI Port” for the system events? If that’s the case can someone point me to the port for receiving system MIDI Events?

Connect via USB/MIDI, set the master to “internal” and the slave to “USB” or “MIDI”.
https://wiki.mod.audio/wiki/Device_Settings#Sync_.26_MIDI

I use the plugin to send the “clock” as well as the “start/stop” command.

I’m not sure if this works reliably between 2 mod devices at the moment:

Should be solved soon though.

3 Likes

you need to listen to transport events, not just midi. they are quite different things on the LV2 world.
the ttl side of things also needs to specify it accepts time events.

easiest here might be to look into other plugins that deal with tempo (like the lv2 example metronome) and copy some code.

2 Likes

Thank you both that’s just what I needed. I latched onto BPM and searched for that never thinking of MIDI Settings. And I should have thought of lv2 examples, I kinda treat Mod Devices as their own thing, but at the core of it all it’s just running LV2 plugins so it’s not device specific.

Thanks for taking the time to set me straight.

3 Likes