Link support preview

Hi all, new link support is here, please help test it!

Update: Instructions now here: https://tidalcycles.org/index.php/Link_synchronisation

Please post to let me know whether it works or not, and what operating system you’re using, thanks!

6 Likes

Testing it now, very interested in such update. Thanks Alex !

edit: works as expected with Live 10.1 most recent beta, fantastic ! :smiley:

@nilhartman That’s good news - what o/s and what latency adjustment did you make?

Note that to avoid named conflicts, start is now renamed carabiner.

Instructions are now here: https://tidalcycles.org/index.php/Link_synchronisation

OSX 10.14.4. I haven’t tried changing the latency yet as everything sounded good, nor changing the BPM from Tidal. Changing tempo from Live works though.

Will test further ASAP.

I must say directly tested Link the way I’ll use it (because I definitely will ;)), syncing both Live and Tidal clocks and transport, and once again it works flawlessly.

Thanks again anyway, proper workflow enhancer here :wink:

Hm, I’d be surprised if transport works, if you mean starting and stopping the clock… Let me know!

My bad, you’re right indeed :slight_smile:

Worked well for me, also on OSX 10.14.4, with Ableton 9.7.7. Adjusting latency to -0.24 got it spot on.

1 Like

By typing below, I tried to connect tidalcyles to carabiner.

 sock <- carabiner tidal 4 (-0.14)

But I got error like this.
Does anyone know how to fix this?

:34:9: Variable  not  in scope: carabiner :: t0 -> Integer -> Double -> IO a0:34:19: error: tidal> Variable not in scope: tidal

You’ll need to upgrade tidal too, from the commandline:

cabal update
cabal install tidal

and updating your editor plugin/tidal boot script as well.

Genuine, newb question : can these lines of code be added to our custom BootTidal.hs file ? And if so, how ? I’ve tried but it didn’t work. Thanks !

Yes just adding this bit after the startTidal line should be fine.

sock <- carabiner tidal 4 (-0.14)
1 Like

Er, accidentally ‘withdrew’ my above post… so…

Since I have found it impossible to remember sock <- carabiner tidal 4 (-0.1) , I created this shortcut:

link = do
  sock <- carabiner tidal 4 (-0.1)
  putStrLn "Starting Link synchronisation..."

Then you just do link to get going.

UX detail: since you only want to run this once, but tweaking the latency might be required to get it right, it’s easier to forget about the latency parameter and use nudgeAll or something instead.

I don’t know how missed this, but so great that it works.
Totally loving it.