CC to Pitch Bend - PC to CC (Formerly Korg Kronos Toggle to Momentary)

Hello
I stopped using Bome MIDI Translator Pro for a long time and now I feel like I don’t know how to do anything

I want to switch Korg Kronos toggle buttons ‘16 Buttons in the left panel’ to momentary
+
How to convert ribbon controller ‘Midi CC#16 0-127’
to pitch bend -8192 to 8191

Any help is welcome

Thanks.

Hi and welcome back! You will need to review the user manual to see if you can reprogram the switches themselves for momentary. It is easy with MT Pro to convert momentary to toggle but not the other way around. This is because in toggle mode, no MIDI is sent when button is released so there is no message we can translate.

Incoming : CC 16 on MIDI CH 1 (or whatever channel it sends) any value set to qq.

Outgoing : Raw MIDI Ex qq qq (where x=0-F for MIDI CH 1-16)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Thank you Steve :heart:
There is no option to change Kronos buttons to momentray

I have another question if you don’t mind, I added a translator to convert a program change ‘pp’ to CC ‘pp’ It works, but there’s a problem
I use VCV RACK, The problem is that when I use any of those messages they stay stuck , I want a way so that when I send a new CC message the value of the previous message is changed to zero instead of 127 automatically, something like

I want a way to let CC message work like a momentary ‘trigger’ message … VCV rack receives CC and note messages … see here

The Green lights at the cable means that the value is fixed 127 … ‘10V in VCV’

That’s because I used these messages once… The value remained constant and now I can’t use them again

In short
when I select any program on Korg kronos, i want BMT to convert it to CC#pp ‘like i did’ but what I want now’s make BMT send that message twice in a row
first message : 127
then: 0 … like momentray button.


:man_shrugging:

Hi,

First I created the translator that we earlier discussed. CC 16 to pitch bend.

The second translator should handle your second request if I understand it right.

We capture the last PC sent into the global variable ga. We use this value for the next iteration. This is in rules:

// last program
tt=ga
// next program
ga=qq

On output we send raw MIDI messages. The first one sets that last PC/CC value to 0. The second one sets the new PC/CC value to 127

This is in the outgoing message

// Turn of last on
b0 tt 00
// Turn on this one
b0 qq 7f

For testing, I have my aliases set up as follows. You will need to adjust for your devices.

image

You can learn more about aliases from this tutorial.

Here is the project file I created.

