For example:

  • A DS54 accessory decoder will occupy 4 DCC accessory addresses. The number of the first address (its base address) is programmed by values in CV1&CV9. The board occupies addresses between "base address" & "base address + 3".
  • A DAC20 accessory decoder will occupy 8 DCC accessory addresses. The number of the first address is programmed by values in CV1&CV9. The board occupies addresses between "base address" & "base address + 7".
  • An SE8C signal controller will occupy 64 consecutive addresses.
  • A SIGM20 signal controller occupies 16 consecutive addresses. It is also possible to program the board to respond to some other accessory addresses to do specialised things.

It is a good idea to document carefully what decoders are used for which purposes, and what addresses are assigned to them. If a board is inadvertently assigned to an address overlapping another board, no damage will result but the user will find that setting one address to CLOSED may cause response in more than one decoder board.

When this is daunting, the safest approach is to experiment. Use a LocoNet message viewer on a PC to see the messages generated by the various boards & sensors. In general no 2 boards should generate messages with the same numbers. If it turns out there is an overlap, reprogram one of the boards.

Some board occupy "sensor addresses". As a general principle, there are two sensor addresses for each DCC accessory address: therefore there are a total of 4096 sensor numbers. Early interface boards (e.g. DS54) use the same address programming to control both the sensor address and the DCC address. If the DCC addresses didn't overlap, then the sensors will be automatically deconflicted too. Other products (e.g. BDL16, BDL168) program the sensor address using a "board number, sensor number" approach. The overlap between these two numbering schemes causes greatest confusion. We have a separate note on How to work out sensor numbers for a DAC10.