MIDI / SYSex programming guides / info?

Recording Techniques, People Skills, Gear, Recording Spaces, Computers, and DIY

Moderators: drumsound, tomb

Post Reply
User avatar
alexdingley
buyin' gear
Posts: 578
Joined: Fri Feb 13, 2004 10:00 am
Location: Greater Philadelphia Area
Contact:

MIDI / SYSex programming guides / info?

Post by alexdingley » Mon Jul 27, 2020 7:37 pm

Hi!

I've been doing basic (and maybe not so basic) MIDI sequencing in my recording work since the mid-90's... but I've never gotten really advanced in the ways of controlling my external devices via SysEx commands. I've used SysEx dumps to back-up my presets / recall them... but what I'm really interested to do is program/automate certain parameters of a hardware synth that aren't necessarily on the standard CC# map.

For instance... I have a big 88-key piano w/ a few hundred sounds in it. Also... this keyboard has a lovely 4-band EQ / compressor with front facing knobs. I can certainly enjoy them live, but I also might want to draw automatons for these in Logic. I read the manual, and there are MIDI SysEx commands for many of these "not-user-facing" parameters... but I'll need to configure my DAW to send the commands. Logic has a pretty deep ability to build knobs/faders in the Environment window, for controlling hardware synths, but you (sometimes) have to go beyond the 128 CC#'s to tell a button/fader to send SysEx values/strings. Knowing how to set these strings up (even when the device manual gives me the string) is still really puzzling.

If anyone knows a good book / online course / video series that can help me get savvy on Logic SysEx editing, I'd love to read through it/ watch it.

I could also imagine this being useful to automate (via MIDI) parameters of external hardware FX processors. Like changing a PCM42 delay time PCM80 pre-delay value, during a song. That kinda stuff would be really handy to do so that the sequences could just flash the settings over to the units at song-start.

User avatar
Nick Sevilla
speech impediment
Posts: 4979
Joined: Mon Mar 03, 2008 1:34 pm
Location: Lake Arrowhead California USA
Contact:

Re: MIDI / SYSex programming guides / info?

Post by Nick Sevilla » Tue Jul 28, 2020 3:42 am

A starting place:

https://support.apple.com/guide/logicpr ... 14d233/mac

You do need to make sure you have "advanced midi" so you can open and use the environment.

Also, make sure your MIDI input filter allows Sysex through. I think it is blocked by default.
Howling at the neighbors. Hoping they have more mic cables.

User avatar
alexdingley
buyin' gear
Posts: 578
Joined: Fri Feb 13, 2004 10:00 am
Location: Greater Philadelphia Area
Contact:

Re: MIDI / SYSex programming guides / info?

Post by alexdingley » Wed Jul 29, 2020 6:46 am

Thanks Nick! Yep... that’s been on since day one on my rig. I’m just really looking for guides on the nitty Gritty of hoe the SysEx string works, so that I’m not just typing thing in by rote, and hoping they work. I want to “better understand what’s going on“ as much as I want to “be able to pick which Built in reverb type the Roland is using”.

Those apple guides were exactly where I left off before posting above... the guidance they provided made some sense, but when I tried all of their suggestions and still didn’t get where I was hoping to get, I decided it’s probably time for me to learn more... as I’m certain my lack of deeper understanding is the culprit.

I’m sitting there with the Roland MIDI implementation manual, the Logic SysEx editor open... and I’m just stuck. So I’m sure i just need to learn some missing fundamental thing(s).

User avatar
alexdingley
buyin' gear
Posts: 578
Joined: Fri Feb 13, 2004 10:00 am
Location: Greater Philadelphia Area
Contact:

Re: MIDI / SYSex programming guides / info?

Post by alexdingley » Wed Jul 29, 2020 6:50 am