cc2pb-pc2cc.bmtp (1.3 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Oh man you’re a genius :pray:
You are my rock, everything works like a charm
Merry Christmas :snowflake::christmas_tree::snowflake:

There’s a problem in the second translator
It causes the Midi Note to hang, I don’t know what the reason is.

If I play before switching the program, everything works normally.
But when I choose a new program then start playing, the MIDI NOTE starts to get stuck.

Edit: I’ve changed PC to CC Translator to ‘specific port’ so it doesn’t conflict with anything else


everything works fine now :slight_smile: thank you again Steve :+1:

1 Like

You may want to check out this tutorial on device selection.

1 Like

Thank you again Steve :slight_smile:
I want to make a simple modification to the translator
PC to CC
What you made for me

I want to convert all PC to CC with the same number ‘This is what we have done so far’
But I want to make a specific set of PC translate to a specific CC

Example
PC 0…to…PC 4
translate them all to CC70

PC 5 to PC 24
convert them to
CC5… CC6 … CC7… Etc ‘up to CC 24’

The rest of the PC messages that higher than PC24…translate them all to CC70 as well… + Paying attention to the rules you used

// last program
tt=ga
// next program
ga=qq
// Turn of last on
b0 tt 00
// Turn on this one
b0 qq 7f

So the rule applies to all of those translators

I have no experience with handling exceptions or ‘More than/ Less than’ .

OK,

Now I’m doing it with 2 translators and the new ‘Perform’ rule of Bome MIDI Translator V1.9.1 or higher.

Translator 0.1 still takes the PC input and we evaluate the value of the PC sent. From that we determine which CC to send. We have a rule that only sends the CC value 0 message if the new outgoing CC will be different.

// last program
tt=ga


// default value
tt=70
// set outgoing to CC24
if qq<25 then tt=24
// Set outgoing back to 70
if qq<4 then tt=70

// Only send CC off message if the new outgoing is different
if ga==tt then skip next rule
Perform "SendCC",0xb0,tt,00
// Always send the new one
Perform "SendCC",0xb0,tt,0x7F

// Update for next iteration
ga=tt

Translator 0.2 then triggers the CC message by the parameters passed from 0.1

cc2pb-pc2cc-selective.bmtp (1.8 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Thank you so much Steve, The new translators doesn’t work at all… Can you check it please? :pray:

Well, I’m not entirely surprised because sending the same CC number with value of 7F for multiple PC changes probably wouldn’t do anything. Would you rather use the defined CC numbers to send the value of the PC instead of 7F.

Instead of B0 46 7F for PC 1
Send B0 46 00
For PC2 we are currently sending B0 46 7F
would you rather send B0 46 01

Note 46 Hex is 70 Decimal
B0 is CC on MIDI Channel 1

As you can see, I was a bit unclear on what you wanted.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Thank you Steve

What I specifically want is to use my Kronos to play live with internal Kronos sounds
+
some external VSTi instruments “on the computer”

Navigation between external and internal sounds is done through program change ‘PC’ messages

I know that I can do this through Midi Channels, but there is an obstacle that I do not know how to avoid

I am Arab and we use oriental scales in our music
I have a midi controller specifically for the oriental scales called the MAQAM SCALE Controller. “It subtracts 50 cents from any note you choose.”
It has ‘12 buttons for each note on the octave’ + transpose buttons

The problem is: When I use the MAQAM SCALE controller to adjust the kronos microtuning, I want it to send the same adjustments to the other vsti… so that if I select different sound, the microtuning will be the same when changing vsti sounds, Sooooo I do not have to resend the information every time i play different VSTi

MAQAM SCALE controller can send sysex messages to Korg Kronos
+
‘CC message’ … CC102 to CC113 ‘on + off’ messages for VSTi instruments

I can use MAQAM controller CC messages to assign them to some VSTi that supports microtuning so they will be ready for live playing

This video simply explains what I’ve done so far

on the left side
Midi CC > CV
Dedicated to CC messages " which you helped me with pc-2-cc

On the right side … there is another Midi CC > CV unit for the MAQAM SCALE controller
It sends CC to microtuning adjustments for all vsti that I linked them with MAQAM Controller CC messages

So… the microtuning will be the same on my Kronos and on the all vsti instruments

Is there a simpler way than this? I think so :man_shrugging:

Too much information for me in your video so let me try to summarize.

  1. PC to CC from MAQAM to control Your Kronos. Is this working now? If so, was it the first version or the one yesterday?
  2. PC to CC to from MAQAM to control your plugin micro tuning of VSTi.

Same PC would need to control both.

So what CC number and values do you want to send based on the PC’s for each device?

You say MAQAM sends CC 102-113 and SysEX but not PC message so not sure why we are translating from PC. Also what SysEX does it send? I haven’t seen any examples of SysEX.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

No
the PC messages from Kronos not from MAQAM

I use those messages to select VSTi instruments in VCV Rack "when i select one of my kronos sound that i had assign it to one of Vsti… VCV rack now send all midi informations to that VSTi

When i select another sound that i assigned to different vsti… VCV rack will send all midi informations to the second vsti…

When i select one of Kronos sounds ‘Which I did not assign to external sounds’… VCV Rack will send all the midi information back to the kronos to play Kronos internal sounds

And I use MAQAM controller to send Sysex messages to Kronos for microtuning + CC messages to all vsti instruments … also for microtuning

Is that working? If so what version of the PC to CC project are you using?

Are the SysEX messages controlling your micro tuning on your Kronus? Is that working?

What CC messages CC# and values, does you VSTi need to switch microtuning? I assume this will not be PC to CC but instead CC 102-113 with a value of 7F that needs to be translated to other CC’s with other values. Or are you looking to have you take the SysEX messages and send theses CC’s to your VSTi instead? In either case, I would need to know what to translate to.

I your last requirement you said you needed PC0-4 to translate to CC70 but didn’t indicate a value and PC5-24 to send CC 24 but again did not specify a value. You asked for PC25-127 to send CC70 but didn’t specify a value. Also, I’m not clear on when you send these CC’s you need to turn off the last CC (value 0) first.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Is that working? If so what version of the PC to CC project are you using?

Yes it works
i use your project ‘cc2pb-pc2cc.bmtp’

Are the SysEX messages controlling your micro tuning on your Kronus? Is that working?
Yes, this controller is made specifically for this purpose and works with all Korg + Yamaha keyboards
‘You can choose your keyboard model through which it will send sysex messages for the same model you chose’

What CC messages CC# and values, does you VSTi need to switch microtuning? I assume this will not be PC to CC but instead CC 102-113 with a value of 7F that needs to be translated to other CC’s with other values. Or are you looking to have you take the SysEX messages and send theses CC’s to your VSTi instead? In either case, I would need to know what to translate to.

When i press CC103 button ‘it’s for C note’ for example … MAQAM will send CC103 ON message
so I can assign it to any VSTI parameters … in my case … I use ‘SWAM VSTi instruments’ that have the ability to assign parameter for its microtuning

When i press CC103 again … MAQAM will send CC103 OFF … so … Swam VSTi will turn C microtuning off

So i don"t need to do anything for MAQAM messages …

All my problems now are related to switching sounds internally + externally
your cc2pb-pc2cc.bmtp patch work fine in this case … all kronos sound ‘programs 0-127’ will be send a different message
while I don’t want to… I want to assign some sounds to send different midi CC each one to a specific VSTi

As for the internal Kronos sound, I want them to send a specific CC, for example CC70
so that when i chose any of internal Kronos sound … Tell the VCV Rack that I want to send midi inromations back to Kronos …

So I asked to be ‘PC0 To PC4’ = CC70

PC25 to PC127 = CC70

Any number between PC5 and PC24 will switch to CC while maintaining the same number CC5 … CC6 … CC7 Etc

Now
I will assigns CC5… CC6… CC7… up to CC24 to each Vsti instruments

The rest of kronos sound ‘internal sound’ will send CC70 to make VCV RACK. sends midi information back to kronos to plays its internal sounds.

  1. OK, this version sends CC70 value 0 then CC70 value 7F if PC <5 or PC>25
  2. If PC is between 5 and 25 it sends last CC value 0 and new CC value of PC

I hope this is what you are looking for. If you want to check this put the word ‘Log’ in the filter area of the log window.

I suggest you look at the rules of translator 0.1 to understand it in case you need to do modifications.

cc2pb-pc2cc-selective-a.bmtp (1.9 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

I feel embarrassed by your generosity Steve :heart:
Unfortunately there is somwthing wrong

Example: if i select PC1 on my Korg kronos BMT send cc70 … Now if i select PC9 … BMT will send the previous number, not the current number … so it will send CC70 again
then if i seletc PC10 BMT will send CC9 and so on…

therefore, every time I choose a new program, it sends CC with the same number of the previous program selected not the last one selected.


Edit: I think VCV RACK doesn’t handle multiple CC messages at the same time
I don’t know what is the difference between the first file you made for me and the last file/patch

The first one works as it should except that I want to customize all my kronos internal sound 0-4 and 25-107 to send CC70 while the rest PC ‘5 to 24’ sends the same PC value as it happens in the first file / patch ‘cc2pb-pc2cc.bmtp’

Try this one. I was sending the CC with a value of 0 to turn it of but maybe that confuses your plugin.

I commented out these rules in translator 0.1

//if tt==70 then skip next rule
//if ga==tt then skip next rule
//Perform "SendCC",0xb0,ga,00

cc2pb-pc2cc-selective-b.bmtp (1.9 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like