Remote Script for Behringer X-Touch

Discuss Live-ready controllers other than Push.
lectro
Posts: 50
Joined: Mon May 12, 2008 9:20 am

Re: Remote Script for Behringer X-Touch

Post by lectro » Sun Aug 03, 2025 12:51 pm

RobrechtV wrote:
Fri Aug 01, 2025 7:39 pm
I don't have an X-Touch One, so I can't test how/whether the features of the script translate to that device.

There's no user-facing way to easily change button assignments as they're defined in code, but you could try editing the file Consts.py (you could do that with a simple text editor). If you switch, say, the definition of the SHIFT button with that of the SCRUB button, it might work (but you lose the SCRUB button, of course). Try it like this (search and leave the definitions in place but change the values):

Code: Select all

SID_MOD_SHIFT = 101 # changed from 70
...
SID_JOG_SCRUB = 1010 # changed from 101
For the regular X-Touch, the script works with MC (Mackie Control) mode.

The scale discrepancy on the faders is caused by the fact that the scale graphic on the X-Touch goes to 10, while Ableton treats 6dB as its maximum. Can't be helped, I'm afraid.
lectro wrote:
Wed Jul 30, 2025 9:30 am
Does this script enable you to work on the faders panning and sends when you expand drum racks?
Haven't had time to test yet, I'll post here when I can.
Thank you.
I look forward to hearing the results

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Mon Aug 04, 2025 8:34 pm

Sorry for the wait, I have a lot of work at the moment.
lectro wrote:
Wed Jul 30, 2025 9:30 am
Does this script enable you to work on the faders panning and sends when you expand drum racks?
I've tested it and I'm afraid the answer is no. In fact, I don't know if any control surface can do that: I see no obvious resources in the API to implement it, unfortunately. Edit – Correction: after a vigorous tussle with Live API, the answer is now yes :D
Inghenio wrote:
Sat Aug 02, 2025 9:11 pm
I have changed the values from 70 to 101, and changed also the value of the JOG_SCRUB from 101 to 1010. But, when I save and turn on Ableton again my Xtouch One doesn't respond to any command send. Also, the display in the XTouch ONE says: No conected to Ableton. :S
I'm sorry, that 1010 value was a mistake. I just picked it randomly as an unused value to "disable" the variable JOG_SCRUB, but it turns out 1010 is out of bounds for a function that still uses it, which leads to an error. If you make it 113, it works without error, turning the SCRUB button into SHIFT. So, like this:

Code: Select all

SID_MOD_SHIFT = 101 # changed from 70
...
SID_JOG_SCRUB = 113 # changed from 101
Inghenio wrote:
Sat Aug 02, 2025 9:11 pm
By the way, I have been thinking that If we can use the buttons F1, F2 ... F6 to assign functions like: SHIFT, ALT, OPTION, CONTROL. And I was thinking also to being able to assign a F5 button for example, to assign the encoder to track send levels.
It would be amazing! But I'm not sure if it will be easier to change in consts.py.
Thank you very much :D
OK, instead of the mod with the SCRUB button, try this:

Code: Select all

SID_SOFTWARE_F1 = 113 # changed from 54
SID_SOFTWARE_F2 = 113 # changed from 55
SID_SOFTWARE_F3 = 113 # changed from 56
SID_SOFTWARE_F4 = 113 # changed from 57
...
SID_MOD_SHIFT = 54 # changed from 70
SID_MOD_OPTION = 55 # changed from 71
SID_MOD_CTRL = 56 # changed from 72
SID_MOD_ALT = 57 # changed from 73
That turns F1-4 into SHIFT, OPTION, CTRL and ALT. (The "# changed from" lines aren't necessary, they're just in case you want to undo the changes.)

Send is a little more complicated due to how the script works: by default, it shows the available sends for the current track side by side over multiple channel strips, and the X-Touch One only has one channel strip. However, with the latest beta of the script, pressing SEND twice opens the new Single Send mode, where the same send channel is shown for every track.

