GM-800- Control FX with external MIDI Controller

Started by DanRad, October 05, 2023, 06:30:48 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DanRad

Hey, everyone. So I'm feeling like a true dunce here, and I could use a little help.

I want to be able to increase the VK Rotary modulation on an organ tone (017 Rotary Organ, precisely) from my Helix Floor. I know how to set it up on the Helix side using command center, but can't figure out the Control Assign function on the GM-800 to save my life.

In the editor, I select Control Assign and Edit on the first line. I assumed I'd select P1-MFX as the Target Category to adjust the modulation on Part 1, but the only Target Parameters that come up are Switch, cho/dly send and rvb send.

All the other fx-related target categories are for FX1 or FX2.

Can anyone walk me through this?

admin_shawnb

You have to use an ASSIGN, not a CONTROL ASSIGN.

One more tab over!

Source is MIDI, Cc.

The target depends on what you want to modulate.

DanRad

Sorry. I left out a step. I am using assign.

I want to change the settings on the VK Rotary in the MFX section. There does not appear to be a way to set any of those parameters as a part MFX. I can adjust vibrato depth and rate for the part, but that isn't giving me the desired effect of ramping up the rotary.

I'm thinking what I need to do is turn off the VK Rotary in the MFX section and assign it as FX1 or FX2 for the scene, which would allow me to adjust through MIDI.

Have to say, I am finding none of this intuitive at all!

Elantric

#3
Quote from: DanRad on October 05, 2023, 10:07:56 AM.

I'm thinking what I need to do is turn off the VK Rotary in the MFX section and assign it as FX1 or FX2 for the scene, which would allow me to adjust through MIDI.

Have to say, I am finding none of this intuitive at all!


Apparently if an MFX effect is set in one of the PART1,2,3,4,R MFX BLOCKs - it indicates Zenology Pro was used to create the patch

The official GM-800 PARAMETER GUIDE CONTROL ASSIGN TARGET FX are in most part contrained to the FX1, FX2 blocks

admin_shawnb

#4
Quote from: Elantric on October 05, 2023, 10:46:46 AMMe too
Apparently if an effect is set in one of the PART1,2,3,4,R MFX BLOCKs - its not addressable as an ASSIGN TARGET, therefore not controllable  ( huge omission )

ASSIGN TARGET FX are in most part contrained to the FX1, FX2 blocks

I believe this is true.

I wonder if this is included in the "lower level of editing" provided by Zenology Pro?  (I am allergic to subscriptions, so cannot access ZP...)

A quick glance at the manual, and this appears to be the case:

You cannot view this attachment.



admin_shawnb

#5
My point was that I suspect the assignment is made in Zenology Pro - and honored by the GM-800.  I.e., the assign can be made/edited in ZP.   

I just can't test that.


Elantric

#6
Quote from: admin_shawnb on October 05, 2023, 03:07:09 PMMy point was that I suspect the assignment is made in ZP - and honored by the GM-800.  I.e., the assign can be made/edited in ZP. 

I just can't test that.

And FWIW, I doubt the rest are deal breakers - most won't encounter them.  E.g., most won't want to play notes on a midi keyboard simultaneously while playing notes on a gk-equipped guitar.  (That limitation was for note source, not CCs, etc.)

But the MFX inaccessible FX Control Assignment issue came up because someone wanted real time Depth control of a factory GM-800 Organ Preset- which employs a VKRotary Effect in one of the PART  MFX blocks

AFAIK, Must edit the patch and use the VKRotary Effect in either FX1 or FX2 instead

admin_shawnb

#7
Yep.  And the question remains whether an assign can be made within Zenology Pro to address.

admin_shawnb

#8
Back to the original question, my suggestion would be to remove the Rotary from the part-level MFX, and use one of the scene MFX slots. 

On that voice, there are two different delays used at the scene level.  Both are pretty subtle.

If you move the rotary effect to the scene level (FX1, FX2), you can create an ASSIGN within BTS to control the rotary. 

admin_shawnb

#9
FWIW, curiosity got the best of me, & I started my freebie month & downloaded Zenology Pro ...