Nick Sevilla wrote:
Tue Jul 28, 2020 3:42 am
.
Also, make sure your MIDI input filter allows Sysex through. I think it is blocked by default.
Oh yeah... good point, but that’s covered too. I have that off, and actually... the Roland sends a SysEx command to Logic every couple of seconds..
Whenever I track MIDI from the Roland, I have those annoying [x x x ] objects showing in my regions... and the event editor shows them as SysEx events.

The Scum
resurrected
Posts: 2477
Joined: Thu Jul 03, 2003 11:26 pm
Location: Denver, CO
Contact:

Re: MIDI / SYSex programming guides / info?

Post by The Scum » Wed Jul 29, 2020 9:56 am

What's the model of keyboard? Does the manual have any info regarding it's sysex formats?

There's frequently a MIDI implementation chart as an appendix, which should include the sysex details. With a sniffer like MIDI Ox, you might be able to decipher them youself. Watch the hex codes, and see what changes.

No clue about getting Logic to handle them, though.
"What fer?"
"Cat fur, to make kitten britches."

User avatar
alexdingley
buyin' gear
Posts: 578
Joined: Fri Feb 13, 2004 10:00 am
Location: Greater Philadelphia Area
Contact:

Re: MIDI / SYSex programming guides / info?

Post by alexdingley » Wed Jul 29, 2020 6:12 pm

The Scum wrote:
Wed Jul 29, 2020 9:56 am
What's the model of keyboard?
There's frequently a MIDI implementation chart as an appendix, which should include the sysex details. With a sniffer like MIDI Ox, you might be able to decipher them youself. Watch the hex codes, and see what changes.
All good thoughts! Yep: I'm sitting here with the Midi Implementation Manual for my Roland RD700nx, and it clearly states what the hex codes are for certain (beyond the UI) parameters (like picking other reverb types, beyond the 3 that are available on the front-face)... And I'm mostly okay on Logic, so I feel like I"m 80% of the way there... but basically here's the gist:
  • You have to have the MIDI device successfully connected to / communicating with Logic Pro.. ✓
    You have to create MIDI-assignable objects (virtual faders/buttons/knobs) in the Logic Environment Window, and (virtually) connect them via virtual cables, to your external MIDI device.. ✓
    You need to set those virtual faders/buttons/knobs to transmit SysEx data (instead of standard CC#)... ✓ (I think?)
    You need to specifically configure the SysEx data via a long string of Hexidecimal pairs... per guidance from the MIDI Implementation Spec for your device.. NOT-SO-MUCH-check... :(
There's just a few nuances to the virtual Fader/Knob stuff and then a LOT of nuances to the SysEx string that I'm unsure of. For instance... I want to set a knob (in logic) to dial through a value in the Synth... but to do so, there are more open Hex pair spots in the Logic input area than the Roland Manual seems to dictate. So does that mean I leave a bunch blank?..

Maybe this is less a TapeOp Forum question, and more a KVR forum question... I don't venture over there much, but I may have to, for stuff like this. (I just like this board the best, so I always try to figure things out here first) Y'all have been helpful, but this is a certain kinda specialized question that I may have started in the wrong place. There are tons of people on here that know tons more than me about recording... but I have a feeling that this depth of MIDI stuff isn't really the focus of most of the folks on this board.

The Scum
resurrected
Posts: 2477
Joined: Thu Jul 03, 2003 11:26 pm
Location: Denver, CO
Contact:

Re: MIDI / SYSex programming guides / info?

Post by The Scum » Wed Jul 29, 2020 8:56 pm

The whole point of sysex is that the vendor can open a trapdoor and send whatever they want. There have been vendors who used it for firmware upgrades.

If you're used to working with Hex, you might be able to tweak things are recognize patterns...the Juno 106 would barf out parameter changes in sysex messages, rather than CCs. But you could work a control, and see what changed, and build from that. Bot it was also something like 10 bytes per message, only one of them was the actual value. If you can find a Logic template for the 106, it might shed some light...
"What fer?"
"Cat fur, to make kitten britches."

Post Reply

Who is online

Users browsing this forum: No registered users and 96 guests