You could try these mods to turn F5 into the SEND button, F6 and F7 into previous/next to flip between send channels, and F8 into PAN (to return to the normal panning assignment):

Code: Select all

SID_ASSIGNMENT_SENDS = 58 # changed from 41
SID_ASSIGNMENT_PAN = 61 # changed from 42
...
SID_ASSIGNMENT_EQ = 59 # changed from 44
SID_ASSIGNMENT_DYNAMIC = 60 # changed from 45
...
SID_SOFTWARE_F5 = 113 # changed from 58
SID_SOFTWARE_F6 = 113 # changed from 59
SID_SOFTWARE_F7 = 113 # changed from 60
SID_SOFTWARE_F8 = 113 # changed from 61
If it works, the only limitation would be that you need to press F5 twice to control sends.
Last edited by RobrechtV on Tue Aug 12, 2025 11:17 pm, edited 1 time in total.
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

Inghenio
Posts: 3
Joined: Fri Aug 01, 2025 4:32 pm

Re: Remote Script for Behringer X-Touch

Post by Inghenio » Wed Aug 06, 2025 4:59 am

Hello RobrechtV,

Thank you very much for helping. I have get on my Xtouch One my dreamed controller. I have test the SEND modes, but I only have 6 F buttons on the Xtouch One. For this reason, thankful to your codes, I have done another configuration:
F1 .. F4 for the SHIFT OPTION CONTROL ALT
F5: GROUP -> This tool is helping me a lot.
F6: ZOOM BUTTON but It's not working XD -But it willl be amazing being able to changing zoom in arrangement mode.

This controller allows me a special feeling while I mix my tracks. I'm super happy.
Thank you for your help :D

Kik07L
Posts: 17
Joined: Fri Jan 24, 2025 6:41 pm

Re: Remote Script for Behringer X-Touch

Post by Kik07L » Thu Aug 07, 2025 8:15 pm

Hey RobrechtV,
i have been using the latest version for the xtouch the 2 lasts mounth daily and live and it works without a problem !
i love the global solo and i have a request to do with that !
do u think is is possible to light up the "control, alt" and other buttons that are modify buton section of the console ?
when i am working at night i sometimes can't really see where they lol but that's not a big of a deal if that's not possible ill buy an usb lamp

with that aside that's just perfect as always :D
we do have someone with an issue on the github issue section, if u have the time to check it :)

have a good day everyone !

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Thu Aug 07, 2025 9:43 pm

Strange, I never got a notification for that issue through the Android GitHub app! It's the same question from Inghenio that I've partly replied to here with some tips to shift around the button definitions (I still have to look into the additional question about the ZOOM button).
Inghenio wrote:
Wed Aug 06, 2025 4:59 am
F6: ZOOM BUTTON but It's not working XD -But it willl be amazing being able to changing zoom in arrangement mode.
About the modifier buttons: so just light them up permanently? I think I can do that!

I hope I'll be able to look at some things this weekend.
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

Kik07L
Posts: 17
Joined: Fri Jan 24, 2025 6:41 pm

Re: Remote Script for Behringer X-Touch

Post by Kik07L » Fri Aug 08, 2025 5:09 pm

yep just light them up permanently so i can see them and maybe ill think about some features i need only at night so we can do a night mode that can be enabled that lights up some thigs that needs to :D

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Sat Aug 09, 2025 2:58 pm

Inghenio wrote:
Wed Aug 06, 2025 4:59 am
F6: ZOOM BUTTON but It's not working XD -But it willl be amazing being able to changing zoom in arrangement mode.
Okay I got a chance to look at it and I can see why it's not working.

After the definition for SID_JOG_ZOOM (which I assume you changed to 59, the code for the physical F6 button), there's a definition for a list called jog_wheel_switch_ids. The list is defined as a range encompassing the previously defined variables from SID_JOG_CURSOR_UP (96) to SID_JOG_SCRUB (101).