I can in fact get the GM-800 to respond to ASSIGNs defined within the tone within ZP.  (@BROCKSTAR has been saying some tones respond to CCs even without an ASSIGN in BTS...  This is likely happening on the ZP tones he has downloaded, as I haven't seen this behavior on any of the GM-800 factory tones (yet...).)

The structure of the assigns is interesting...  As I understand it, there are 4 sources per partial (see screenshot above).  Each of these can control up to 4 sound parameters within its partial.  In addition, there are 4 assigns for the single MFX allowed. There are 4 predefined system-wide assign sources, SYS-CTRL1 - SYS-CTRL4, that correspond to midi CC1, Aftertouch, CC2 and CC4.

So...  To get the CC to work on an MFX parameter:
 - I created an organ tone in ZP
 - I added the VK Rotary effect to it
 - I created an assign between SYS-CTRL1 (which is hardwired to CC1) and the speed (see pic below - note that setting the sensitivity to a strong positive value is critical...)
 - I exported that tone, then loaded it onto the GM-800, and used it in part 1 of a scene
 - While playing the GK guitar, I sent CC1 signals down channel 11 (the standard receive channel for part 1)

You cannot view this attachment.

And if you want to do that to the 17 Rotary Organ preset, you'd need to export its 3 tones to ZP & update all 3 in this fashion, then xfer them back to the GM-800.

Yes, it's a lot of work...  I'd rather put the VK ROTARY effect up at the scene level. In FX1

Elantric


BROCKSTAR

#11
Quote from: admin_shawnb on October 05, 2023, 08:39:39 PMFWIW, curiosity got the best of me, & I started my freebie month & downloaded ZP...

I can in fact get the GM-800 to respond to ASSIGNs defined within the tone within ZP.  (@BROCKSTAR has been saying some tones respond to CCs even without an ASSIGN in BTS...  This is likely happening on the ZP tones he has downloaded, as I haven't seen this behavior on any of the GM-800 factory tones (yet...).)

The structure of the assigns is interesting...  As I understand it, there are 4 sources per partial (see screenshot above).  Each of these can control up to 4 sound parameters within its partial.  In addition, there are 4 assigns for the single MFX allowed. There are 4 predefined system-wide assign sources, SYS-CTRL1 - SYS-CTRL4, that correspond to midi CC1, Aftertouch, CC2 and CC4.

So...  To get the CC to work on an MFX parameter:
 - I created an organ tone in ZP
 - I added the VK Rotary effect to it
 - I created an assign between SYS-CTRL1 (which is hardwired to CC1) and the speed (see pic below - note that setting the sensitivity to a strong positive value is critical...)
 - I exported that tone, then loaded it onto the GM-800, and used it in part 1 of a scene
 - While playing the GK guitar, I sent CC1 signals down channel 11 (the standard receive channel for part 1)

You cannot view this attachment.

And if you want to do that to the 17 Rotary Organ preset, you'd need to export its 3 tones to ZP & update all 3 in this fashion, then xfer them back to the GM-800.

Yes, it's a lot of work...  I'd rather put the VK ROTARY effect up at the scene level. In FX1

Quote"I can in fact get the GM-800 to respond to ASSIGNs defined within the tone within ZP.  (@BROCKSTAR has been saying some tones respond to CCs even without an ASSIGN in BTS...  This is likely happening on the ZP tones he has downloaded, as I haven't seen this behavior on any of the GM-800 factory tones (yet...).)"

Assign CC#1 to a midi controller, and it'll control modulation on any tone on factory or ones you put in it. Doesn't have to be assigned to do so.
Unless it's a bug on mine lol.

DanRad

Quote from: BROCKSTAR on October 06, 2023, 04:17:15 AM"I can in fact get the GM-800 to respond to ASSIGNs defined within the tone within ZP.  (@BROCKSTAR has been saying some tones respond to CCs even without an ASSIGN in BTS...  This is likely happening on the ZP tones he has downloaded, as I haven't seen this behavior on any of the GM-800 factory tones (yet...).)"

Assign CC#1 to a midi controller, and it'll control modulation on any tone on factory or ones you put in it. Doesn't have to be assigned to do so.
Unless it's a bug on mine lol.


Yeah. I just verified. All I had to do was set up a momentary switch to shift between around 40 and 105 on CC#1. Works like a charm. D'oh!

Elantric

#13
Quote from: BROCKSTAR on October 06, 2023, 04:17:15 AM"I can in fact get the GM-800 to respond to ASSIGNs defined within the tone within ZP.  (@BROCKSTAR has been saying some tones respond to CCs even without an ASSIGN in BTS...  This is likely happening on the ZP tones he has downloaded, as I haven't seen this behavior on any of the GM-800 factory tones (yet...).)"

Assign CC#1 to a midi controller, and it'll control modulation on any tone on factory or ones you put in it. Doesn't have to be assigned to do so.
Unless it's a bug on mine lol.


"Vague, with conflicts" does not begin to describe the frustration of understanding the official GM-800 documentation - luckily at VGuitarforums.com we are assembling undocumented procedures and work arounds . Glad MIDI CC#1 Works to control your PART1 MFX  modulation,  but annoyed the official GM-800 omits mentioning this.

If MIDI CC#1 is already premapped to control PART 1 MFX Modulation, why would Boss state conflicting information in the GM-800 Parameter Guide stating the available USER DEFINED CONTROL ASSIGNMENTS  allow MIDI CC# 1-31,64-95 as available Control Sources, when in fact MIDI CC#1 is already tied up



This important MATRIX CONTROL info below is intended for Zenology  Pro users, but apparently many GM-800 factory sounds already have pre-programmed  MATRIX CONTROL MIDI CC# Assignments which are not listed in official GM-800 Documentation



This indicates to me Boss underestimates the number of Guitarists  who rely on third party MIDI CONTROLLERS to control their Boss Gear at live gigs - since they simply omit or supply conflicting information, or forgot to  mention MIDI CC# exceptions adequately - we continue to "peel the GM-800 onion", to determine functional MIDI CONTROL work flow


admin_shawnb

Quote from: Elantric on October 06, 2023, 08:53:56 AMIf MIDI CC#1 is already premapped to control PART 1 MFX Modulation, why would Boss state conflicting information in the GM-800 Parameter Guide stating the available USER DEFINED CONTROL ASSIGNMENTS  allow MIDI CC# 1-31,64-95 as available Control Sources, when in fact MIDI CC#1 is already tied up

The truth is, you can use CC01 for even more parameters.  I don't think the manual is incorrect.

OTOH, what *IS* disappointing is that it didn't mention that ASSIGNS made in ZP at the tone level are also honored.  That would be helpful to know.  And that CC1, aftertouch, CC2, and CC4 are used basically system-wide in the Zencore tones. 

It tells you in detail how to route signals to the parts so those can be used.  But not really WHY that's there to begin with...

admin_shawnb

#15
Quote from: BROCKSTAR on October 06, 2023, 04:17:15 AMAssign CC#1 to a midi controller, and it'll control modulation on any tone on factory or ones you put in it. Doesn't have to be assigned to do so.
Unless it's a bug on mine lol.

Nope, no bug, you are correct.

Some of it's dumb bad luck on my part - the first 5-10 I tried didn't respond to anything.  Some of it is operator error on my part - I was likely using channel 1 in all my earlier tests. 

Some of it is that even if you use channel 11, that will only affect 1 of the 4 parts, so any effect is buried in the tone.

However...

If you change the MIDI Rx Channel (in BTS: Menu | MIDI Setting | Setting 2) of all 4 parts to be channel 1, and send a CC01 down channel 1, it's REALLY REALLY REALLY obvious on MOST preset scenes...

Elantric

#16
Quote from: admin_shawnb on October 06, 2023, 10:49:10 AMThe truth is, you can use CC01 for even more parameters.  I don't think the manual is incorrect.

OTOH, what *IS* disappointing is that it didn't mention that ASSIGNS made in ZP at the tone level are also honored.  That would be helpful to know.  And that CC1, aftertouch, CC2, and CC4 are used basically system-wide in the Zencore tones. 

It tells you in detail how to route signals to the parts so those can be used.  But not really WHY that's there to begin with...

I wonder if these Zenology  Pro MIDI MATRIX CC# Assignments are revealed upon scrutiny by a third party *.Tsl viewer

GM-800 Liveset Viewer
https://www.vguitarforums.com/smf/index.php?topic=36230.25#msg266735


admin_shawnb

Quote from: Elantric on October 06, 2023, 11:08:39 AMI wonder if these Zenology  Pro MIDI MATRIX CC# Assignments are revealed upon scrutiny by a third party *.Tsl viewer

GM-800 Liveset Viewer
https://www.vguitarforums.com/smf/index.php?topic=36230.25#msg266735

I've been wondering how to get to that info also...

My first guess is no, as I've looked closely and the contents of the .tsl are closely aligned with BTS editing - NOT the next layer down. 

I.e., where a .tsl documents how 4 tones + 2 MFX + CHO + REV + 16 ASSIGNs are combined into a scene, I believe it is the .svz that combines the 4 partials + 1 MFX + 4 ASSIGNS into a tone...  One layer deeper...

I believe we need a similar tool that queries the .svz/.sdz.  And that is NOT JSON, it's a binary...   ::)

Elantric

#18
Quote from: admin_shawnb on October 06, 2023, 10:56:04 AMNope, no bug, you are correct.

Some of it's dumb bad luck on my part - the first 5-10 I tried didn't respond to anything.  Some of it is operator error on my part - I was likely using channel 1 in all my earlier tests. 

Some of it is that even if you use channel 11, that will only affect 1 of the 4 parts, so any effect is buried in the tone.

However...

If you change the MIDI Rx Channel (in BTS: Menu | MIDI Setting | Setting 2) of all 4 parts to be channel 1, and send a CC01 down channel 1, it's REALLY REALLY REALLY obvious on MOST preset scenes...


Where is this PART1 CC# Control = MIDI CHANNEL 11 documented? (ZENOLOGY PRO EDITOR?)

And should I assume the following assumptions hold true for GM-800 factory scenes ?

Part1 MIDI CC# Control = MIDI Channel 11
Part2 MIDI CC# Control = MIDI Channel 12
Part3 MIDI CC# Control = MIDI Channel 13
Part4 MIDI CC# Control = MIDI Channel 14
PartR MIDI CC# Control = MIDI Channel 10




admin_shawnb

#19
Quote from: Elantric on October 06, 2023, 11:40:03 AMWhere is this PART1 CC# Control = MIDI CHANNEL 11 documented? (ZENOLOGY PRO EDITOR?)

And should I assume the following assumptions hold true for GM-800 factory scenes ?

Part1 MIDI CC# Control = MIDI Channel 11
Part2 MIDI CC# Control = MIDI Channel 12
Part3 MIDI CC# Control = MIDI Channel 13
Part4 MIDI CC# Control = MIDI Channel 14
PartR MIDI CC# Control = MIDI Channel 10

They are system settings, in BTS you can see them under Menu | MIDI Setting | Setting 2.  In the GM-800 Parameter Guide, page 18, they're described though the default isn't provided in the doc.

The Part R channel defaults to channel 10 - the kinda sorta standard General MIDI drum channel.

keitht

I'm really glad to see this kind of in depth discussion and troubleshooting. I am still pondering how to connect my Graviton, 800, and 99, I will probably make some new TRS midi cables for that. And then...CC#'s, channels, parts, oh my! But I too am very allergic to subscriptions.

Visionary Instruments

#21
Hi, Ben from Visionary Instruments here, I build guitars with integrated midi controllers.

I'm diving into the GM-800 midi stuff and found this thread, it's been very helpful. 
Thanks guys!

I have a few questions:
1)
I noticed that the SY-1000 and the GM-800 have 62 "reserved" midi CCs that are blocked from being assigned.
(cc32 through cc63) and (cc96 through 127) are all reserved. 
Does anyone know how these are used?  Does Roland publish any data about it? 
That's way too many reserved CCs in my opinion :/
(The reserved CCs have caused a lot of headaches for me as I try to get the device to coordinate with other midi devices
which may have their own reserved CCs.)

2)
"Mystery Mappings"...
I have sent out cc messages that I did not assign to the GM-800, yet they are default mapped. 
I have found no published data on these mappings..
For example cc93 is globally mapped to "Chorus/Delay Send" and I can't find any way to un-assign it.
Does this have something to do with the Zenology software?  (I haven't gotten that far yet)

3)
Perhaps related to the question above.  cc7 will control Volume at the Part level. 
However if a preset (scene) has several different volumes for each of the four parts (80, 70, 50, 110) and then you move cc7 to 127, they will all be
set to 127.
So this makes cc7 pretty useless as a master volume.
And rather each and every preset (scene) needs to have it's "scene level" assigned per scene?  (...Uhgg frustrating)
How do I make a CC into a Master volume?   Am I missing something here?  That should be easy!

