„But, what if two OSC messages are sent at the exact same time? I mean the EXACT same time?“

„Won’t they cancel each other out on the cable?“

„But, what if two OSC messages are sent at the exact same time? I mean the EXACT same time?“

„Won’t they cancel each other out on the cable?“

And, as funny as this question by one of my friends sounds, the answer is quite interesting!

Because, there is a physical and a software dimension to this.

Physical, because data like an OSC message is nothing else but low and high voltages on a wire, interpreted as ones and zeros by a chip.

And in physical systems, its quit easy to prevent „overtalking“ each other.

Getting attention on a CAN network (cars use this for example) is like entering a room and start screaming. You scream and scream and scream; so long, till finally everyone shuts up and listens to you.

No, really!!

Each CAN device is simultaneously sending and receiving on „just“ one ground and one data wire (let’s ignore redundancy) When a sensor wants to send a message, it’s starting with a special sequence of bits.

It’s own priority identifier.

And if a bit is a zero, this pulls down the whole bus to ground.

More zeroes follow, and everyone is carefully listening and comparing its own ID. And, the more zeroes after another, the higher is the priority of the sender.

And if there is a zero on the bus where you have a one, you stop sending - immediately.

It’s like in the example above: everybody seeing those zeroes is saying: „oh, this might be someone important, better look if its more important than me. SHIt, it’s the boss. I better shut up!“

And Voila! You got your will. Now you’re talking!

And this isn’t really much different on complex, eight wires per connection local area networks, where OSC messages are sent.

And in heavy amounts sometimes.

There are just „some more“ chips involved.

And it’s a little more civilized 😂

Nobody shouts to get attention.

Like in real life, you don’t tell a long story at the bar without sipping from your wine glass from time to time. And before you start speaking again, someone else might have started asking a question.

He politely waited to ask till you finished your sentence.

And in the rare situation where you and someone else start talking at the EXACT same time?

Well, like in real life; you both awkwardly stop talking and wait „a bit“ til you try again. Network cards just make sure that both of you don’t start talking after exactly the same time, over and over again. The chips on the network card delay the next try by a random amount of time.

So, physically speaking each and every OSC message is coming through…

„So I’m save, right? RigHt??!!l“

Boy, are you up for a ride…next time, when we delve into „the software side of network communication.“

So long!

Basti