TDAbleton - TouchDesigner Ableton Connection

If you just want to watch the sends, you can get all of them with abletonDeviceParameters set to # Mixer #. If you need to control them, you’ll have to use individual abletonParameters. My next update will include a Max device that controls multiple parameters, so be on the lookout for that in the next few days.

The abletonValueListener is made to access obscure parts of the Live Object Model that don’t have specific components associated with them. To use it effectively, you have to learn how to write the expressions that access the value you want. You will see the expression created by your LOM parameters in the Default Expression parameter, then you can append code to that with the Append To LOM Expression and property Parameters.

Very much looking forward to that multi-parameter Max device. Thanks for developing that!

Re abletonValueListener: Got it. I figured it was for the more individualized parts of live. Will look more into appending LOM parameters incase that’s needed. Thanks for explaining.

No problem. Will be easier to explain with a specific case if you run into one. Basically, the expression created is sent directly to Ableton Live’s Python, so will look just like something created using this: … ive9.6.xml, with the addition of a few macros I created for convenience, notably “SONG” which gives you access to the Song.Song object in that documentation.

Uploaded 1.11.1 -

-abletonMapper component: use standard Ableton mapping system to control parameters from TouchDesigner. This method is faster, smoother, and does not create undo steps.
-fixed bug where abletonRack, abletonLevel, and abletonMapper don’t work in master or return tracks

Ivan - Just connected the TDA Mapper - this is exactly what I was looking for!
Many thanks for developing this :slight_smile:

Just uploaded 1.12.0

  • Fixes problems with unfound Max devices
  • Fixes problems with clip names not being updated
  • Fixes error messages when renaming cuepoints
  • Features for playing clips and scenes in abletonSong and abletonTrack
  • Add clip status callbacks to abletonTrack
  • Add play and stop callbacks for abletonSong
  • Better hiding of CHOP channels on macro and level devices


  • abletonChainOrTrack component is now called “abletonChain”. To properly update
  • abletonChainOrTrack components from old versions, change their clone sources accordingly before update.
  • abletonChainParameter has been removed in favor of putting all chain features into abletonParameter. To properly update abletonChainParameter components from old versions, change their clone sources accordingly before update.
    For packaging reasons, the Rack and AudioAnalyzer devices have been moved into TouchDesigner/TDA Project. Also, the TDA_Rack_OSC and TDA_Rack_MIDI_OSC devices have been moved into the subfolders of that project. If Live has trouble finding devices in your set from a previous version, use the ones found in TDA_Project.

Using the demo ableton live project (or a new one with with locators/cuepoints created) and using a brand new TDAbleton, the “last_cuepoint_passed” parameter doesn’t update until you enable “Include Time Data”, whereas when i use the demo .toe you provided, the cuepoint channel updates fine even without the “Include Time Data” parameter enabled.

The cuepoints do depend on “Include Time Data”. You’re either looking in the wrong place or magic is afoot!


I have some errors appears, when selecting track in abletonTrack1 and abletonChain1 components. Tried to use demo projects, but the same problems.

TD 2018.25000
TDAbleton 1.12.0
Ableton 9.7.1

thx for feedback.
Untitled-1 copy.png

Uploaded 1.13.0 to top of thread

@ m1gUn0v: please try this one

1.14.0 posted. Sorry for the rapid fire updates! Two issues in one day.

Some important changes that could affect older projects:

  • TDAbleton now requires a TDA Master component on the master track of your Live set. Added a dialog that automatically creates one if it’s missing.
  • Changed default OSC ports to avoid Resolume (and other programs’) defaults. 8887 is now the default TD port. 8001 is now the default Ableton port. If you have trouble connecting with older TDAbleton projects, double-check that your tdAbleton master component in TD and your TDA Master device in Live have matching port settings.


1.14.0 works fine. \m/

Hi Ivan,

I think I found a bug in 1.14.0.