4)
If I send midi data too fast to any of the "pre-assigned" mystery cc#s, the GM-800 will freeze and crash almost instantly.
("pre-assigned" meaning cc7 or cc93 for example)
I needed to throttle the midi data from my micro-controller.
I needed 10ms of loop delay when the USB editor is connected,
and 5ms of loop delay when disconnected. 
Anything below this will crash the unit.  Any ideas about dealing with this?

However note that "Not pre-assigned" cc#s will not crash the unit. 
For example when I assigned cc80 to Scene Level in the editor, I could run midi data at full throttle and
everything worked great!

So it seems it really matters if your cc# is a pre-assigned cc or an unassigned cc, as this will greatly effect
whether it is mapped to the GM-800 level, or the mystery Zenology level... 
Is there any list of these CCs?
How are we supposed to navigate this?

Any help is much appreciated!
Thanks so much!




admin_shawnb

#22
Quote from: Visionary Instruments on November 05, 2023, 03:33:22 PMHi, Ben from Visionary Instruments here, I build guitars with integrated midi controllers.
Welcome aboard!

Quote from: Visionary Instruments on November 05, 2023, 03:33:22 PM1)
I noticed that the SY-1000 and the GM-800 have 62 "reserved" midi CCs that are blocked from being assigned.
(cc32 through cc63) and (cc96 through 127) are all reserved. 
Does anyone know how these are used?  Does Roland publish any data about it?
Yeah, there are definitely some odd restrictions, that don't seem to make sense.

