1
0
mirror of https://github.com/DCC-EX/CommandStation-EX.git synced 2024-11-22 23:56:13 +01:00
Go to file
Asbelos c3e17fcf04 Add EthernetInterface (UNTESTED, UNCALLED)
Thanks to Gregor....I have modified his originals to eliminate the static initialisation memory loss. These do not show up in the object code if they are not referenced.
2020-09-26 12:01:00 +01:00
.github/workflows the start of new feature the config.h template including fix for github build action 2020-09-22 14:57:11 -04:00
.vscode Add readme add back extensions and settings from Dave and fix gitignore 2020-07-01 09:06:03 -04:00
ATMEGA328 Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
ATMEGA2560 Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
ATMEGA4809 Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
ATSAMC21G Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
ATSAMD21G Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
examples Rename .ino to match folder name and make changes for WiFi 2020-09-18 19:40:18 -04:00
.gitattributes Initial commit 2020-05-25 01:43:34 -06:00
.gitignore the start of new feature the config.h template including fix for github build action 2020-09-22 14:57:11 -04:00
.travis.yml Initial commit 2020-05-25 01:43:34 -06:00
AnalogReadFast.h Motor drivers tested 2020-08-17 15:30:25 +01:00
ArduinoTimers.h Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
CommandStation-EX.ino Move bulk includes out of .ino 2020-09-26 08:49:51 +01:00
config.example.h Set preamblebits main to 16 and remove all preamble config from config.h 2020-09-25 22:27:37 +02:00
DCC.cpp Fix Auto-poweron in blocking mode 2020-09-25 12:37:30 +01:00
DCC.h Minor fixes start Uno Wifi Rev 2 fixes 2020-09-25 13:51:08 -04:00
DCCEX.h Add EthernetInterface (UNTESTED, UNCALLED) 2020-09-26 12:01:00 +01:00
DCCEXParser.cpp Decouple WifiInterface from Parser 2020-09-26 10:54:11 +01:00
DCCEXParser.h Decouple WifiInterface from Parser 2020-09-26 10:54:11 +01:00
DCCWaveform.cpp Evn slower slow wave looks better 2020-09-10 17:19:53 +01:00
DCCWaveform.h Set preamblebits main to 16 and remove all preamble config from config.h 2020-09-25 22:27:37 +02:00
defines.h NUM_SERIAL tells us how many serial lines to check 2020-09-25 22:49:53 +02:00
DIAG.h Cleaned DIAG interface 2020-09-06 20:23:26 +01:00
EEStore.cpp Copyrights etc 2020-07-03 17:35:02 +01:00
EEStore.h Copyrights etc 2020-07-03 17:35:02 +01:00
EthernetInterface.cpp Add EthernetInterface (UNTESTED, UNCALLED) 2020-09-26 12:01:00 +01:00
EthernetInterface.h Add EthernetInterface (UNTESTED, UNCALLED) 2020-09-26 12:01:00 +01:00
freeMemory.cpp rewrite freeMemory code 2020-09-22 23:10:52 +02:00
freeMemory.h rewrite freeMemory code 2020-09-22 23:10:52 +02:00
GITHUB_SHA.h V fixes, R command and github sha. 2020-09-20 00:59:07 +01:00
LICENSE Create LICENSE 2020-06-12 22:51:42 -06:00
MemStream.cpp Fixup MemStream warning messages 2020-07-16 14:04:59 +01:00
MemStream.h Minor fixes start Uno Wifi Rev 2 fixes 2020-09-25 13:51:08 -04:00
MotorDriver.cpp Motor drivers tested 2020-08-17 15:30:25 +01:00
MotorDriver.h Virtual motor driver functions 2020-08-23 22:04:57 +01:00
MotorDrivers.h Minor fixes start Uno Wifi Rev 2 fixes 2020-09-25 13:51:08 -04:00
objdump.bat Add EthernetInterface (UNTESTED, UNCALLED) 2020-09-26 12:01:00 +01:00
objdump.sh initial 2020-07-16 13:54:47 +02:00
Outputs.cpp Cleaning of Turnout/Output/Sensor 2020-09-06 12:44:19 +01:00
Outputs.h Cleaning of Turnout/Output/Sensor 2020-09-06 12:44:19 +01:00
platformio.ini Change motorshield back to whats in config, change from 1.2 version needed 2020-09-23 22:49:18 -04:00
PWMServoDriver.cpp I2C diagnostics 2020-09-07 16:19:55 +01:00
PWMServoDriver.h Fix hanging turnouts 2020-07-23 12:48:38 +01:00
README.md Update and rename readme.md to README.md 2020-09-21 11:35:14 -04:00
Sensors.cpp Cleaning of Turnout/Output/Sensor 2020-09-06 12:44:19 +01:00
Sensors.h Cleaning of Turnout/Output/Sensor 2020-09-06 12:44:19 +01:00
StringFormatter.cpp Improved <D> commands 2020-09-10 13:09:32 +01:00
StringFormatter.h Improved <D> commands 2020-09-10 13:09:32 +01:00
Timer.cpp Minor fixes start Uno Wifi Rev 2 fixes 2020-09-25 13:51:08 -04:00
Turnouts.cpp Cleaning of Turnout/Output/Sensor 2020-09-06 12:44:19 +01:00
Turnouts.h Cleaning of Turnout/Output/Sensor 2020-09-06 12:44:19 +01:00
version.h Move version to its own .h file 2020-09-23 21:53:33 -04:00
VirtualTimer.h Embed ArduinoTimers library 2020-08-23 14:14:04 +01:00
WifiInterface.cpp Decouple WifiInterface from Parser 2020-09-26 10:54:11 +01:00
WifiInterface.h UNTESTED Reduce #ifdef hell on wifi 2020-09-26 09:40:49 +01:00
WiThrottle.cpp Improved <D> commands 2020-09-10 13:09:32 +01:00
WiThrottle.h Steves Withrottle stuff 2020-08-20 17:16:47 +01:00

