Simple DCC | New look on Digital Command Control decoders

Kolejkowo | Model railway layout | Gliwice, Poland

Why we started working on Simple DCC

DCC works in a very simple way - a command station sends messages to DCC decoders by wires/rails. There are no encryption, authorization, or acknowledgment packets as most wireless systems have. But there are still many difficulties with updating logic on DCC decoders, and we cannot update DCC decoder logic directly from a laptop or mobile phone without command stations. The whole logic of DCC decoders is predefined by the manufacturer and you can just switch some features/outputs on and off. For example, you might want to evaluate a new level crossing signal before you install it on your layout. Now you have to program decoders and sometimes use some additional proprietary modules just to get level crossing signals working (just look at a manual for Viessmann 5057). The main idea of Simple DCC is to simplify DCC by letting you program and control DCC decoders directly from a browser on a computer, mobile phone, or tablet. A Simple DCC decoder connects to a laptop or mobile device using Wi-Fi, USB, or even Bluetooth without a command station. You can add custom logic to any decoder or use our DCC templates. The project is open source (a special commercial license is required for commercial usage, contact us for more information).

Getting started with Simple DCC

We try to make Simple DCC as simple as possible, but there are still a few easy steps to get your first Simple DCC decoder. Also, you can buy our ready-to-use DCC accessory and train decoders that can work as WCC modules as well - check here for more information about our decoders. If you want to make your own Simple DCC decoder, follow the steps below, and feel free to contact us if you have any questions, issues, or feedback.

  • Select a Simple DCC decoder board. ESP32 C3 and ESP32 S3 boards are supported now. We recommend using ESP32 S3 boards because they have more outputs, 2 PWM to control servos, and much better performance than ESP32 C3. You can buy such boards at AliExpress, Mouser (if you buy at least 4 boards, shipping to most countries is free), and Amazon. The price is around 15-18 EUR/USD.
  • If you want to control a DCC decoder from a command station and not just from a web browser, you also need an optocoupler, resistors, and diode. You can order them from Mouser with ESP32 boards to get free shipping or in your local shop. Check the documentation for information about how to connect all components together, no soldering is required.
  • If you want to power your DCC decoder from tracks you need a DC-DC drop-down or LDO - check the documentation for more information.
  • Install the utility to upload firmware to DCC decoders - https://docs.espressif.com/projects/esptool/en/latest/esp32/installation.html#installation. If you haven't any experience with flashing ESP32 microchips - don't worry, after you install Esptool from the link above, you should just connect a board (or DCC decoder in our case) to USB and run a command (Windows users can use the utility with GUI). Check the documentation for more information.
  • Download the pre-built firmware from the Releases page and upload it to the ESP32 board (DCC decoder). Check the docs for more details on how to upload firmware
  • Open the web app at https://loco.engineering/app and follow the steps to connect your first layout element or train.

Simple DCC vs WCC (Wireless Command Control)

WCC (Wireless Command Control) is an open wireless system for operating model railways and LEGO® trains ( see docs here for more information) developed by the Loco.Engineering team. There are 2 main differences between Simple DCC and WCC:

  • WCC allows messages to be transmitted between all elements on a layout (trains, accessories, even cars). For example, train A can send a message to a decoder that controls Station A that the train is about to arrive at that station and a new message needs to be shown on a station display. This message will be sent directly between 2 decoders without a command station.
  • WCC supports NFC tags (small, unpowered stickers, 6mm x 6mm) to detect train locations. NFC tags work in the same way as Eurobalise for real trains - https://en.wikipedia.org/wiki/Eurobalise
  • You don't need command stations to control a layout with WCC and your layout can be powered by DC or even battery.
  • WCC can handle the logic of thousands of decoders without command stations and boosters.
  • WCC is much cheaper and more flexible than DCC

If you use ESP32 S3 for your Simple DCC decoders, you can easily migrate from Simple DCC to WCC anytime.

Why should I try Simple DCC decoders?

  • This is an open-source project with an open protocol and open hardware, you're limited only by your imagination
  • Simple DCC decoders can be used as WCC modules as well. WCC (or Wireless Command Control) is the future of model railways where you can control a virtually unlimited amount of trains, layout elements, and cars without any command stations and additional wires. WCC includes detecting locations of any movable objects (trains, cars, etc) with unpowered NFC tags and sending 2-way messages between trains, cars, and any layout elements. More information can be found in our documentation
  • You can update the logic of decoders directly from a web browser on your laptop, tablet, or mobile phone. No programming over command stations is required.
  • You can make your own Simple DCC decoder or buy a ready decoder in our online shop
  • Low cost
  • The firmware of a decoder can be updated over the air at any time
  • Works with any battery-powered models/toys/products as well - LEGO®, RC cars, garden trains, doll houses, etc

Subscribe to news about Simple DCC here.

FAQ

  • Q: Why you don't use Arduino?

     A: Arduino is a nice tool to develop prototypes but it's not suitable for production usage. As Simplify DCC is a part of our Loco.Engineering platform we want to be sure that it works without any issues and latency. Only native SDK can provide such an experience that's why we use ESP-IDF for ESP32 boards

  • Q: Does it work with all DCC protocols?

 A: We try to handle as many as possible DCC protocols but of course, we cannot handle everything. If you have any issues with your DCC command station, drop us a line at hey[at]loco.engineering