Note that there is a little more flexibility when you have as the target midi out of pc/cc.   (Page 3 of the ASSIGN can be used.)

Quote from: Visionary Instruments on November 05, 2023, 03:33:22 PM2)
I have sent out cc messages that I did not assign to the GM-800, yet they are default mapped.
I have found no published data on these mappings...

Yep, for a description of tone-level vs scene-level settings, and what's configured in ZP vs BTS, this might help:
https://www.vguitarforums.com/smf/index.php?topic=36322.0

Some of this was also discussed in this thread, with feedback from Roland.  Mainly, which CCs are used internally within the tones are not documented, and since they won't share the file layouts of the applicable files, we cannot write a utility to query them ourselves:
https://www.vguitarforums.com/smf/index.php?msg=267001

Note that for some guidance on what CCs "might" be used within the tone, look at the MIDI Implementation chart for the GM-800.  It shows you which CCs are honored overall within the GM-800.  They are not all honored on all voices, but a lot are, & that doc is a good source. 

Quote from: Visionary Instruments on November 05, 2023, 03:33:22 PM3)
Perhaps related to the question above.  cc7 will control Volume at the Part level. 
However if a preset (scene) has several different volumes for each of the four parts (80, 70, 50, 110) and then you move cc7 to 127, they will all be
set to 127.
So this makes cc7 pretty useless as a master volume.
And rather each and every preset (scene) needs to have it's "scene level" assigned per scene?  (...Uhgg frustrating)
How do I make a CC into a Master volume?

