• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

LocalTalk: when does termination matter?

On the train this morning when I should have been working, I was idly thinking about LocalTalk (because I'm a huge nerd) and how come I've never had to worry about termination when playing with it. Termination here is to deal with signal reflections: when a pulse hits the end of a wire that's open, it bounces off it and travels back up the wire. If the reflections are very delayed, this can obviously garble the signal to the point it's no use to human nor beast: we've all been in situations, either in caves or badly configured video calls, where there's lots of echo and this really gets in the way of communication. Same principle here. So I thought I'd have a go at a wild and stupid estimate for when it matters, mostly for my own curiosity. This may be totally wrong: if it is please comment below and tell me I'm an idiot.

A piece of wire or other conductor long enough for reflections to be a problem is called a transmission line. The general advice I've received online (note please that I am not an expert) is that you should start taking this stuff into account when the length of the conductor is 1/4 or more of the wavelength going down it. What's the wavelength we care about?

LocalTalk runs at 230kbps. We'll round it up to 250 because it makes the arithmetic nicer, and because all the other numbers we're going to use are wild guesses and what's a bit of inaccuracy between friends? The way that LocalTalk works electrically is that each bit can have at most one high and one low, so the worst case is a 250 kHz square wave.

Square waves are nasty to reason about because sharp edges and maths don't go well together, you start getting infinity turning up and then it all goes south. So instead of thinking about it as a square wave, we're going to wildly estimate that we need up to the ninth harmonic above 250kHz to make it look enough like a square wave for the transceiver to be happy. This is probably an overestimate. 9 * 250 is 2250, or 2.25 MHz.

The wavelength depends on the frequency and the speed with which the signal is propagating. We need another wild guess here. A totally reliable person on the Internet stated authoritatively that CAT3 cable has a propagation speed of about 0.6c where c is the speed of light in a vacuum. And we always believe random people on the Internet, don't we, kids. CAT3 is voice-grade cable, so it's probably about right for LT cable too, but in the interests of making the arithmetic easier and to be pessimistic, I'll take that down to 0.5c.

So the wavelength is:

λ = velocity / frequency = 299800000 * 0.5 / 2000000 =~ 75m

Dividing this by four, you get about 19m - and at this point one might expect termination to matter.

Thinking about the practicalities, this is absolutely a length of backbone one would expect to reach easily in a building-sized deployment, or even an office-sized one, but for most of us, we probably don't have 20+ metres of localtalk cabling in use. Which would explain that regardless of how dodgy my LocalTalk wiring can be, I'm unlikely to see any issues with improper termination: and also goes some way to really demonstrate that over short distances you can transmit LocalTalk over practically anything conductive.
 
For what it's worth: the general wisdom for DMX512, which is not entirely electrically dissimilar to Localtalk, is that you should use a terminator if you're putting a fixture alone on a cable longer than 20 metres. I'd say your maths is pretty good!
 
Back
Top