Home | ER-101 | ER-102 | ER-301 | Wiki | Contact

How are you dealing with latency / syncing with external stuff?

The ER-301 AFAIK with the normal firmware adds ~9ms latency to incoming anything. This does not seem unreasonable by any means - there is always going to be some latency with a digital module - but this is too much for the music I make (~127 BPM techno) relative to events happening outside of the ER-301.

My solution right now is to route all external audio through the ER-301 and back out via a single stereo mixer channel. It’s pretty much perfect with that alone and even if it wasn’t I could compensate with a micro delay, but this is not ideal for a variety of reasons.

I’d like to solve this without having to route external audio into the ER-301. Some of my trigger sources have offset/delay options (Temps Utile) but others like my main brain Westlicht Performer, Permutation (Grayscale’s Turing Machine implementation) do not.

I’ll be looking at “delay” modules on modular grid in the meantime, trying to comb through a sea of audio effects, although I’m not too happy about taking up hp for that and I also have a LOT of triggers going on, but maybe there is something built for this purpose that has a lot of i/o?

Another option I’ve considered is a Percussa SSP - which would come with some other benefits as well, but damn it’s big and expensive and would not be practical for live gigging (whenever that happens again :sob:). Still, this seems like it might be the best option considering everything else that comes with it.

Lastly I’ve been looking at “real studio” stuff like 16 channel interfaces but am reluctant to go that route over a matter of milliseconds - also impractical for live gigging (at least at my humble level).

So yeah - the topic - How are you all dealing with this? I’d be interested in any/all solutions people have put in place.

And sorry for the novel, but what else do you have to do besides check the forum everyday drooling for the next version announcement?

I also find that routing everything through the 301 give or take some micro delay works quite well. Alternatively there is a low latency firmware that recently got up to speed with .0.5. I think that’ll get you down to ~4.5 ms latency(?), but at the cost of a lot of CPU space.

1 Like

In my case, when I have delay offsets between different sound sources, I place a delay or different delays on each source to match all of them, but I haven’t noticed any special case to be really worried about. For me 9 ms is a pretty low delay. My problems usually come when I do at the same time live visuals and audio, as there’s a HUGE delay gap between them (for complex realtime generative visuals using external capture cameras the delay can be up to 0,6 seconds). As the audio is always faster, a single delay matching the gap is enough …

2 Likes

these kind of things has been mused on several times and i think
also in different kind of threads.
don’t know whether there’s already a dedicated thread for that.
i’d gift you the burden to do a search on your own, which frankly has been getting harder and harder
over the years and with the never ending information coming in :wink:
but it’s still worth a try!

and then i do remember some pieces of information… but first some quick questions:
what is it you are actually recording with?
and what would be the thing you’d like to record to in the long term?
same for monitoring:
state of affairs?
and wishfull thinking?

i do remember e.g. conversations about “tightness”.
i think in most use cases it had to to do with certain types of techno,
so pretty much your use case afai understood your novel :slight_smile:
but there were also other types of use cases where precise timing was crucial
to the respective wishfull thinking. there were friendly reactions on firmware updates that
didn’t come with low latency firmware versions, but @odevices promptly came to help…
@Joe that old dude e.g. was sharing information on how to use the er301 as the main mixing as well as recording sink for his dangerous experiments. @mopoco in contrast almost never did recordings on the er301 which he should be ashamed of since he extensively used the er301 also as a central mixing hub many many times.

and when you mentioned delay i somehow thought of a synced and delayed clock in a global chain,
which btw. enjoys computational priority! but that delay would then have to be set up in a manual (maybe even automated) way so that it could lock to/foresee the next clock tick coming in and maybe even check and calculate the right trigger/gate for the inner guts of the er301 patches.
i do have fond experiences with multing the performers clock out to just everywhere. first and foremost
of course my clocked sample players that i tend to set up on global chains so that the timing
has a better chance to fit. but that’s all for my own use cases. because after that i’m off for the celebrities deathmatch: wonkies vs. tights. :scream:

but rest assured: our tight techno experts will chime in soon…

1 Like

here’s another thought. my understanding of your description of the performer being your main brain suggests that you’re also using it as a central clock source for the whole setup. is that right?
because: if so, you could sacrifice one of its cv tracks (actually just its gate personality) in order to fine adjust your syncing of your er301: try to spend some quality time with the gate offset page of that very same track…

  • granted, it’ll offer you only 7 distinct mod levels for the resulting gate delay compared to the main brain clock of the undelayed performer outs (gates as well as clock out).
  • this approach so far will also pretty much depend on your base tempo and whether those distinct levels will be able to delay the gate-sync-signal in such a manner that it will actually be able to effectively compensate for the latency we’re trying to get rid of (by extensively delaying the incoming clock signal into the er301)
  • if the input clock hits the clock receivers inside the er301 too early then we could argue that
    we’ll just have to extend the delay by adding even more time inside the er301. which pretty much renders the whole enterprise moot: for why wouldn’t you solve the problem in the er301 alone and in the first place? (and which pretty much corresponds with the idea that i’ve suggested in a former post :slight_smile: )
  • but maybe you’re lucky and one of those 7 performer gate delays is just the right one for a given tempo? is it worth a try?
1 Like

I did mess up. There is already a perfect thread for this: Latency questions

I’m usually not the one to post anything without searching first, could have sworn I did but obviously didn’t. My bad. Users in that thread have also illustrated the exact scenario where this latency stands out most: when voices outside of the ER-301 happen earlier than drums coming from the ER-301 (exactly what I’m doing). But while we’re here :upside_down_face:

@mopoco. Yes, Performer is my main clock. I think I do follow what you mean with the sacrifice one gate track suggestion, in that I could use that to delay other downstream non-301 clocks, and then further compensate on the ER-301 if those clocks are too far behind the clock going into the 301?

I have experimented with the Performer’s offset, but the minimum offset is indeed too late for the tempos I’m working with. But taking these two ideas - I could put the minimum offset on all non-301 triggers coming out of Performer and compensate further on the ER-301. Or simply put, make everything late elsewhere, but not as late on the ER-301. That won’t solve the triggers from other analog trigger sources without using the “sacrifice one performer gate track” trick, which is a pretty hard to swallow, but I’d rather have tightness than that 4th drum (time to get creative!).

Perhaps I’m just repeating what you’re suggesting? In any case thanks. Going to start experimenting and see where it takes me.

This works. I do have to compensate a bit on the ER-301 to get it super tight, but it works :slight_smile:

2 Likes