In general the segment mode works like a good repeater. The bus is cut into two segments with any number of devices on both sides. Both segments have bidirectional RS485 transceivers for receiving or sending on the bus. In the following we also use the name repeater for the segment mode extension of the analyzer.
Between these segment transceivers a bidirectional switch with special controller cares for the data exchange in either direction or disabling on both sides.
At first both segments are inactive, no device sends and also the transceivers of the analyzer are inactive. The bus is undriven and floating, the levels set by the termination and pull resistors.
The analyzer or repeater detects activity on one of the segments due to a sending device. It sets the switch so that the data is sent from the active side to the inactive one. In doing so the inactive side is now active as well.
After detecting the direction the incoming and logged data can be assigned to the correct segment which was the goal.
As now both sides are active the switch must not be changed until the sending device stops sending and releases the bus. When new inactivity is detected the second segment is also released, both segments become inactive again.
How bus activity is detected
The main challenge for the switch controller is to detect the active and inactive bus states correctly. A standard RS485 repeater detects activity with the first signal edge of an asynchronous data packet, the edge of the start bit. The disadvantage is that the usual active idle state one bit before the first data edge is not detected and passed. The end of transmission is set when no signal edges are detected within one character length, depending on the bit rate, mostly set by inaccurate RC delays, a further disadvantage.
The switch controller of the Analyzer does not only detect and evaluate the edges but also analyzes the bus difference voltage to decide if the bus is active or not.
If the bus is undriven, the difference voltage between D+ and D- is 0V, through the 120Ω termination resistors, to 200mV, set through the pull up and down resistors. The analyzer detects this condition with an extended voltage range of about 0 to 600mV to cover voltage variations by inaccurate terminations.
In this way the precise detection of inactive and active state is possible and used for controlling the direction and enabling of the data switch. The early bus enabling before the first edge is ensured as well as the fast bus disabling after the last sent bit plus one idle bit time.
The bus behavior of the sending device in one segment is exactly copied to the other segment.
A comparison of the two switching variants of a repeater:
More entries concerning the segment mode:
How does the segment mode work