Can the BCR2000 send a sysex dump to Volca FM?

6 posts / 0 new
Last post
Rangr
Rangr's picture
Can the BCR2000 send a sysex dump to Volca FM?

The Korg volca FM accepts CC's for certain parameters, but the majority of the FM parameters are only adjustable through sysex.  Unfortunately it's not as simple as sending a single sysex string for a specific parameter (as the DX7 seems to work) - it only accepts a full sysex for the entire patch. 

This means that the full sysex needs to be sent after a parameter is adjusted for the adjustment to take effect in the volca FM (so this is not real-time and causes a slight interruption of audio in the volca).  There is an online editor ( https://synthmata.com/volca-fm/ ) that does this and it seems to be configured such that it sends the entire sysex patch immediately after any adjustment is made to any of the parameters.

Can the BCR2000 be configured to do something similar? E.g. assign one button to send a full sysex string containing the current values for all encoders/parameters? Editing the volca FM parameters directly is not bad compared to other FM synths but being able to use the BCR2000, even if non-real-time, would be incredible.

 

 

 

Mark van den Berg
Mark van den Berg's picture

On the BCR2000, in the definition area of each preset, button or encoder, 125 bytes are available for SysEx messages.
See BC MIDI Implementation.pdf (available from https://mountainutilities.eu/bc2000), section 13.7.
(For buttons and encoders, several "clever" options are available too (see section 14.6), but I doubt whether these options will be useful in this case.)

So in that sense the answer to your question depends on the requirements of the Volca FM.
I haven't studied the format, but "the entire SysEx patch" doesn't sound as if it's going to fit into 125 bytes...

But even more seriously, I can't see how such a setup would work at all on the BCR2000: there would be no way for two buttons or encoders to communicate their changes to each other's "entire SysEx patch".

BillB
BillB's picture

Rangr, I'm really surprised, but you are quite right about the Volca FM needing an entire patch dump for each parameter change.  I have Patchbase on my iPad, which contains an editor for the Volca FM.  I don't have a Volca FM, but I connected the iPad MIDI out to a PC MIDI in, running MIDI-Ox.  To change one parameter, eg, turn off Operator 1, requires 163 bytes.  The message, as shown in MIDI Ox, is

 00015F59   1  --     F0  Buffer:   163 Bytes   System Exclusive      
 SYSX: F0 43 00 00 01 1B 63 63 63 63 63 63 63 00 27 00 00 00
 SYSX: 00 00 00 00 00 00 01 00 07 63 63 63 63 63 63 63 00 27
 SYSX: 00 00 00 00 00 00 00 00 00 01 00 07 63 63 63 63 63 63
 SYSX: 63 00 27 00 00 00 00 00 00 00 00 00 01 00 07 63 63 63
 SYSX: 63 63 63 63 00 27 00 00 00 00 00 00 00 00 00 01 00 07
 SYSX: 63 63 63 63 63 63 63 00 27 00 00 00 00 00 00 00 00 00
 SYSX: 01 00 07 63 63 63 63 5C 63 63 00 27 00 00 00 00 00 00
 SYSX: 00 63 00 02 03 07 63 63 63 63 32 32 32 32 03 00 01 23
 SYSX: 00 00 00 01 00 03 18 4E 65 77 20 49 6E 69 74 20 20 3E
 SYSX: F7

So if the BCR 'only' has 125 bytes for a parameter message, as Mark says, there is no way to create a message that it can send to the Volca FM. 

By comparison, the same message for the DX7 (on which I thought the Volca was modelled) is

 0006CDA8   1  --     F0  Buffer:     7 Bytes   System Exclusive      
 SYSX: F0 43 10 01 1B 1F F7

So it looks like you are out of luck editing the Volca FM with the BCR.

 

 

 

Royce
Royce's picture

Yamaha did the same thing on the SY22 and SY35.
The TG 33 is essentially the same synth (the model in between).
On it you can send a single parameter, but on the others you need to send the whole patch.

Let's hear it for Yamaha... ya

Royce

Rangr
Rangr's picture

OK, too bad.  Yes this idea also depends on the BCR being able to create a sysex message that is modified by current encoder values, which is apparently not possible. I think I'll try to use an old Raspberry pi to translate between the BCR and the Volca..

 

BillB
BillB's picture

The BCR can create a sysex message that is modified by current encoder values, just not of the length (163 bytes) that you would need to send the sysex string to the Volca.  Working through the Raspberry Pi sounds good - perhaps you can share with others if successful smiley