Roland GP8 - by

8 posts / 0 new
Last post
jespermygind
jespermygind's picture
Roland GP8 - by

Hello 

I'm finishing up a .ini file to control a Roland GP-8 (effects processor) with BCR2000. I got everything working, but I cannot get my head around how to turn each effects on/off.

The manual (http://cdn.roland.com/assets/media/pdf/GP-8_OM.pdf) explains on page 34 that the 8 effects are split into two grops each consisting of four effects. As far as I can read (and forgive me, I only started out learning of midi sysex yesterday), this gives me only two parameters to address using 4 bytes. My current problem is then that I cannot effectively turn one effect on (using a button) without influencing the other three effects within the same parameter. 

Is it possible to do this in some clever way?

The Roland GP-8 is pretty simple, so I have plenty of buttons to use on the BCR meaning that I could figure out the best 'pairings' and enable these via buttons, but I wonder if there could be a more elegant solution that allows me to turn effects on/off.

I have defined my model as stated below and use the following commands to turn on a specific effect (in this case the Phaser algorithm):

00 00 |  00 - 01 | val ; Effects on - Phaser

[MODEL]
ProgramName=BC Manager
ProgramVersion=4.0.0    
ManufacturerName=Roland
ManufacturerID=41
ModelName=GP-8
ModelID=13
DevicePosition=BeforeModel
MinDevice=00
MaxDevice=1F
DefaultDevice=09
Command=12
AddressLength=2
AfterData=
ChecksumMethod=1
ChecksumStart=5
FileVersion=1.1
FileAuthor=jespermygind
Comment=Only includes changes in effect parameters, i.e. not program change, write or similar functions. 

 

 

 

jespermygind
jespermygind's picture

Oh well, the fuse in the BCR just blew, so guess I'm not in that much of a hurry :-)

Mark van den Berg
Mark van den Berg's picture

Ouch! Commisserations - I don't think I've heard about that particular problem with a BCF/BCR2000 before.
But I suppose it would have been worse if your GP-8 had been damaged.
Come to think of it, this could be seen as further proof that Roland/BOSS devices tend to be more sturdy than Behringers, but perhaps I shouldn't tempt the gods, being the proud owner of quite a few ancient Roland/BOSS devices...

Mark van den Berg
Mark van den Berg's picture

As far as I can read (and forgive me, I only started out learning of midi sysex yesterday), this gives me only two parameters to address using 4 bytes.

Correct.
The GP-8 was designed in 1987. In those days designers of digital devices tried(/had) to be as economical as possible concerning memory use, hence the lumping together of these effect switches. I think during the 90s Roland/BOSS switched to setups where the on/off switch of each effect has its own separate address.

I cannot effectively turn one effect on (using a button) without influencing the other three effects within the same parameter. 

Is it possible to do this in some clever way?

Not that I can think of. To my knowledge the BCR doesn't allow the necessary "bit isolation" plus "inter-button" communication.

I could figure out the best 'pairings' and enable these via buttons

I think that's what I would do too, depending on my needs.
Perhaps you could try to turn this limitation into a kind of strength: once you know which effect combinations you need for a particular song, you can simply put these under a sequence of buttons; in fact, you'll probably want to put both bytes (i.e. all 8 effects) under one button. This can actually be more effective than having to frantically switch several effects on and off via pedals in the middle of a song.

Another option is to use an encoder for each of the two groups of four effects. This will give you all sixteen combinations of those four effects. Of course this approach is rubbish in a live situation, but it might be useful in a "brainstorming" session.

A totally different approach would be to use some kind of computer as an intermediate: the BCR's buttons could then send simple Control Change messages, which the computer then merges into the proper SysEx messages to the GP-8. But of course this is rather "over the top".

I have defined my model as stated below and use the following commands to turn on a specific effect

 As far as I can see this is all correct, but you already knew that since it worked smiley

Just one thing: I've removed your email address from the FileAuthor field, to protect you from phishing via malicious website "scrapers" (or whatever they're called).

Mark.

Regnilam
Regnilam's picture

hi there! woudld you mind sharing the .ini file? recently purchased a BCR2000 and a GP-8 and trying to get them to play nicely with each other...

Regnilam
Regnilam's picture

Ok finally figured most of it out. If helpful for anyone, here's the GP8 INI file for most of the relevant parameters

Two things to note: (1) Delay time is on two encoders as MSB and LSB go on different addresses. (2) as the posted above mentions, there is no easy way to turn effects on/off, but you circle through the effects using Effects On 1/2 , as each bit will turn on/off another effect.

 

[MODEL]
ProgramName=BC Manager
ProgramVersion=4.0.0    
ManufacturerName=Roland
ManufacturerID=41
ModelName=GP-8
ModelID=13
DevicePosition=BeforeModel
MinDevice=00
MaxDevice=1F
DefaultDevice=00
Command=12
AddressLength=2
AfterData=
ChecksumMethod=1
ChecksumStart=5
FileVersion=1.1
FileAuthor=jespermygind
Comment=nOTHING
; Insert parameter definition lines below
00 00  |  00 - 0F | val ; Effects on 1 
00 01  |  00 - 0F | val ; Effects on 2

00 02 | 00 - 64 | val ; DynFilt Sens
00 03 | 00 - 64 | val ; DynFilt Cutoff
00 04 | 00 - 64 | val ; DynFilt Q
00 05 | 00 - 64 | val ; DynFilt UpDown

00 06 | 00 - 64 | val ; Compressor Attack
00 07 | 00 - 64 | val ; Compressor Sustain

00 08 | 00 - 64 | val ; TurboOD Tone
00 09 | 00 - 64 | val ; TurboOD Drive
00 0A | 00 - 64 | val ; TurboOD Turbo OnOff

