Midi messages from BMT activating other commands in Digital Performer 9


I'm so stumped right now and I need some workarounds or solution for my problem. This may be specific to Digital Performer (DP) but there must be a workaround that I am not thinking about. Any help would be appreciated!


I have a Yamaha DM1000 and I want to use the fader as a switch so that when it is down, it sends a midi note, and when I push it all the way up, it outputs a midi note. On the DM1k you can program a midi message/sysex for a fader, knob, or button which is really cool. I created my own sysex message that has the typical yamaha header (F0 43 1F 3E 7F ….F7) to output into Bome. The midi notes control an external piece of hardware and Bome translates it very well. It's the software side that I need help with.


I want to record the midi notes via DP so I also output the notes via 'Bome virtual out' as an input to a midi track. What happens is that there are no midi notes going into DP. When I move the fader full up and down it turns on the 'link playback to memory' and 'link selection to memory' commands (Basically memory start and stop points like on any DAW).


I don’t think that my custom sysex has a problem because as far as I can see only the midi notes are going into DP. Also because of the Yamaha sysex header I really don’t think that it would control anything in DP (Am I wrong?)


My translator is basically as follows:


Fader all the way up (7F) MTP outputs a note on command (note 65, Velocity 127)

The 7F note also starts a timer that outputs a note off command (note 65, Velocity 0) after 100ms


Fader all the way down (00) MTP outputs a note on command (note 68, Velocity 127)

The 7F note also starts a timer that outputs a note off command (note 68, Velocity 0) after 100ms


It seems this actions somehow activates the memory command in DP. I have to do the same action (00 to 7f to 00) to activate/deactivate the memory command. Memory does not activate if I do not go all the way up (example: 00 to #<127 to 00)


As far as I can see, DP is only reading the Midi note on/off command on the virtual input. DP does register some input activity on the sysex channel but I don’t know if it is reading it.


I am able to record the same notes from the software midi keyboard with no problem. I also fed CC messages instead of sysex into MTP with the same results.


I hope this explains things. Just looking for a solution or alternative ways to send the same midi note message without activating memory.


I have attached the translator file for reference.




Well if I understand it correctly, you only want the notes to go out to your DP when the DM1000 sends the Sysex and only out to your DP.

You have the project set up that anything sending the SysEx will trigger the event. So for instance is your MIDI SPORT is passing through messages from any other attached device, it will also send the event.

At the preset level override the project level input so that only the DM1000 triggers the events. That way if there is any routing that passes through the SysEX through from any other port, the notes do not go out.


See the attached and also this tutorial on MIDI Device Selection.

Notice that at the preset level, we are only looking for input from DM1000 and output will go to DP unless otherwise overridden at the translator level.



Hi Steve,

Ok so I changed the preset ports to only send Dm1k messages to DP and nowhere else. On the translators I set it to use 'project/preset default ports'.

Unfortunately, this has the same results in DP turning on and off the memory function. So strange how DP differentiates between notes from a keyboard to notes from this app. There must be something I am missing.

I even changed velocities and time differences to make it more 'random' with the same results.

Here is something that may be the issue. When I move the fader, DP shows (in the midi monitor window) that there is activity on the DM1k out but it doesn't send the notes to virtual port (DP) until it hits the specific sysex messages. Could it be that DP is reading these sysex messages? Is there a way to just totally hide these sysex messages being output anywhere and only send these midi notes?

I found a few users wanting to hide sysex messages but the method to hide it ("swallowing commands" and "no output") kind of went over my head. Could this be a solution?


I guess the simple answer is that if you turn off static MIDI routes in your thru path (MIDI router). Only incoming messages with the exact pattern you are looking for will be processed to the output and only to the output ports you define. With that said, if any of your devices that you are sending these messages to, also have MIDI thru paths set, there would be nothing to prevent a MIDI loop or redirct from your target device to other thru paths they may have defined.


Typically I do not use thru paths (the static MIDI router) unless there are a bunch of undefined MIDI messages that I want to pass through.




I'm not sure if you are doing this but your control commands going to your app should be on a different MIDI port than your performance (notes).


Steve Caldwell
Bome Customer Care

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

Ok. So I partially figured it out. Somehow I had to delete the MCU control surface instance that I added in DP somewhere along the way of this adventure. Now it doesn't turn those features on which is perfect.

Now the MIDI notes are not being recorded. Let me dig a bit deeper and let you know when I figure it out.

I guess these things just need some time to figure themselves out. Thanks for your help!

Ok all fixed. I refined my routing and I separated the presets making one for sending to the hardware and one for sending to DP. I just duplicated the preset I had already made for the hardware and changed the preset ports! So easy! Resolved!

OK, yes, the answer was staring us right in the face and much simpler than I had originally thought. Glad you got it working!