Volca FM MIDI out mod: weird sysex output

Discussion relating to the Korg Volca Series.

Moderators: Sharp, X-Trade, Pepperpotty, karmathanever

Post Reply
Eamoex
Posts: 21
Joined: Sun Aug 07, 2016 10:23 am

Volca FM MIDI out mod: weird sysex output

Post by Eamoex »

Hi all. This is a double post, here and on reddit. User ndstudio describes the mod and how to extract patch data. I'm having trouble.

I have done the mod and monitored the output with Midi-OX (filtered out clock messages). It's inconsistent at best. Exporting a patch sometimes outputs a 163 byte message (is it supposed to be 163 bytes?), sometimes one or a couple "note off". Here I tried 12 times in a row:

Image

Exporting all patches only outputs a series of "note off" messages at the very beginning of export, then nothing while the Volca cycles through all the programs. This is consistent and always does the same thing. Here:

Image

Unsurprisingly when I try to open any .syx file I save from Midi-OX into Dexed, all I have is garbled shizzle in the cartridge viewer and totally random, mostly silent patches.

Notes:
  • • The Volca knobs do send consistent CC messages. So do notes when the Volca sequencer is running.
    • I don't use a MIDI cable running from my audio interface to the VOlca MIDI input. Is this necessary to capture sysex pouring out the Volca?
    • I'm a total sysex noob. Never touched it before.
    • Triple checked my mod; no short, all leads are properly conducting signals. I think I've done a clean job.
Any idea what my problem might be?
Eamoex
Posts: 21
Joined: Sun Aug 07, 2016 10:23 am

Post by Eamoex »

All right okay all right. I hadn't thought that Dexed was listening to incoming sysex at any given moment. I thought the flow was 1. capture sysex with appropriate software and 2. open saved *.syx file in Dexed. Well it isn't so. You can do it in Dexed directly. It's worth noting that you don't need to put Dexed in a special mode for it to receive a patch. You just send the patch from the Volca and all operators in Dexed magically set themselves accordingly. The similarity of the sounds between Dexed and the actual Volca is properly striking!

The export from the Volca does sometimes fails as the output did show in Midi-OX, but you merely have to try again once or twice and off goes the patch.

That being said, it seems not to be possible to export the whole "cartridge" from the Volca. Again, as the monitoring with Midi-OX showed, exporting "all programs" produces no valid sysex. Weird. Did anyone pull this off?
OpAmp
Platinum Member
Posts: 1179
Joined: Fri Jun 07, 2013 10:26 pm
Location: Brussels, BE

Post by OpAmp »

Hi,

