Using real instuments

When switching voice presets in real instrument (Yamaha), the instrument sends a whole package of midi messages. Is it possible to accept and record these messages into the layer and send them to the instrument when the layer is activated? Simply using PrgChange, MSB, and LSB is not enough. It is difficult to read them with the eyes and manually set the options in VL. If this option is not available, the optimal solution would be option for layers to record commands from the instrument, and then send them to the instrument when the layer is activated.

The instrument also has an option to export its own state. Is it possible to write it to a layer and send it to the tool when the layer is activated during playback?

1 Like

Two ways depending if you use transport ( tracks ) or just switch part manually without transport playing.

if you have transport on, add a midi track, record your preset change one clip for each preset change then palace the clips on the timeline where needed

For f tou don’t use transport, then you can use one SONG for each needed preset (not part), record the preset change on a track and place all the recorded midi messages on 1.1.1. Then, in preferences/midi select chase midi events and DESELECT chase on start. This wa my as soon as you switch song, all midi events placed on 1.1.1 will be immediately sent even in stop state.

Cheers, ciro

1 Like

Thank you.
However, I have a question: why do we need layers if they are not designed for managing real instruments? It seems that for VSTI, it is simple to make settings and record them in a layer, but with a real instrument, we need to work similarly to a DAW and record information on a track.

I think It would be great to have a function that allows me to record a message packet in a layer and send it to the tool when the layer is activated.

2 Likes

I’m not knocking your request, and I agree it’s a very good one.

Meanwhile, I recommend checking to see if your instrument has any kind of presets that’ll call up the complete snapshot desired. Instruments designed for the stage usually do.

Example:

I’ve an old Roland Fantom XR plugged in right now, and it has something called ‘performance’ presets. I think I get up to 128 user memory slots for these if I plug in a CF card (64 without the flash Media), and 256 if I count the Factory stuff in ROM. To call these up all I need to do is have a layer send a bank and program change over the right MIDI channel.

On this instrument ‘performance presets’ remember pretty much EVERYTHING across all 16 channels. The instrument/patch for each channel, the mix, the effect settings, zones and layers….the whole 9 yards. Such presets are easy to make on the Fantom. I just work in performance mode, and save a preset when everything is the way I want it.

If your instrument has something similar, consider taking advantage of it.

I do understand that instruments exist that don’t have such presets. The old Yamaha MU/XG stuff for example. Those were bult when memory was expensive, and models came out with the bare minimum to get prices down. Larger sysex and/or NRPN dumps before a song begins are often the best, and sometimes only way.

In these cases you might find a 3rd party app helpful.

Something like CTRLR VST (link for a precompiled version) is a free option that might be helpful. You can make custom control panels that send whatever MIDI or sysex events you need on demand. I haven’t tried it with Live 2, but I’ve used it with tracking DAWs in the past to easily automate instruments that rely on sysex, or loads of different CCs all coming in at once (Multiple RPN/NRPN events for example). There’s also at least one cavern on the web that’s dedicated to sharing ready built control panels.

Example Screen Shot: Yamaha TX81-Z Editor in CTRLR

CTRLR Editors, VSTs and Panel Saving Tools - PresetPatch

These days the best way to find existing panels that users have built and share is to do a general web search for ctrlr panels. You’ll find most of it on github.

Example repository: GitHub - unityconstruct/CtrlrPanels: Ctrlr Panel Library Collected from Various Sources

There are other similar options to CTRLR out there. I personally use bidule these days, but that one’s not free in its plugin format. Bidule cannot do sysex dumps per say, but I can easily build automatable controls for individual sysex addresses. For CC/PC/Note based stuff it can do anything.

1 Like

Radical suggestion:

In the Yamaha turn off “sysex” transmit and turn on “program change” transmit. Then record the program changes as you select them on the keyboard.

1 Like

Thanks for your answers, I already use the internal settings bank on the Yamaha and the presets, as well as Cubase for live performances, where I can save all the settings in the midi track using the simple automation recording tool. By the way, it’s more complicated to do this in VL, as you need to create an additional track and figure out which inputs and outputs to use.