I think this is pretty straightforward - in your ASSIGN, make Target Category "MASTER" and the Target Parameter "SCENE LEVEL".

Quote from: Visionary Instruments on November 05, 2023, 03:33:22 PM4)
If I send midi data too fast to any of the "pre-assigned" cc#s, the GM-800 will freeze and crash almost instantly.
("pre-assigned" meaning cc7 or cc93 for example)
I needed to throttle the midi data from my micro-controller.
I needed 10ms of loop delay when the USB editor is connected,
and 5ms of loop delay when disconnected. 
Anything below this will crash the unit.  Any ideas about dealing with this?

So it seems it really matters if your cc# is a pre-assigned cc or an unassigned cc, as this will greatly effect
whether it is mapped to the GM-800 level, or the mystery Zenology level... 

Is there any list of these CCs?
How are we supposed to navigate this?

No, as noted above, the CC usage is not doc'd, and, they're not sharing file format info to help us document it ourselves.

I don't send bulk CC info like that, so I haven't seen that behavior.  But yeah, it sounds like you need to "thin the herd"... 


NOTE that one of our contributors, @keitht, has written a utility to help document ASSIGNs that are made within BTS - i.e., scene-level ASSIGNs, not tone-level ASSIGNs.
https://www.vguitarforums.com/smf/index.php?msg=266782

Visionary Instruments

Quote from: admin_shawnb on November 05, 2023, 04:20:55 PMI think this is pretty straightforward - in your ASSIGN, make Target Category "MASTER" and the Target Parameter "SCENE LEVEL".



Wow, thanks for your informative reply.  I'll dig into those links and see what I can learn!

Regarding the Volume assignment:
Since the GK-5 doesn't have a vol knob, I was hoping to assign a CC knob or expression pedal to a similar "Global Volume" function.
This seems like a fairly common application, but I can't figure out how it can be done?

I can successfully assign a CC to the Master "Scene Level" and this works great.
However if I want that same CC to control the volume in the next preset, then I need to enter the assignment all over again.
That would be a long process for 100 presets, but maybe worth it. haha

Am I missing something?  Or could this be a Feature request perhaps?

As a workaround, I've run the outputs through an AxeFX and can control the volume there.

Cheers!



admin_shawnb

#24
Only if you can do it via a control assign, which won't allow CCs as a source...  ::)

It's like playing Tetris,  but the game actively refuses to give you pieces that fit together...


OTOH, it turns out that the BTS .tsl files are in JSON format...  I.e., easily edited.

If you're comfortable editing source files in an editor like Notepad++, you might find this discussion helpful:
https://www.vguitarforums.com/smf/index.php?topic=36230.msg266348#msg266348

So...  if all your assigns are the same, export your patches to a tsl, copy & paste the desired assigns to all the patches, & re-import.

The only other option is to do it by hand.


And, uh...  Back everything up first...  Twice...