Skip to content

A DCC controller application for macOS, Windows, and Linux.

License

Notifications You must be signed in to change notification settings

constantin-p/dcc-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A DCC controller application for macOS, Windows, and Linux.
Table of Contents

Introduction

DCC Controller allows users to operate model railway systems (which support the DCC protocol) through a desktop GUI application.

The described functionality is achieved by using a 2 part system:

Installation (DCC Controller)

Download 1.0 Release (DCC_Controller.jar)

Usage

  1. Install the device control code for Arduino (arduino/sketch_dcc_controller_v1)
  2. Open DCC Controller
  3. Create a new device (FileNew Device or use the Add Device button)
  4. Open the device detail window (Open button from the device list)
  5. Connect the arduino board to your computer and select the corresponding port from DCC Controller (ToolsPort).
You should now be able to control the speed and direction of the device. For more functionality use configurations.

Configurations

You can extend the functionality of the application by using configuration files. A configuration file is a comma-separated values (CSV) file with 2 columns: command_display_name & command.

In order to import your configuration files, go to FileImport configuration or use the Add configuration button (device detail window).

For an example configuration file check configuration/default_train.csv.
Column Description
command_display_name The string that will describe the command in the GUI.
command The string that will be interpreted by the Arduino code. *

* This will be the suffix of the command string. The command structure is the following:

DCC_CTRL:<address>:<command>

  • <address>: (number) The device address (starts from 0, up to 127). This is set when you create the device.

For the REVERSE & FORWARD commands the following structure is used:

DCC_CTRL:<address>:<command>:<arg>

  • <arg>: (number) The speed value (starts from 0, up to 15). This is set by the GUI slider.
Commands are ended by a newline character \n.

Screenshots

  1. Device List Overview

Device List Overview

  1. Create Device Screen

Create Device Screen

  1. Default Device Screen

Default Device Screen

  1. Configured Device

Configured Device

License

This project is MIT licensed. Please see the LICENSE file for more information.