Hi, this can be done but not with Bome MIDI Translator Virtual Ports which are one way.
One end of a Bome MIDI Translator Virtual Port must be MIDI Translator and the other end needs to be a different application or a device (not MT Pro).
You can do it with Midi Yoke, LoopMIDI or LoopBE which are MIDI pipes if you would like, however this would be less efficient because a MIDI pipe performs 2 system calls for every message.
I would recommend instead to use the global variables in your rules to calculate the final CC message you want instead of creating 1 CC and then converting to another CC. Is there a reason, you need an interim CC message for this?
Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist bome@sniz.biz
the reason is modularity and providing optional features to users.
one mapping converts my DDJ-1000 to Traktor
second mapping emulates the DDJ-1000 for DDJ-SX2/SZ/SR/etc users
pioneer has two different midi codes: one for serato controllers, another for rekordbox controllers
this allows me to maintain a single mapping for all pioneer devices. Right now I have multiple mappings in parallel
third mapping emulates the SX2 on the keyboard. This is for testing without the HW, but I can imagine being a viable keyboard-only solution
——–
I appreciate the BOME design choice of BMT devices being one way, as it avoids loops.
But could you please consider any solution for this avoiding yet more third party softwares? maybe using the MIDI router?
I ask this because I receive questions from users everyday about installation. Up to a month ago, I had a single traktor mapping to instal, and this was already painful; Now I have traktor+BOME; soon I will have Traktor+BOME+some_midi_pipe
I will make your request. In the meantime, something like this might help.
There are 2 presets
DDJ-1000 Native – MIDI message coming in here will handle your native mapping (with your rules applied)
DDJ-SRX to DDJ-1000 – This will take input from a different source (in my case my DDJ-SB3 and set global variables ga for incoming MIDI channel, gb for incoming CC and gc for incoming value and then output a one shot timer “map cc to ddj-1000)
In the first preset, I added a translator (Special CC Mapping) with incoming value of the one shot timer ( my DDJ-SB3)
In the rules we look at the value of ga (MIDI channel) and gb (cc number) and then use rules to map to a different outgoing MIDI channel and number
I combined the channel and CC number to make the rules a bit easier for the mapping.
In this case I am mapping an incoming 14 bit CC into a separate outgoing 14 bit CC.
If there is no match, I exit with no outgoing action. This one translator allows for multiple CC mapping
I could have easily created different translators for every CC and just skipped outgoing action if the incoming values did not match what I wanted for that translator.
I hope you find this helpful!
Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist bome@sniz.biz
Did this help? I DID make your request in addition to this workaround however.
Have you worked with the DDJ-SB2? I have one and cannot get the deck lights to light up. Everything else seems to work.
Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist bome@sniz.biz
thanks for the feature request.
the workaround definitively works, but i’m finding it increases complexity a bit, and leads to redundant code/translators.
using loopBE the performance decrease is marginal because this is for the pads
(the jogs still go directly)
i dont have an SB2, which has no RGB colors.
I have an SX2, SZ and 1000. All these support full RGB colors pads
OK, thanks for responding. I was just hoping I could figure it out as Pioneer has not been able to help me with this.
Glad LoopBE works for you in the interim although I DO understand the pain of having to load up yet another tool.
I use this solution pretty extensively when I have a project for someone that I don’t have their controller. I end up first building a project using my available controller as a “emulator” for the target application I’m developing. Of course I rely on the documentation and the user to know if I got the emulation right. I just can buy every controller there is out there. If the target controller is cheap enough, I save the hours and just buy the target controller. (not very often though).
Thank for your patience!
Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist bome@sniz.biz
——
PS: my reason to move to BOME was to support the screens of the ddj-1000, as not even needle rotation is done by the firmware. This was a great success.
My objective is now backport the latest mapping to the SX2 as well, using the emulation method to merge everything in a single mapping