BCR2000 and Roland Boutique D-05

5 posts / 0 new
Last post
Skek's picture
BCR2000 and Roland Boutique D-05

Hi there,

i'm trying to control my Roland D-05 with the BCR-2000 but I can't get it work.
Is there perhaps a template that I can use for the D-05?
I'm totally new in midi programming so any help is welcome.




Royce's picture


I don't have a D-05, but I have a V-Synth XT that has the D-50 emulation.

There are two types of System Exclusive (sysex) message formats for the D-05.

The one you want is the newer and simpler one not the original one from the D-50.

It uses Request Data (RQ1) and Data Transfer (DT1) on page 37 of the manual.
Really for the BCR you only need to use the DT1
Don't bother with the D-50's "Transferring Data Using the Handshake Method"
The DT1 sysex format is shown on page 37 ...

Byte Explanation
F0H Exclusive status
41H Roland ID
DEV Device-ID
14H Model-ID (D-50)
12H Command-ID
aaH Address MSB
aaH Address LSB
ssH Data
sum Check Sum
F7H EOX (End Of Exclusive)

So all your messages should be in the form (all Hex : 123...89ABCDEF : base 16)

F0 41 00 14 12 a0 a1 a2 val CS F7

DEV (third number) is the (channel -1).
I'll assume channel 1 so DEV is 00

The address of the parameter is built from the "Address mapping" on page 39 and the Parameter tables starting at page 40

F0 41 00 14 12 a0 a1 a2 val CS F7

CS is the Checksum and can be generated by the BC

Example: the VCF cutoff frequency on Upper Partial 2.
It has a value range of 0 to 100
Address = 00 00 40 (Upper Partial 2 - page 39)
+ 0D from Partial Parameter (TVF cutoff Frequency - page 40) ....

F0 41 00 14 12 00 00 4D val CStype CSstart F7

val is the BC way of inserting the encoder value into the sysex.

Just the checksum to go.
cks-1 is the BC word for the way Roland calculate its checksum, but it also needs to know where to start counting.

Roland calculates the checksum from the address to the end of the value, so the checksum start would be...

F0 is byte 0 so the byte number of the address (a0) is 5.

F0 41 00 14 12 00 00 4D val cks-1 05 F7

One thing more... the BC can use Hex and decimal you need so to show the numbers are in Hex,so you use a '$' before the number

$F0 $41 $00 $14 $12 $00 $00 $4D val cks-1 $05 F7

So this is the description of the sysex message that needs to be programed into Mark's editor.

BUT your first job is to work out what BC encoders and buttons control what D-05 parameters.
I find this the hardest thing to do.

Here is a picture of the BCR2000 with the encoder and button numbers to help.


Let me know what you decide and I'll try to help you through programming it all.

All the best

Skek's picture


Thank you for your comment. Unfortunaly I find your explanation quite complicated. I have no understanding of midi programming at all, so I don't know how to do this.wink

Is there a possibility to assign parameters to the BCR via the "learn" function? Or do I have to make midi settings for this via the BC manager.
I have tried the following:
I have a software editor for the D-05 which is running via Google Chrome. (http://breadandbuttersounds.com/)
When I change a value of a parameter via this editor, a midi signal comes in on my bcr. (I have a midi i/o connection from my BCR to my imac).
But when I try to assign an encoder via the " Learn" button, it says "Bad".
I had hoped that I could assign parameters via the midi Learn function but maybe that's too simple?








Royce's picture

You can drop an encoder into LEARN mode, as you have already tried, then sweep the computer editor's control from the start to the end of its range and back again a couple of times. This tell the BC what the range is as whwll as what the message is.

I can't remember if the checksum byte at the end of the message might trip up the BC.

If it does you will have to use the editor

Let me know how you get on.


wildbearcat's picture

I coded one up really quick - you can grab it at