NCE Cab Bus

DCCWiki, a community DCC encyclopedia.
Jump to: navigation, search


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. A subset of the Cab Bus is the Command Bus, used to link boosters together.

Cab Bus

The Cab Bus ties together various components of a NCE Digital Command Control system.

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.

Systems Employing the Cab Bus

Overview

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.

Devices are continually in receive mode 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 or throttles 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. The command station will periodically ping all addresses, to discover new devices or acknowledge dormant throttles. It will ping addresses 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

The controller bus connects up to 63 Cabs to the command station.

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

Operation

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.

Cab Addressing

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.

Normal Operation

  • 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.

Response Time

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.

Wiring

DIN Plug

  1. +12 Volts (nominal)
  2. Ground
  3. "A" lead of RS-485 signal
  4. "B" lead of RS-485 signal

This is optional, and can be used when wired for compatilbiity with the Lenz XpressNet

Three Pin Phone Plug

  • Tip +12 Volts (7.5 to 16 Volts DC is OK)
  • Ring RS-485 "A" lead
  • Sleeve Ground

RJ-11

This connection is used for the Cab Bus. The UTP (Utility Throttle Panel) has these connections.

  1. Reserved
  2. +12 VDC
  3. A lead of RS-485 signal
  4. B lead of RS-485 signal
  5. Ground
  6. Reserved

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.

Command Bus

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.

UTP Panels

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

Cable RJ Connector Description Purpose Notes
Control Bus RJH/RJ9 4P4C Four wire cable Control bus between Boosters and Command Stations Max length: 300 ft.
Cab Bus RJ12, 6P4C Four wire flat or coiled cable Connect Cabs to Cab Bus Only 4 connections in plug are used
Cab Bus RJ12, 6P6C Flat six wire cable Power Cab to layout Carries power, specifically designed 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.

Additional Info

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.

RS-485 Throughput

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 )

NCE Helpdesk

There are a number of useful articles on the Cab Bus on the NCE website: