Summary: The Cab Bus is what NCE calls their throttle network protocol. It is a polled network which supports up to 63 addresses. In addition to NCE, Wangrow's System One and PSI's DYNATROL also employed the Cab Bus protocol.
There are two physical forms of the Cab Bus wiring. The command bus or throttle network uses a four wire cable. Cab bus connections between the throttle and the command station or throttle network use a 6P4C or 6P6C RJ connector, which can use four or six conductors in the cable. The 6P6C is specifically for the Power Cab.
- 1 Cab Bus
- 2 Overview
- 3 Wiring
- 4 NCE Cab Bus Cables
- 5 Additional Info
- 6 NCE Helpdesk
The Cab Bus ties together various components of a NCE Digital Command Control system.
Systems Employing the Cab Bus
- North Coast Engineering (NCE)
- Wangrow Electronics Inc.
- Ramtraxx / Ramfixx Technologies
- PSI DYNATROL Digital
The controller bus connects up to 63 Hand-Held Cab Controllers to the Command Station. Data on the bus runs at 9600 bps with eight data bits, no parity, two stop bits and meets RS-485 specifications.
The Cab Bus is polled network. Devices on the network do no speak until spoken to. The command station software controls the polling frequency and sequence.
The limitations of the polled network are the number of devices (nodes) on the network, and speed. As more devices are added, their response time increases. At some point the electrical limits of the network will be reached, or a software imposed limit. This determines the total number of nodes which can be connected to the network. Optimal polling cycles are determined by the hardware's speed and bandwidth.
Controllers are continually in receive unless specifically addressed by the command station at which time the command station relinquishes the bus to allow the controller to respond. The Cab Bus system is a polled system. The cabs are polled, and when addressed respond by transmitting any change in status.
Cabs are not polled in numerical order. If a cab does not respond to a ping after several attempts, the command station will stop pinging that address. It will ping that address on a random basis, to speed up operations when more than 30 cabs are on the bus.
The maximum length of the bus is 500 feet and should be a continuous daisy chain without "branches" of any significant length (longer than 8 feet). The RS-485 Specifications suggest data rates up to 10Mbits/sec are possible, or at lower speeds for distances up to 1200 m. As a rule, a 50 m cable should allow signalling rates up to 2Mbits/s.
NCE suggests no longer than 300 m (1000ft) is acceptable, with branches not longer than 6 m.
Controller Bus Overview
Data on the bus is 8N2 (eight bits, no parity, 2 stop bits) following the RS-485 specification.
The cabs are in listen mode until they a specifically addressed by the command station (polled), at which time control of the bus is passed to the cab. All data sent from the cab is required to have bit 7 set to 1. A "ping" has bit 6 equalling 0, all other commands or data will have bit 6 set to 1
The cabs are continuously polled (pinged) for any change in status. When polled, the cab will reply with either a 2 byte response indicating a button press (first byte) then the second byte with speed information, or with a five byte message indicating the device address (2 bytes), then the operation (2 bytes) followed by a one byte XOR checksum.
The cab will begin transmitting approximately 780 μS after receiving the last stop bit from the command station.
Cabs 0 and 1 are reserved." Cab 0 is the broadcast address of the command station. Cab 1 is reserved for future applications.
Cabs are not polled sequentially, for faster response active cabs are polled more often than inactive cabs. Inactive addresses will be polled periodically for the purpose of discovering new cabs on the bus.
- Command station pings an address
- Cab answers
- If the cab has nothing to send, it does not have to respond.
- If command station has data for the cab, it is sent after the cab finishes transmitting
- Repeat process by pinging the next address
If a cab does not respond for several pings, it may be dropped from the queue for inactivity. It will then be pinged periodically until it responds to a ping.
Under normal circumstances, with 10 cabs in operation, a cab will be pinged about 23 times a second.
To poll all 63 addresses, the frequency per cab will be 3 to 4 pings/second, assuming 63 cabs in use and all are responding with a simple 2 byte response. Most NCE users will never see this level of performance.
- +12 Volts (nominal)
- "A" lead of RS-485 signal
- "B" lead of RS-485 signal
Three Pin Phone Plug
- Tip +12 Volts (7.5 to 16 Volts DC is OK)
- Ring RS-485 "A" lead
- Sleeve Ground
This connection is used for the Cab Bus. The UTP (Utility Throttle Panel) has these connections.
- +12 VDC
- A lead of RS-485 signal
- B lead of RS-485 signal
Only the 4 inner wires are used. This is the preferred interface.
- It is very important to get the correct type of cable. Using a cable which flips connections will damage your equipment.
This is used to connect between boosters. It uses a 4P4C plug and socket.
Cab Bus Wiring
It is important to arrange and wire the Cab Bus in a linear fashion. NCE does not recommend splitting the Cab Bus nor the use of stubs. As this is a serial protocol, it is meant to go point to point. It cannot be wired as a star, nor should it form a closed loop.
The Cab Bus and its throttle panels should be arranged in a daisy chain fashion, one feeding the next. Attempting to save wire by using stubs off the main bus to feed throttle panels will result in issues. If stubs are needed, they must be very short, no longer than the length of a coiled throttle cable.
Proper wiring is important. While the CAB Bus may work, at some point in the future when additional devices are added to the bus problems will occur. Spending extra time and using a little more wire will avoid those problems in the future. The underlying electrical issues were always there, it only takes a few more devices on the bus to bring them to the surface.
The UTP has four connections, and can be used as a three way splitter to split the cab bus into three segments. See the NCE website for details. There is a newer version available which allows for the use of CAT5 cabling between UTPs.
NCE Cab Bus Cables
There are three types of cables:
- Control Bus Cable with RJH 4P4C. Cable connects boosters to command station, max 300'
- Cab Bus Cable: RJ12 6P4C cable used for tethered cabs. Max. 40'
- Cab Bus Cable with RJ12 6P6C, used for the Power Cab.
NCE Power Cab: Cab Bus Cable
The Power Cab comes with a custom RJ12 6P6C cable. Do not attempt to make your own. Replacements are available from NCE. Third party cables will not have the heavy gauge wiring needed to carry the track current.
More info is available from the MERG website: Protocol.Zip file.
The Cab Bus is a polled network, which is different from a CSMA/CD network such as Digitrax's LocoNet. As the network expands, throughput decreases as more devices have to be polled. With a polled network, the device must wait silently until addressed, whether or not it has a message to send. A CSMA/CD network does the opposite, a device sends a message without being asked for a message, and will keep sending the message until it determines that it was successful.
NCE DCC Cables Explained for more information on Cab Bus cables, and how to order a new one for your Power Cab.
Speed in bit/s multiplied by the length in metres should not exceed 108. Thus a 50-meter cable should not signal faster than 2 Mbit/s.
50 × 2M = 100 × 1,000,000 = 100,000,000 or 108 (1006)
- Therefore, 300 m cable = 1006 ÷ 300 ≈ 0.3 Mbits/sec. (100,000,000 ÷ 0.33 × 1,000,000 ≈ 333 m )
There are a number of useful articles on the Cab Bus on the NCE website: