How does Apple's ADB's collision resolution work?
It's in the second paragraph.


  Because the ADB bus is open collector, collisions can be detected when a device is attempting to drive the bus high and another device pulls it low. This means that whenever the device is driving the bus high, it should be watching to make sure the bus is actually high; if the bus goes low, some other device is sending at the same time. When a device detects a collision, it should immediately stop transmitting: this means that if two devices are colliding, one of them will detect the collision, while one will not. This occurs because a device can only detect the collision if it is driving the bus high and another device drives it low. The device driving it low has no way to tell that there was a collision, as the bus follows it. Since the detecting device immediately stops transmitting, the other device will not detect the collision. Thus, if there are a number of devices transmitting on the bus, only one of them will complete its transmission without detecting the collision, unless the unlikely occurrence of more than one device transmitting exactly the same data with the same timing occurs, and neither detects the collision.


Open collector means the device makes the bus voltage go low by actively conducting current to ground, but lets a resistor make it go high, thus when any device is not commanding the bus low, but letting it rest high it can monitor the bus to see if another device is using it.

Two devices who have taken the same address when commanded to return register 3 will by returning a random number instead of an address (which would match exactly) have a chance of disagreeing on the random number and thus one of them will detect the collision.