However, since SID_JOG_ZOOM is now 59, it's no longer part of the range from 96 to 101, so it ends up being left out of the jog_wheel_switch_ids list. So you need to change the definition of that list to an explicit enumeration by replacing this line:

Code: Select all

jog_wheel_switch_ids = list(range(SID_JOG_CURSOR_UP, SID_JOG_SCRUB + 1))
...with this:

Code: Select all

# jog_wheel_switch_ids = list(range(SID_JOG_CURSOR_UP, SID_JOG_SCRUB + 1))
jog_wheel_switch_ids = (SID_JOG_CURSOR_UP,
 SID_JOG_CURSOR_DOWN,
 SID_JOG_CURSOR_LEFT,
 SID_JOG_CURSOR_RIGHT,
 SID_JOG_ZOOM,
 SID_JOG_SCRUB)
(Make sure to include the leading spaces on the last five lines.)
Kik07L wrote:
Fri Aug 08, 2025 5:09 pm
yep just light them up permanently so i can see them and maybe ill think about some features i need only at night so we can do a night mode that can be enabled that lights up some thigs that needs to :D
Check the latest update on GitHub. :D You can now toggle Night Mode by pressing all four MODIFY buttons at the same time. It simply lights up the LEDs for all four of them (SHIFT, OPTION, CONTROL and ALT). For all other buttons, the LED is actively used to indicate their state, so it's less convenient to have it on all the time.

About the four-button combination: usually, you would only have to do this once at the start of a dark session. Some functions already require two or three MODIFY buttons to be pressed simultaneously [OPTION + ALT + Rotation: Move loop end bracket (faster with SHIFT)]. And I thought "just press all of them" is the easiest to remember, since you want all of them to light up. :D
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Sat Aug 09, 2025 11:27 pm

RobrechtV wrote:
Sat Aug 09, 2025 2:58 pm
Kik07L wrote:
Fri Aug 08, 2025 5:09 pm
yep just light them up permanently so i can see them and maybe ill think about some features i need only at night so we can do a night mode that can be enabled that lights up some thigs that needs to :D
Check the latest update on GitHub. :D You can now toggle Night Mode by pressing all four MODIFY buttons at the same time. It simply lights up the LEDs for all four of them (SHIFT, OPTION, CONTROL and ALT). For all other buttons, the LED is actively used to indicate their state, so it's less convenient to have it on all the time.
I added something more: once you are in Night Mode, pressing any of the MODIFY buttons makes all button LEDs blink to help with visibility.

Edit – Updated readme with the new beta functions. If everything continues to work well, we could do another release. I think I'll keep the rewrite necessary to show return track colors in default sends mode for after that.
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Tue Aug 12, 2025 12:11 pm

lectro wrote:
Wed Jul 30, 2025 9:30 am
Does this script enable you to work on the faders panning and sends when you expand drum racks?
Hang on. I'm working on something. :idea:
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Tue Aug 12, 2025 3:47 pm

lectro wrote:
Wed Jul 30, 2025 9:30 am
Does this script enable you to work on the faders panning and sends when you expand drum racks?
In the latest beta, tracks containing an instrument rack with chains will now behave just like groups.

Drum racks, for instance, can be expanded to show their chains (individual bass drum, snare etc.) as separate channels in the mixer. This is now reflected on the X-Touch, so each chain in the expanded rack will get its own channel strip. You can expand and collapse chains just like you can with groups by pressing SELECT on the parent track.

From the updated readme:

Chains behave as groups (beta)
- Press SELECT twice on a track that contains a Rack to expand its chains in the Mixer (same behaviour as with track groups).
- Rack chains react just like normal tracks to faders, MUTE and SOLO buttons and encoders (in Pan and Sends mode).
- Chain colors appear in scribble strips and can be modified just like track colors (press TRACK x 5 for color mode).
- Limitations: audio metering and audio routing are currently unavailable for chains in Live's API.

(The no metering limitation is especially unfortunate, I know. We can only hope that Ableton will make it available in the API some day.)

