Summary: A Current Loop is a technique used for signalling on a circuit. By using current in the place of voltage, data can be transmitted over a distance without voltage drop issues. A typical application with DCC is RailCom.
The intention of this page is to explain the current loop, and what it is used for.
As stated in NMRA RP 9.3.1 page 1 line 29, this technique should be used to transmit bits from decoder to the receiving gadget.
During this process the booster, detector, and decoder are connected in series to form a loop. The decoder must be designed and built with this feature in mind. The booster must include the RailCom Cut Out Circuit for this feature to work.
Decoder Communication via a Current Loop
The NMRA DCC Standard calls for data from the layout to be transmitted via a current loop. The decoder will modulate the track current in a specified manner which the command station or other devices can interpret. This was done because current loops are very common in the digital world, so the parts needed to implement this are readily available. Tests have confirmed that error free transmission was possible at a distance of up to 100m.
The decoder uses its power supply, which supplies the correct voltages to the decoder circuits and motor control system, to feed the current loop. The decoder uses stored energy to provide the current source.
To transmit a Zero bit, the decoder must source 30mA of current for 4 microseconds. For a value of One, the decoder must not sink or source a current greater than 100 uA. Track voltage ranges from zero to 2.2V. The minimum current required for a "zero" value is 10mA, any current below 6mA is considered to be a value of "1".
During this process a device called a cutout disconnects the DCC power source to the track, so the detector can read the data being sent by the decoder. The cutout will disconnect should a DCC signal from another source appear on the track. The cutout also shorts the rails together to complete the circuit.
A DCC packet will initiate the process. Once the track power is disconnected, the decoder will transmit the data, and once that process is completed, track power will be reconnected. The entire data transmission will occur in less than half a second. A total of eight bytes of data can be transferred during the cutout session. The data is encoded using a 4/8 code to minimize errors. Each byte must contain four logical 1 states and four logical zero states. If not the byte is considered to be incorrect.
RailCom addressing also allows the system to identify stationary and mobile decoder addresses.
For additional detail consult the RailCom page.