I have an Ableton session and some scenes have the same name, in this case ‘STOP’.
Now in the AbletonSongExt SongInfo[‘scenes’], there is only one scene with the name ‘STOP’ and because of this, the total number of scenes is lower then in my Ableton session.
This leads to an ‘list index out of range’ error in line 138 of the AbletonSongExt, when I fire scenes above a certain number (which makes sense).

So, it looks like there is a problem with duplicate names in Ableton scenes, that needs to be handled.

Thank you for this great component!

Cheers, David

I just encountered this as well, not sure if its a Max4Live API/Ableton problem though.

Also just wanted to mention, the cuepoint/locator system in Arrangement view is so good for triggering things in TD, but the band i made the lighting system for uses Session view, so currently I think the best way to get the triggers synced up in TD is to count the bars in Ableton like a dweeb and just have TD wait for that specific bar/beat count.

I’ve also done a little addition of my own to convert beats/sixteenths/time into extra channels for eighths and triplets and some other weirder rhythm stuff (3/4 over 4/4? i’m not really sure the correct musical theory terminology for what they do). It’d be cool to share some user-made extended features and hear how everyone uses TDAbleton.

Also, it would be nice, if the popup window, that opens, when the Ableton session is missing the TDA master plugin, would have a cancel button. It can popup, if you switch Ableton sessions, but you don’t necessarily want to create the TDA master plugin…

love this comp so much - building a big project at the moment - its got lots of track (190+) and a lot of midi going in both directions using tda midis - we started running into issues yesterday and are struggling to trace it - we have begun to not be able to connect

the problem disapears when we delete some tracks but we are finding it impossible to find a pattern - for a while we thought it was a drum rack - but could not reliably reproduce it - then deleting a random track fixed it once - but again we couldn;t trace it -
the closest we are getting to a error message is
‘NoneType’ object is not iterable -
i’ve attached a picture - project goes live next week so this is a bit stressful

need to roll updates to get everything up to latest but thought i’d post in case it raises any immediate thoughts

thanks all for any advice -



Edit: Simple mistake, forgot to follow instructions and set the MIDI control interface.

I’m having some connection issues, I’m trying to connect to a fresh install of Ableton 10.0.3 and TouchDesigner 2018.23760 ( I also tried latest but rolled back for testing purposes) Windows 10. The TDableton components are on 1.10.0 in Touch and Ableton.
I can’t seem to get a connection going between the two. I have a similar setup running on another machine that’s using an Ableton Trial
I was thinking it could be a port issue and so I’ve been trying to trouble shoot. 1.10.0 uses port 8000. If I try to ping from TDAbleton op I get nothing back. IfI setup a UDPin in touch listening to port 8000 I can see the pings coming in and if I do a netstat I don’t see anything already using 8000
Also originally I was using TDAbleton 1.14 which is using 8001 so I’m feeling like it’s less of a port issue and maybe something else?

If anyone has any advise on trouble shooting this it would be great.


While the TDA Master component in your live set was optional in 23760, adding it sometimes sorts out connection issues. As such, new build 2018.25850 now requires it and auto-adds it if it’s missing.
I’d recommend updating to 2018.25850 if you can, there and other small updates wrt ports and in importantly the previous 2018.25000 build had a major TDAbleton update, lots of fixes, which is definitely worth running. Note, it is not backwards compatible because of the all the changes. Remember you need to replace the MIDIRemoteScripts folder contents and the main package component, so give yourself time, not right before a show :open_mouth:

Release Notes

so it seems like our issue (a couple of posts back up ) is one of size - once we get past a certain amount of tracks and data being passed from ableton to td it seems to break the OSC and touch receives an empty string in oscin_callbacksInfo - as soon as we delete a couple of tracks the connection happens again - its hard to tell because the data seems to be coming over chunked but it feels like the formatting of the data coming over is breaking when it gets above a certain amount - doing some debugging today in case its a hardware issue but failing that would there be a way to increase the size of transferable data?

running latest versions of everything -



fixed our connection issues by building a filter into the to only send info and data from tracks with a specific prefix in the track name - this streamlines everything massively reduces the amount of data being sent and its all working together again