Contributing Donate Button

Overview

Conductor Hat Propeller Beanie Engineer Hat

What can I contribute to?

There are several different aspects to the DCC-EX project requiring multiple different skills and capabilities, and you don’t need to be a guru C++ developer or software engineer to help.

As a general guideline we can always use help and assistance in these general areas:

Conductor Hat

  • Documentation - enhancing our documentation is a never ending task as we add features and receive feedback, and any and all contributions to this are always appreciated.

Propeller Beanie Engineer Hat

  • EX‑CommandStation - our core product is written in C++ and is pretty stable and feature-rich, however we’re always looking to enhance this, fix bugs, and so forth.

  • EX‑WebThrottle - our web based throttle is in need of further development and is one key area we could really use some help with.

  • EX‑Installer - our automated installer always needs development as we release new versions.

  • EX‑Turntable - another product written in C++ in Beta testing, development needs will become clear as time goes on and the user base increases.

Engineer Hat

  • Hardware - as the microcontroller and I/O accessory markets develop, we are constantly assessing what other options are out there, especially as we near the limits of the Arduino AVR architecture.

What do I need to be able to contribute?

We assume, since you got here, that you already have a computer up and running being either a Linux, macOS, or Windows machine, as well as a working internet connection and some disk space available.

A 64 bit operating system is preferred, running as much as possible the latest version of your chosen OS. This in any case is good practice to keep your environment healthy and up-to-date.

The following sections describe what else you need for participating in the different efforts and work streams.

Development, planning, and support processes

There is a repository within the DCC-EX GitHub organisation where we are slowly building out our project and support process documentation.

This repository will contain the various workflows, templates, and testing items we will use to ensure we release quality code with as few bugs (or “hidden features”) as possible, and to ensure code is consistent across an internationally dispersed team.

This is our Support Planning repository.

Contacting the team

To get in contact with the team, refer to our Troubleshooting & Getting Help page.

Managing code and our website

We manage all of our code and our website via GitHub, and anyone can contribute to this whether an official part of our team or not.

Click the “Next” button to read how we use GitHub.