Wednesday, 4 March 2015

DCC Control Station

A big thank you to Malhar Deshmukh for his comment which helped remind me that I was going to work on the Arduino as a command station.

Unfortunately before now, I was sidetracked by other things such as my layout planning (and it's multiple revisions and restarts), as well as my growing collection of locomotives and coaches.

My original plan was to use an Arduino Uno as a simple dcc control station that can control a few dcc locomotives and devices. In order to do this I will need to make use of:
  • an Arduino Uno (or Arduino compatible)
  • an LCD (I2C interface)
  • a few buttons and LEDs
  • a key pad
  • the software CmdArduino (created by D.E. Goodman-Wilson)
  • a dcc booster (as I am too lazy to build a h-bridge)

As for test equipment, I will be using:

The code for this will be hosted on GitHub and is a fork of the CmdArduino repository which is also hosted on GitHub. The fork of CmdArduino I have made is located at:  https://github.com/dtcole/CmdrArduino


Initial Plan


  1. Setup the code to have the potentiometer set the speed in one direction and instead use two buttons to control the direction.
  2. Attach I2C LCD and insert support code to run it. 
    • Modify CmdStation.ino to display loco information (address, speed, and direction).
  3. Attach keypad, and modify CmdStation.ino to support it, 
    • insert test code to verify keys pressed match what the arduino sees.
  4. Create a menu that allows:
    • the user to add and remove a locomotive (DCC Address, and name). 
    • select a locomotive by name for direct control.  
    • the # button to return to the main menu.
    • the * button to return to the currently selected locomotives information 
I will create a new post once I have the above mentioned working.

No comments:

Post a Comment