163 bytes would indeed be the size of one SysEx message. And the first 6 bytes and last byte look ok to me.
You might try to copy these bytes, change the program on the volca and then use MIDI OX to send them back (Send SysEx dialog, paste, send SysEx) and your exported program should have replaced your current program and sound as the original. (If you don't hit save, you will not lose the initial current program.)

Nevertheless this does not explain the inconistent behaviour. Did you try different MIDI interface to capture the exports? What you also might try is to disable the internal MIDI clock of the Volca (some global setting). It is known that some cheap MIDI interface can not handle MIDI clock messages (if they are sent by the Volca FM....) going in between SysEx messages.

For import in Dexed, mmh, no idea what is going on. Can you share a SysEx dump file (the one with the 163 bytes)?

In theory, it is not needed to have the MIDI In of the Volca FM connected. This will not bring anything to capture SysEx of program exports.

Bye.
microKORGXL, Kaossilator Pro, monotribe, SQ-1, volca fm, Kross 88 BK
Alesis SR18, Akai Miniak, Fender Strat, Line 6 Spider II 112, Zoom MS-50G
OpAmp
Platinum Member
Posts: 1179
Joined: Fri Jun 07, 2013 10:26 pm
Location: Brussels, BE

Post by OpAmp »

OpAmp wrote: 163 bytes would indeed be the size of one SysEx message. And the first 6 bytes and last byte look ok to me.
You might try to copy these bytes, change the program on the volca and then use MIDI OX to send them back (Send SysEx dialog, paste, send SysEx) and your exported program should have replaced your current program and sound as the original. (If you don't hit save, you will not lose the initial current program.)
Oops, I was a bit late with my answer, as you posted already an update in the meantime... :-)
microKORGXL, Kaossilator Pro, monotribe, SQ-1, volca fm, Kross 88 BK
Alesis SR18, Akai Miniak, Fender Strat, Line 6 Spider II 112, Zoom MS-50G
Eamoex
Posts: 21
Joined: Sun Aug 07, 2016 10:23 am

Post by Eamoex »

Hey OpAmp, thanks for your nice reply.
OpAmp wrote:163 bytes would indeed be the size of one SysEx message. And the first 6 bytes and last byte look ok to me.
Oh I need to read about SysEx. But are all SysEx messages 163 bytes? Also, do you think that the export "all programs" on the Volca (as in sending all patches, not "clone Volca to other Volca") should generate recognizable SysEx? Or could it be that this longer message is in some proprietary Korg format? I don't see why that would be. It's really strange that I only get a bunch of 'Note OFF'.
OpAmp wrote:Nevertheless this does not explain the inconistent behaviour. Did you try different MIDI interface to capture the exports? What you also might try is to disable the internal MIDI clock of the Volca (some global setting). It is known that some cheap MIDI interface can not handle MIDI clock messages (if they are sent by the Volca FM....) going in between SysEx messages.
My cable is good for sure. My interface is an Edirol FA-66 -- definitely not high end, but not rubbish either. But hey the clock disable thing sounds like a good thing to try. I'll report back.
OpAmp
Platinum Member
Posts: 1179
Joined: Fri Jun 07, 2013 10:26 pm
Location: Brussels, BE

Post by OpAmp »

Hi Eamoex,

No. SysEx is kind of free format message within the MIDI specification. What is standardized is the first few bytes, indicating the start of SysEx and for/from which device model it comes - to avoid conflicts between manufacturers. And the last byte is fixed as well. In between, it is up to the manufacturer to define what is in it. The MIDI association even recommends that all manufacturers describe their SysEx messages so that other ones can use it to control the device.

For the DX7, you can find it on the web. Korg implemented it partially because they understand the DX7 SysEx patches. (The DX7 itself has much more SysEx messages than the Volca supports.) Typically the sent and received SysEx message is the same for patches. Sent is for backup/export, received is to import again. You can also look on the Korg website and find the MIDI implementation chart for the Volca FM. The 163 bytes message is extensively described and explaining which parameter is represented by which byte in the message.

The Volca also supports the export of a 'cartridge', which is all programs at once. That SysEx message takes roughly 150*32 bytes.

Note that the Korg document only describes the messages that can be received, as by default there is no MIDI out on the Volca FM, so no need to describe the transmitted messages...

Have fun.
microKORGXL, Kaossilator Pro, monotribe, SQ-1, volca fm, Kross 88 BK
Alesis SR18, Akai Miniak, Fender Strat, Line 6 Spider II 112, Zoom MS-50G
spirit68
Posts: 34
Joined: Tue Jan 26, 2016 8:00 am

Post by spirit68 »

VolcaFM sysex specification does not have a checksum in 32-program-dumps. But original Yamaha DX7 has. This will prevent volcaFM dumps with 4103 bytes (F0 43 00 09 20...F7) to be opened by dexed or DX7 with their 4104 bytes dump-specification (F0 43 00 09 20...[checksum] F7).
You can add a random checksum byte (between 00 and E9) with any hex-editor right before the F7-byte and it will be useable with dexed. Dexed does not care if the checksum is right.
OpAmp
Platinum Member
Posts: 1179
Joined: Fri Jun 07, 2013 10:26 pm
Location: Brussels, BE

Post by OpAmp »

Hi Spirit68,

What makes you think that MidiOx is doing a translation errors? If outputs this rubbish, it means it did have received it for some reason.
Oh, I see you removed this remark meanwhile... ;-)

Bye.
microKORGXL, Kaossilator Pro, monotribe, SQ-1, volca fm, Kross 88 BK
Alesis SR18, Akai Miniak, Fender Strat, Line 6 Spider II 112, Zoom MS-50G
spirit68
Posts: 34
Joined: Tue Jan 26, 2016 8:00 am