One of the advantages of VL is the layers, but even here, a number of small things do not allow you to use them properly (rigid attachment to the boundaries of parts and the inability to record the settings of real instruments). I have to work in VL in the same way as in Cubase, but without important options.

1 Like

VSTL is not a replacement for Cubase. But if you need recorded MIDI events, you can do this in Cubase, than export it as MIDI-file and import this to a MIDI-track in VL. Move it to 1.1.1 and turn off chase events on start and this MIDI commands will be sent immediately to the output of the track, whenever a song is selected.

2 Likes

Not sure why you’re so hung up on the “ability to save settings” idea. If your Yamaha is anything like a Kronos then the sysex it is sending is just a dump of the selected program, so I can’t see what benefit you would get from saving that over sending a program change. I also found that my Kronos sysex could “reprogram” my HydraSynth (scary!) so disabled it. IMHO sysex just floods the MIDI for no reason when sent from the keyboard in a live setting, and given that it is (or should be) peculiar to the instrument, and is not human readable, I don’t see a benefit of saving it.

As for Layers - if I have one program change I’ll just have one layer in Part 1. Maybe more, and not necessarily in each Part, if needed. More complex needs can be served with a MIDI track, which can be directly connected to a MIDI out (so no Layer needed), or an automation track. Layers also have “quick controls” that can be assigned to CCs so you can change most things without the need for sysex.

1 Like

I’m not so hung up on this idea, and I mostly use plugins now. It seems absolutely natural to me that the management of virtual and real instruments should be similar. If a virtual instrument saves all my settings in a layer and I just need to go into the instrument from the layer, set them, and then exit, and everything is saved automatically, then I’d like to see something similar for a real instrument.

My instrument send MSB, LSB, PrgChange, Volume, FX parameters, e.t.s
the same for split and double voices, some sysex (I don’t’ know what they mean). I know that they all write normally as automation to the cubase track and when sent to the instrument, they set the channel parameters to the desired state. I don’t want to perform complex actions where when simple tools could be used. I will continue using the plugin. It was just an idea.

I see this on the midi monitor and I think I can adjust the layer’s settings manually, but why do I have to do everything manually? If there was a button, I could just click and count. The layer sends all the settings when it’s activated, so it already has most of what need for this action..

The nature of plugins is that they expose (some) named parameters that can be controlled, and therefore saved, by its host. External instruments just don’t do that (at the moment! - MIDI2 will change that if the instrument and host support it). In the meantime a Layer can send CCs but they have to be set up manually because all VSTL knows is that it’s sending a message to the MIDI out and has no idea what it’s connected to, or what the instrument will do with that message.

Sysex is “system exclusive” and is a unique message stream defined by the manufacturer for that instrument. Generally it’s used for librarian or remote control programs provided by the manufacturer - for instance it will let you dump all of the programs as a backup. Layers can send sysex, you’ll see a box for it next to program number, but it’s usually used as a last resort when a normal MIDI message won’t do what’s needed. You can’t record into this setting, maybe that’ll be added in future.

I know what is sysex, I mean, I don’t know the purpose of the specific commands being sent. :slightly_smiling_face:

  • VL records midi commands on the midi track and sends them to the instrument. All midi messages (except for SysEx) are successfully recorded in Cubase and VL and transmitted to the instrument, so there are no problems with recording and transmission. I don’t understand why this can’t be done in layers. I don’t need tracks for live performance, and I don’t want to create them.
  • There is a Layer Controller Map table, and if I fill it out by hand, everything will be transmitted to the instrument. However, I don’t understand why it’s not possible to retrieve this data from the instrument, as there are ‘Learn’ buttons in other places.
  • In layers there is an option to send SysEx, means they can be sent to the instrument, I can manually enter commands, why they cannot be written from the instrument and it is necessary to enter it manually.

Misunderstanding, but maybe useful for other readers :grinning_face:

1 Like