WiFi capabilities to get Abelton Link

So I think it might be entirely possible to implement a plug-in to give the SSP Abelton link capabilities.

For this, it would be most beneficial for it would work with Wi-Fi. Obviously, it could also work USB however, primarily want to use it with Wi-Fi using a WiFi dongle

i considered this a couple of times, technically its trivial,
Ive done it for other similar hardware

the main ā€˜issue’ with the ssp/xmx is theres no access for a user to set it up, or resolve issues if it doesn’t work. (not uncommon)

so, though Ive provided details on how to do it, I dont think many have been that interested to do it.

that said, it be reasonably easy to create a module, that includes a UI to setup it up.
you can even do it with messing with scripts, which is what I did for the nebulae.

but yeah, if it doesn’t work for a user, from experience it can be tricky to resolve / support… as theres no access to terminal etc. (*)

also, Ive noticed, I seem to get timeouts/drops occasionally on both ssp and xmx, mostly on wifi, but sometimes on ethernet too.
fine for a terminal session it just reconnects, but if you were trying to sync using link, that would be a bit crap…

Ive a suspicion its probably usb power management, but I think i tried to bypass that.
… that said, Id didnt spend long looking at it, as it doesnt really negatively affect me.

overall, I decided it probably was more hassle than the benefits it provides, at least for non-technical users…

its funny, Im an Ableton user, and I do really like Link, its such a cool protoocol.

But I hardly ever use it, I guess because its just not supported widely enough, so if Im routing midi clock anyway to others, I might as well use it for everyone.
also with eurorack, I tend to use cv anyway, with a dc coupled interface its as tight as you’re going to get :wink:


( * ) I had this with both nebulae and also organelle users, for a few, the setup just didn’t like their particular network.
I personally, found, whilst not quite as convenient, it was better to setup as an AP, less vagueries that way.
but i cant remember, if the SSP/XMX had all the binaries required to do this, would need to double check that…

There are a very few Ableton Link to clock converters out there. The Circuit Happy Missing Link line come to mind. Though not particularly cheap ($260 for the desktop, $250 for the 2HP Eurorack version), I have heard that they work excellently. https://www.circuithappy.com

here, I threw together a SSP module…

this assumes you have already setup your wifi/ethernet connection.
details on that here

link.zip (3.0 MB)

this’ll be in TBPlugins next release, I’ll probably tweak it a bit before.
also, IF people use it, then I might add link support to CLKD , its kind of a natural fit

notes:
this is receiver only.
I could have made it bidirectional, but seems likely most will use something like live as master

you can’t select network interface, it’ll use default, should be fine

Ive done limited testing, just threw together a patch, started ableton , checked it was in sync as I changed things around etc.

basic functionality
outputs:
beat = beat trig
bar = bar /measure trig
phase = a phasor , as a division of the link phasor.

(playing is there, but not functionally, will be on release)

params, these may not be ā€˜obvious’ perhaps will rename.
beat / bar really are a time sig

bar = sub division of measure(bar), so defines length of a ā€˜beat’
i.e. 4 = 1/4 notes, 32 = 1/32 notes
beat = number of beats (see bar)

phase is independent… allows you to run subdivisions of the link phasor

(perhaps on release, I might rename this,

generally it should be ok, 4/4/4 would be your four on the floor.
but you can express times sigs like 3/4 or something less boring like 7/6 :wink:

accuracy, in testing it seemed pretty good, as link usually is.
ofc, dont ā€˜pixel peek’, when using multiple modules as timing between modules is not guaranteed, so you can get unexpected buffer delays.

tl;dr; if you want really tight timing you many need delay compensation.
(and if you are using multiple modules, potentially different on different outputs)

anyway something to play with, the fundamentals were pretty easy to throw together and give 90% of what most would need.

I’ll be honest, I think very few have network adapters, so not sure it’ll get used…
but a nice to have…

1 Like

this is quite confusing (for me)

bar=bar=beat

?

yeah, as I said, nomenclature is not fixed yet…

essentially, its time signature numerator and denominator, but thats a bit ā€˜technical’

perhaps better - beats per measure, beat size (not exactly catchy ;))
I guess, I can also fix beat size to things like 1/32,1/16, 1/8 (i.e. display as fraction choices), that may make it easier to understand.

EDIT: (for completeness)
phase output, phase parameter.
these are unrelated to above, rather they expose the ā€˜raw’ nature of Link.
which is, frankly, tricky to explain and understand (correctly ;)) …
though, I should i should rename phase parameter to quantum, as this how its referred to in Link.
its a really cool area, thinking about the timeline as a continous cycle is very ā€œmodularā€, off grid
could possibly be in different module, but its nice to keep in one place?


basically, I just threw this together quickly, trying out different ideas.
mainly because I was prevaricating on another coding task thats a bit complex ( hardware ā€œdriverā€ for a gigperformer, a live performance app)

as is, whilst nomenclature is not 100% clear, it does give 90% functionality that most would want, so ā€œlow hangingā€ fruit, and easy to extend should their be a demand.

no point spending hours on the UI, if no one actually uses it, esp. as Ive so many other projects I should be working on, that have an active user base…
but hey, its fun to do stuff sometimes, just because you can :wink:

1 Like

btw, I did look ā€œMissing Linkā€ as per @Ersatzplanet post,
but its interface is kinda primitive ,

just clock + reset, sure this is a eurorack (and kinda midi clock) norm,
but has huge limitations - and those limitations, were why Ableton created Link in the first place.
so, I didn’t want to fall into that trap, of just replicating the status quo, rather support Link as its meant to be…
hell, modular excels where you want to get away from the conventional. (4/4 120 bpm ;))

but, for conventional use,
LINK → CLKD, pretty much gets you ā€˜conventional clock, with divider’
(Ive been thinking of adding a simple ā€˜link’ button to CLKD, to make this even simpler)

with alt CLKD modes and LINK also allow for some really interesting stuff, that adapt but stay in sync.
also the phase output is very interesting in modular…

I do think it’d be nice to have LINK also alllow clock control (so changing it), its one of the unique aspects of ableton link, and having a modular mess with Ableton Live clock could be really fun :wink:

so lots of ideas…


note: Link is more aimed at sequencers, that have opinionated design, rather than just ā€˜a clock’,
e.g. they are concerned with sync a pattern, a musical construct, that has its own TS / grid etc.
which is why if feels a bit less ā€˜obvious’ on mapping to something low level, like a clock module.