Create "All kill FX "Button

Hi, I’m new to Bome
And super dyslexic, I need your help

I would like to create a ‘Kill FX’ preset in Bome Midi translator consisting of using a footswitch to deactivate the Traktor and Ableton FX that are active in Traktor // if no FX are activated, the footswitch does nothing. Here is the diagram and the associated midi information

There’s something I don’t understand in the rules
Or when I do, I only act on the letters of the controller
I’ve been working on this for a while
I think I need a mentaur
Think U
Beta footswitch rules ok traktor 4 .bmtp (6.6 KB)

https://drive.google.com/drive/folders/1_jKm3F25yGoJkxBDPtiuY-ATNvj6Vlwz?usp=sharing

Hi and welcome to the Bome community!

I assume you are looking at Preset 5 (Footswitch)

I set up a few more aliases. It is always good practice to use aliases. I also removed MIDI thru routes for now. You add them back in if you would like. I typically remove them for testing so that I don’t get unexpected MIDI messages getting through.

Here is how assigned them for my test.

You can learn more about aliases from this tutorial.

I then modified the 2 translators to accept MIDI from and send MIDI to their specific ports (devices).

For more information about device selection, see this tutorial.

I then modified the rules of the translators. I also fixed the input of translator 5.0 where you had it only to recognize a value of 7F.

Push-Disable-Traktor-FX…bmtp (6.7 KB)

Steve Caldwell
Bome Customer Care


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

Hi Steve: Thanks for your welcome
bome is an incredible tool. It opens up huge possibilities for dj set live set. I can’t wait to get the box.
I’m putting together a live performance set and I’m really counting on it.

Even if the interfaces are scary at first, you soon get used to them.
But I’m realizing that there’s no standard layout…

It’s easier to read and reduces the number of possible hours.

