Send PB "E0 00 40" automatically

Hi, I don’t know if my request’s possible
There are three VSTI that sometimes behave strangely when uses Pich-bend … they keep the Pitch-Bend
above 0 when I leave the Pitch-Bend joystick sometime 0.1 … 0.2 … 0.3 … 0.4 ‘of default PB value 0.0’ … So the instrument become out of tune

I think this happens due to poor programming, because the new versions of the same VSTi do not do this

What I have to do in this case is touch / move the PB and this makes the VSTi reset the PB to 0

What i want to do using BMT is send reset value E0 00 40 after each time I let PB go
or maybe 2 message
E0 00 41
E0 00 40 after 10 milliseconds
Don’t know how to do that

My second question is about program a switch button
some music keyboard have a switch button for the last two sounds used but not on my keyboard ‘Korg Kronos’ and i don’t know how to make BMT send one of last 2 PC it received? I want to assign a button for that

for example:
I select PC1 then PC5 then PC9 then PC4
the button now should switch between PC9 and PC4
now if I am on PC9 then I select a new sound ‘new PC’ for example PC20
the switch button now should switch between PC9 and PC20 and so on

Note: Korg kronos has toggle buttons only.


Please find the attached.

The first preset handles your first request. Pitch Bend Return

Translator 0.0 Sets a 1 second watchdog timer when you send pitch bend. As long as you keep moving the lever, pitch bend messages will continue. When you stop moving it, the watchdog timer will trip after one second.
Translator 0.1 just passes through the pitch bend messages.
Translator 0.2 is the timer, when it trips, It will invoke Perform ‘SendMIDI’ which is Translator 0.3. The last parameter is the delay amount. Then it immediately sends E0 00 41.
Translator 0.4 sends E0 00 40 after a 10 ms delay.

The second preset handles your second request.

Translator 1.0 Just stores the current PC message in global variable z0 and the last one in global variable z1.

Translator 1.1 will use either note on or note off (since your switch is a toggle), to call the last PC sent. It will send it and then swap z0 and z1 so the next time you push it will will go to the other one and swap again.

PB-Return-and-last-pc-2024-01-03.bmtp (2.0 KB)

Steve Caldwell
Bome Customer Care

Also available for paid consulting services:
1 Like

Wow Steve you are amazing :pray:
I tested the first translator and it work very well

but I noted it waits the pitch bend to stops on any value to work. if i moved the PB to any range for example +2 ‘full range of PB’ it will reset it after 1 second / 1000 milliseconds… that will cause a problem when I play … If I moved the PB stick to a specific value for more than 1 sec
I do not want to increase the translator’s time to solve the problem. On the contrary, I want to reduce it to millieconds maybe 50 … or less

Please can you make it work just when I release the PB … so when the PB value = E0 00 40?
not when the PB stopped on a different value… so every time i release the PB the translator work … when the PB value is not E0 00 40 … it will keep waiting for release.

This should do what you want. Probably and easier way but I was lazy and just:

  1. Modified the incoming trigger
  2. Changed the delay amount of the timer.

PB-Return-and-last-pc-2024-01-03a.bmtp (2.0 KB)

Steve Caldwell
Bome Customer Care

Also available for paid consulting services:
1 Like

Thanks a bunch Steve :pray: That’s exactly what i am looking for :+1::+1::+1:.