What's DCC++ EX


DCC++ EX is an open-source hardware and software system for the operation of DCC-equipped model railroads. It expands on the work of Gregg E. Berman's original DCC++ (which can be found here in the BaseStation-Classic repository)

The system consists of two parts, the DCC++ EX Command Station and one of many front end controllers. These controllers can be hardware controllers (called CABs or Throttles), software applications like JMRI, phone apps like Engine Driver, or our exWebThrottle that is a simple application you run in a browser like a web page and control your model trains.

The DCC++ EX Command Station consists of an Arduino micro controller fitted with an Arduino Motor Shield (or other supported motor controllers) that can be connected directly to the tracks of a model railroad.

Whats in this Repository


This repository, CommandStation-EX, contains a complete DCC++ EX Commmand Station sketch designed for compiling and uploading into an Arduino Uno, Mega, or Nano. All sketch files are in the folder named CommandStation-EX and its subforlders. More information about the sketch can be found in the included PDF file.

To utilize this sketch, you can use our automated installer, or download a zip file from this repository and open the file "CommandStation-EX.ino" after unzipping it to your Arduino IDE projects folder. Please do not rename the folder containing the sketch code, nor add any files in that folder. The Arduino IDE relies on the structure and name of the folder to properly display and compile the code.

The latest production release of the Master branch is 3.0.1:

  • Supports the Arduino Uno, Arduino Mega, and Arduino Nano
  • Built-in configuration for both the original Arduino Motor Shield, Pololu MC33926 Motor Shield, LMD18200, and BTS7960B
  • Built-in configuration and support of Ethernet Shields and the ESP82266 WiFi module (networking for use with Mega only).

For more information on the overall DCC++ EX system, please follow the links in the PDF file.

Detailed diagrams showing pin mappings and required jumpers for the Motor Shields can be found in the Documentation Repository

The Master branch contains all of the Command Station functionality showed in the DCC-EX YouTube channel.

How to find more information


DCC++ EX WEB Page

The DCC++ EX Discord and live support

TrainBoard DCC++ Forum

-May 2020 !!