But in my case it still doesn’t work.
However, the rules seem to trigger correctly.
I started the project by connecting just one fx button before calling me the whole traktor . Do you have any good face rules to recommend? I created our midi assignment on the same function to test Rien . I created a version of ChatGPT for bome. And he doesn’t know I also tested with another Chanel. . I’ll leave you the mapping t’es Traktor and screenshot if you don’t have .
The mapping is on goolgle drive you’ll find it in my profile description
Your help is precious `
Thanks in advance


Push-Disable-Traktor-FX…bmtp (4.1 KB)

Hi,

I will need to see what is happening as you try to use it.
Open the MIDI Log window.

Check the following boxes.

Then operate the appropriate controls. Traktor should trigger 5.0 and you footswitch should trigger 5.1.

Then copy and paste the content of the log window into a your reply on this posting and I will take a look.

Steve Caldwell
Bome Customer Care


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

it seems to be ok and everything’s responding : / except traktor which isn’t getting anything …


It looks like the project file (translator 5.1) is sending note-off note 0 MIDI CH14 with velocity of 0 where it should be note-on note 0 and probably a velocity of 127 (0x7f).

Could you try that?

Steve Caldwell
Bome Customer Care


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

It’s the same thing…

I am obliged to create dedicated in and out in a Traktor, otherwise I have conflict problems.

When I activate lunch learn
It receives the information.

It’s an understandable :sweat_smile:


Well there can only be 2 problems.

  1. The midi message being sent on the output of the translator is not what Traktor is expecting. From the log, you can clearly see it is sending a message.
  2. Traktor is not recognizing any MIDI Input.

Try the attached based on your screenshots. In this case C-1 = note 12 however there is no standard for note-naming with MIDI.

Push-Disable-Traktor-FX–2024-12-23…bmtp (6.7 KB)

Steve Caldwell
Bome Customer Care


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

Hello Steve
I hope you’re well and that you had a good Christmas.

That’s right;
C-1 = note 12 on Traktor .
and Disable FX doesn’t work with Control Change ; Note only

It works with 1 FX
But several FX
when Disable FX :
the active FX --switch off : OK
BUT

Fx inactive --Switch on : Problem …
moreover, this reactivates the rule
so if I press again
the FX are reversed
if I press again
nothing
the initial active FX remain locked

(only on the FX in Traktor ;; for the A&H Xone Db4 and Ableton Live ; all is ok

More
there’s a lot of interaction with BOME .
Isn’t there a way to do this with a global Variable?

I made you a screan Shoot step by step

BETA0.6.bmtp (14.0 KB)

1 ALL FX OFF (POSITION 0 )

ACTIVE SOME FX (POSITION 1 )


PRESS FOOTSWITCH
INVERT ACTIVE FX (POSITION 2 )PROBLEM


PRESS Footswitch
INiTIAL FX (POSITION 1 ) PROBLEM

PRESS NOTHING (POSITION 1 ) PROBLEM

almost there

Thanks in advance

:relieved:
Gabin

Yes, Merry Christmas to you as well!

Now you are getting way too involved. You now have 19 translators where you just had 2 before. Can we just work on FX 1 and get it working first before diving into anything else. Of course the log will not show what is working and what is not.

I need to know on one FX.

  • What message to Traktor works to disable and enable it.
  • What message does Traktor send back when it is enable and when it is disabled.
  • Which device do you want to solve first and what does it send for each of the above.

Also tell me what MIDI messages are working sent to Traktor. I don’t care about any MIDI messages that don’t work.

For now, lets not worry about the other devices and MIDI feedback. We start simple and build from there.

Yes we can use Global variables to set various states. If we know how Traktor reacts, we can use them to set LED status etc.

I suggest for the first step we just work with Xone and Traktor.

Once you get the concept of what we are doing, then you can build things out from there. I can provide coaching and examples to help you along the way but it is out of scope to build the solution for you.

Steve Caldwell
Bome Customer Care


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

Looking at your project file closer, it looks like you are using the global variable g0 to determine the state of FX1, FX2, FX3, and FX4. You should probably create different global variables for each FX state or us the same global variable using a bitmap.

You are using the global variable g0 for all 4 FX’s as well as your 2 filters.

1 Like

Hello Steeve
Each FX works separately

But the purpose of this function is to switch all FX ON with a single MIDI instruction (I) while leaving all FX OFF.

the current problem is that the ( FX OFF ) :
are activated by (I) IF there is one or more ( FX ON )

effectively I tested with different variable
but I can’t produce a rule that works

So you want to turn all FX on if any FX is off? I’m not following you. In either case, I think you would need to track the state of each FX separately each with different global variables.

Steve Caldwell
Bome Customer Care


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

Steve Caldwell
Bome Customer Care


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

"
*the current problem is that the ( FX OFF ) : *
are activated by (I) IF there is one or more ( FX ON ) "

((FX ON) + (I))= (Deactivate(FX ON)+Active(FX OFF))

I have the impression that it would be optimised to have only 1 translator for ‘disable FX’.
and one translator for check State FX
but
I suppose you need
1 Varible (V1) not state which triggers another (V2) which activates (I)

but I don’t think that solves the problem of activating (FX OFF)

And I don’t want anyone developing my projects
I really want to be autonomous
but my project is ambitious and I’m just starting out
but I’m struggling with my dislexia…

the lens
is to disable the (FX on )
and to leave the (FX oFF) deactivated.

Hi, please find the below example, recommendation.

For what you are doing you need more than one translator because you are talking to and receiving from multiple ports.

I set g0 as a bitmap for status of FX as follows in translator 0.2.

// fx state in g0
// bit 0 - Traktor FX1
// bit 1 - Traktor FX2
// bit 3 - Traktor FX3
// bit 4 - Ableton FX1
// bit 5 - Ableton FX2
// bit 5 - Ableton FX3
g0=0

Translators in Preset 1 update g0 to reflect Traktor FX States. You will need to modify the incoming messages to match what Traktor sends.

Translators in Preset 2 update g0 to reflect Ableton FX States. You will need to modify the incoming messages to match what Ableton sends.

The translator in Preset 3 clears FX from Xone K2. You will need to modify the incoming trigger to match what Xone K2 sends.

If using notes, I suggest you use raw MIDI to avoid having to have both note-on and note off separate translators. This is how I set it up.

9x is note-on MIDI CH x (where x=0-15 for MIDI CH 1-16).
The second byte is the note number. The third byte is the velocity.

If using CC it would be Bx instead of 9x.

The translator in Preset 4 clear FX from Ableton Push. You will need to modify the incoming trigger to match what Push sends.

Preset 4 handls clearing FX in both Ableton Live and tracktor. If g0=0 then nothing happens. We rely on feedback from Ableton and Traktor for the state of their FX

In all cases I set up device routing at the preset level.

For more information about device selection, see this tutorial.

If you need LED feedback you should create additional presets or translators with the desired MIDI routing to control the LEDs.
Clear-All-FX-Example-2024-12-27.bmtp (5.1 KB)

By using ‘Perform’, it allows more flexibility if incoming triggers or outgoing actions change.

Steve Caldwell
Bome Customer Care


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

Brilliant!

This Solution works and is much more optimized

I also got the previous version to work using global value
for me there was a confusion between Variable to Value and Global Value
But now I see

Many thanks to you Steve
see you soon

I’m glad to see that this is working out. In this case, bitmapping is much more efficient as all you have to do is look at the value of one global variable to determine if any effects are turned on.

Steve Caldwell
Bome Customer Care


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