I’m considering purchasing and something I’d like to use the pots for is sending sysex messages. Is this possible?
This should be possible:
Configuring pots, encoders, faders, buttons, to send sysex should be fairly trivial. Mind you, I only ever need to work with CCs so I’m not sure of an example I could give.
Do you have an example of what, specifically, you’re trying to achieve? I’ve just received an EF44, EN16, and PO16. I could try to script something up based on your needs (super new to LUA scripting though) to test your use case.
Thanks! I’m looking to modulate the cutoff param on the roland boutique d05. The implementation is supposed to be the same as the d50 and apparently uses sysex instead of cc. I’ve struggled to find the ids for the sysex params I want to change, but this is all part of a broader mission to give myself knobs for the d05 on the cheap
Just gave the D05 MIDI implementation a once over. That is….convoluted to say the least. I’ve never seen anything like it.
I just woke up so I’m reading it in bed but it would appear that all the info is there to be able to program any of those controller elements to transmit what you’re looking for. I’d want to sit down at my computer to give it all a read though. Hard to make sense of that tiny text on a phone.
There is definitely a way to send sysex from the Grid controllers.
The midi implementation for the d05/50 doesn’t have params for sysex AFAIK. You’d need to track that down elsewhere. The midi cc’s don’t control the cutoff. It’s an old school and kinda awkward implementation where most of the useful parameters are set with sysex instead of midi cc
The full, relevant sysex info is here in the parameter guide:
You can definitely send sysex from the controllers. Here, you’ll see the output from a pot turn on a default config for a PO16. Notice the 4th hex value incrementing as I turn the knob:
This is what a MIDI Sysex block looks like:
The ‘val’ variable is the value determined from the pot position and is transmitted on each pot event. So, it should just be a matter of decoding the hex values to send for cutoff frequency.
If you use Chrome (or any other browser that can send/receive MIDI data), someone’s made an editor. You might be able to use something like ‘MIDI-OX’ to sleuth out the sysex messages that each parameter is sending out:
Looks like this isn’t at all doable:
“You can’t change those parameters with CCs (but you knew this already); they’re not designed to be changed on the fly during performance, they’re part of the patch which you would change by uploading an entire new patch in a sysex message. You don’t have to like that, but it’s how the D-50 worked, and they obviously made it a high priority to recreate the D-50 as closely as possible.”
So, while the Grid controllers can send MIDI Sysex through controller events, sysex doesn’t appear to work in that fashion. You would be sending sysex data for a complete patch in a dump instead of updating a single parameter within a patch.
Last comment; you might be able to ‘hack’ aftertouch so you can do filter sweeps. There appears to be a number of destinations for aftertouch (vibrato etc.) that you can set the aftertouch depth to. If you were to zero out AT depth for all parameters accept for ‘TVF Mod - Aftr’, then you could conceivably just use a Grid control to send aftertouch data.
The D05 doesn’t support any sort of external modulation of a lot of its parameters (even the PG-1000 programmer doesn’t seem to work as a full, real-time controller). But, this aftertouch hack might get you some cutoff expression. You’d obviously be sacrificing AT as a mod source for all of the other destinations it could modulate.
Thanks for going so deep on this. Makes sense you actually have to send the whole patch via sysex. I use an online patch editor right now and it’s true that you can not filter sweep on an individual note while it is playing, but changing the patch changes the next note. This still can create some interesting modulations while playing/modulating live.