This was quite an operation to get working (like I said, I thought it was impossible at first sight), since the Live API isn't geared toward treating tracks and chains interchangeably, and I wanted the experience to be as seamless as possible. First implementation broke everything but I think it's all fixed and integrated now, including Global Solo (soloed individual chains can be part of a solo group).

(Thanks for the idea, lectro! I think this will be useful.)
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

Kik07L
Posts: 17
Joined: Fri Jan 24, 2025 6:41 pm

Re: Remote Script for Behringer X-Touch

Post by Kik07L » Sat Aug 16, 2025 9:05 pm

RobrechtV wrote:
Sat Aug 09, 2025 11:27 pm
RobrechtV wrote:
Sat Aug 09, 2025 2:58 pm
Kik07L wrote:
Fri Aug 08, 2025 5:09 pm
yep just light them up permanently so i can see them and maybe ill think about some features i need only at night so we can do a night mode that can be enabled that lights up some thigs that needs to :D
Check the latest update on GitHub. :D You can now toggle Night Mode by pressing all four MODIFY buttons at the same time. It simply lights up the LEDs for all four of them (SHIFT, OPTION, CONTROL and ALT). For all other buttons, the LED is actively used to indicate their state, so it's less convenient to have it on all the time.
I added something more: once you are in Night Mode, pressing any of the MODIFY buttons makes all button LEDs blink to help with visibility.

Edit – Updated readme with the new beta functions. If everything continues to work well, we could do another release. I think I'll keep the rewrite necessary to show return track colors in default sends mode for after that.

hey ! RobrechtV ill test that today thanks !!!

du u want me to the the release on the realease section ?

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Sat Aug 16, 2025 9:44 pm

Kik07L wrote:
Sat Aug 16, 2025 9:05 pm
hey ! RobrechtV ill test that today thanks !!!

du u want me to the the release on the realease section ?
I don't know what would be best: release the version with all the new features up until Night Mode now and keep the latest Chains handling feature in beta for a while? Or wait a little longer and then do a big release including Chains handling, which will just need some more testing to make sure it works? Either is okay with me!

But yes, anytime you think it's time to do a release, feel free to do it – you're much better at GitHub management than me. Thank you by the way for testing everything, that's a huge reassurance.
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

RobrechtV
Posts: 231
Joined: Sat Feb 18, 2017 1:32 pm

Re: Remote Script for Behringer X-Touch

Post by RobrechtV » Sat Aug 16, 2025 9:57 pm

By the way if you want to test Chains handling, you can just load something like a drum rack on a track. The script now treats it like a group containing all the individual drum elements – bass drum, snare, hi-hats etc. – as separate subtracks. You can expand it by pressing SELECT, just like a group, and they all get their own fader on the X-Touch.
Colored scribble strips on the Behringer Xtouch!
download scripts | forum posts

Kik07L
Posts: 17
Joined: Fri Jan 24, 2025 6:41 pm

Re: Remote Script for Behringer X-Touch

Post by Kik07L » Mon Aug 18, 2025 7:49 pm

RobrechtV wrote:
Sat Aug 16, 2025 9:57 pm
By the way if you want to test Chains handling, you can just load something like a drum rack on a track. The script now treats it like a group containing all the individual drum elements – bass drum, snare, hi-hats etc. – as separate subtracks. You can expand it by pressing SELECT, just like a group, and they all get their own fader on the X-Touch.
perfect ! telle me when it's all reday and let's publish a bit release then ! :)

lectro
Posts: 50
Joined: Mon May 12, 2008 9:20 am

Re: Remote Script for Behringer X-Touch

Post by lectro » Tue Aug 19, 2025 7:30 pm

RobrechtV wrote:
Sat Aug 16, 2025 9:57 pm
By the way if you want to test Chains handling, you can just load something like a drum rack on a track. The script now treats it like a group containing all the individual drum elements – bass drum, snare, hi-hats etc. – as separate subtracks. You can expand it by pressing SELECT, just like a group, and they all get their own fader on the X-Touch.

Wow!! That's great to hear, I will be checking this out.
All the best

Post Reply