00 0B | 00 - 64 | val ; Dist Tone
00 0C | 00 - 64 | val ; Dist Dist

00 0D | 00 - 64 | val ; Phaser RATE
00 0E | 00 - 64 | val ; Phaser Depth
00 0F | 00 - 64 | val ; Phaser Resonance

00 10 | 00 - 64 | val ; Eq Hi
00 11 | 00 - 64 | val ; Eq Mid
00 12 | 00 - 64 | val ; Eq Low
00 13 | 00 - 64 | val ; Eq out level

00 14 | 00 - 64 | val ; Delay Level
00 15 | 00 - 07 | val ; Time MSB
00 16 | 00 - 7f | val ; Time LSB
00 17 | 00 - 64 | val ; Delay Fback

00 18 | 00 - 64 | val ; Chorus RATE
00 19 | 00 - 64 | val ; Chorus DEPTH
00 1A | 00 - 64 | val ; Chorus ELEVEL
00 1b | 00 - 64 | val ; Chorus LEVEL
00 1c | 00 - 64 | val ; Chorus PRED
00 1D | 00 - 64 | val ; Master Vol

jespermygind
jespermygind's picture

Hi

Sorry, I didn't get to upload it yet - here was my code as well with different common controls that can be mapped (i.e. effects typically used together). I included delay time into one parameter instead of two.

[MODEL]
ProgramName=BC Manager
ProgramVersion=4.0.0    
ManufacturerName=Roland
ManufacturerID=41
ModelName=GP-8
ModelID=13
DevicePosition=BeforeModel
MinDevice=00
MaxDevice=1F
DefaultDevice=09
Command=12
AddressLength=2
AfterData=
ChecksumMethod=1
ChecksumStart=5
FileVersion=1.0
FileAuthor=
Comment=Only includes changes in effect parameters, i.e. not program change, write or similar functions. 

{ Effects 
{ Common control
00 00 |  00 - 01 | val4.7 val0.3 ; Effects on - Phaser
00 00 |  00 - 02 | val4.7 val0.3 ; Effects on - Equalizer
00 00 |  00 - 03 | val4.7 val0.3 ; Effects on - Phaser + Equalizer
00 00 |  00 - 04 | val4.7 val0.3 ; Effects on - Digital Delay
00 00 |  00 - 08 | val4.7 val0.3 ; Effects on - Digital Chorus
00 00 |  00 - 12 | val4.7 val0.3 ; Effects on - Digital Delay + Digital Chorus
00 01 |  00 - 01 | val4.7 val0.3 ; Effects on - Dynamic filter
00 01 |  00 - 02 | val4.7 val0.3 ; Effects on - Compressor
00 01 |  00 - 03 | val4.7 val0.3 ; Effects on - Dynamic filter + Compressor
00 01 |  00 - 04 | val4.7 val0.3 ; Effects on - Turbo Overdrive
00 01 |  00 - 08 | val4.7 val0.3 ; Effects on - Distortion
00 01 |  00 - 12 | val4.7 val0.3 ; Effects on - Distortion + Turbo overdriver
00 1D |  00 - 64 | val4.7 val0.3 ; Master volume Volume
}

{ Effects control
00 02 |  00 - 64 | val4.7 val0.3 ; Dynamic filter Sens
00 03 |  00 - 64 | val4.7 val0.3 ; Dynamic filter Cutoff freq
00 04 |  00 - 64 | val4.7 val0.3 ; Dynamic filter Q
00 05 |  00 - 64 | val4.7 val0.3 ; Dynamic filter Up/Down
00 06 |  00 - 64 | val4.7 val0.3 ; Compressor Attack
00 07 |  00 - 64 | val4.7 val0.3 ; Compressor Sustain
00 08 |  00 - 64 | val4.7 val0.3 ; Turbo Overdrive Tone
00 09 |  00 - 64 | val4.7 val0.3 ; Turbo Overdrive Drive
00 0A |  00 - 64 | val4.7 val0.3 ; Turbo Overdrive Turbo on/off
00 0B |  00 - 64 | val4.7 val0.3 ; Distortion Tone
00 0C |  00 - 64 | val4.7 val0.3 ; Distortion Dist
00 0D |  00 - 64 | val4.7 val0.3 ; Phaser Rate
00 0E |  00 - 64 | val4.7 val0.3 ; Phaser Depth
00 0F |  00 - 64 | val4.7 val0.3 ; Phaser Resonance
00 10 |  00 - 64 | val4.7 val0.3 ; Equalizer Hi. level
00 11 |  00 - 64 | val4.7 val0.3 ; Equalizer Mid. level
00 12 |  00 - 64 | val4.7 val0.3 ; Equalizer Lo. Level
00 13 |  00 - 64 | val4.7 val0.3 ; Equalizer Output level
00 14 |  00 - 64 | val4.7 val0.3 ; Digital delay Effect level
00 15 |  00 00 - 07 68  | val4.7 val0.3 val12.13 val8.11 ; Digital delay Delay time
00 17 |  00 - 64 | val4.7 val0.3 ; Digital delay Feedback
00 18 |  00 - 64 | val4.7 val0.3 ; Digital chorus Rate
00 19 |  00 - 64 | val4.7 val0.3 ; Digital chorus Depth
00 1A |  00 - 64 | val4.7 val0.3 ; Digital chorus Effect level
00 1B |  00 - 64 | val4.7 val0.3 ; Digital chorus Pre delay
00 1C |  00 - 64 | val4.7 val0.3 ; Digital chorus Feedback
}
}

Regnilam
Regnilam's picture

Thanks for showing me how to get the delay done! mine was just a fudge...