Post by spirit68 »

im not sure about this. might come from the sequencer (first note in the sequence maybe?) as only the sequencer can send midi out msgs.

[edit] maybe you have a crappy midi interface that can't handle the FM's send speed so just an incomplete sysex is received. Midi is serial and some cheap interfaces lose some bytes.[/edit]
[edit2] pretty sure it is. looks like your interface lost information (stack overflow). This NoteOff on C-1 as a binary looks like "1000 0000 0000 0000 0000 0000". it's just one single bit without expected followers. [/edit2]

There is another annoying error with midi out as volca FM has midi thru enabled for midi cc messages. this is really annoying and will give some weird midi feedback loops. I wrote both issues (sysex dumps and midi through) to Korg Support already, they sent my E-Mail to Japan and then got an answer: "We don't officially support midi out mods".

I have a workaround for ableton Live with CTRLR and pizmidi tools to prevent those loops while recording CC-Messages: you will need http://thepiz.org/plugins/?p=pizmidi
http://ctrlr.org

Midi-Track 1:
Input: Channel 13 (Volca FM)
Plugin: Ctrlr with selfmade VolcaFm Panel midi mapped to volcaFm sliders and knobs. Plugin Output "to host"
Midi-Track 2:
Input: Ctrlr plugin
Plugin: pizmidi ccStepper that will allow only one cc-message each 1/128 note.
Midi-Track 3:
Input: Ctrlr plugin
Plugin: pizmidi NotchFilter allowing notes but blocking cc
Midi-Track 4:
Input: pizmidi NotchFilter
Output: Midi Track 5
Midi-Track 5:
Input: pizmidiccStepper (+ forced Track 4 from above)
Output: Midi Interface Channel 13 (Volca FM)
OpAmp
Platinum Member
Posts: 1179
Joined: Fri Jun 07, 2013 10:26 pm
Location: Brussels, BE

Post by OpAmp »

Mmh, interesting. Good that I asked for it. :-)

It does not surprise me that they don't offer support for the MIDI out mod. Especially if their implementation is kind of weird (midi thru for cc).

I agree with you on the receive of the dump. It must be the interface itself who loses track somehow, which on its turn causes MidiOx to display the strange messages. Although the interface is an Edirol...

Bye.
microKORGXL, Kaossilator Pro, monotribe, SQ-1, volca fm, Kross 88 BK
Alesis SR18, Akai Miniak, Fender Strat, Line 6 Spider II 112, Zoom MS-50G
Eamoex
Posts: 21
Joined: Sun Aug 07, 2016 10:23 am

Post by Eamoex »

spirit68 wrote:You can add a random checksum byte (between 00 and E9) with any hex-editor right before the F7-byte and it will be useable with dexed. Dexed does not care if the checksum is right.
Hah! Pretty cool, thanks! Will try and let you guys know how it rolls.
OpAmp wrote:. It must be the interface itself who loses track somehow, which on its turn causes MidiOx to display the strange messages. Although the interface is an Edirol...
Meh. That's lame! It didn't cost a thousand, but still I thought this thing was solid.

Thanks for your answers everyone.
spirit68
Posts: 34
Joined: Tue Jan 26, 2016 8:00 am

Post by spirit68 »

I did lots of research as I wanted to get rid of too many stuck notes until I had to accept that these 1/1 usb-midi-adapters do not really work for anything else but playing some notes (even midi clock can make them stall).
My midiface 4x4 works quite fine for its price. But still, i would buy a better one next time.
Eamoex
Posts: 21
Joined: Sun Aug 07, 2016 10:23 am

Post by Eamoex »

spirit68 wrote:these 1/1 usb-midi-adapters do not really work for anything else but playing some notes
I believe you. But this isn't quite the kind of interface you describe...
spirit68
Posts: 34
Joined: Tue Jan 26, 2016 8:00 am

Post by spirit68 »

no offense, but maybe a soldering error (groundloop/hum) or bad cable. :(
Post Reply

Return to “KORG Volca Series”