EX-Installer

Using the Installer

Suitable For Level: Conductor Hat Propeller Beanie Engineer Hat

Once you have purchased or assembled your EX‑CommandStation hardware you need to load our software onto it to make it usable.
To make it as simple as possible we have created the EX‑Installer app.

Note

If you already have, or wish to create, your own custom config files, we recommend that you read this page first.

Note

A word of caution on the alternate approach of using the Arduino IDE to install the software:

While it is possible install the software using the Arduino IDE, we seriously DO NOT RECOMMEND it for a Conductor or Tinkerer. It is an order of magnitude more complex, much slower, and with a very high probability of getting something wrong unless you really know what you are doing.

The EX‑Installer described below will meet 100% of the needs of a Conductor or Tinkerer with considerably less effort.


Requirements (for installing)

  • a Microsoft Windows, Apple MacOS or Linux based computer

  • EX‑CommandStation hardware, comprising of:

    • an Arduino microprocessor, based on any of:

      • Arduino Mega, Arduino Uno or Nano

      • Expressif ESP32

      • STMicroelectronicsm Nucleo/STM32

    • a motor shield

    • optionally, a WiFi shield or ethernet shield

    • optionally, an LCD or oLED display

  • a USB cable to connect your computer to the Microcontroller

Getting Ready

Connect your EX‑CommandStation hardware to your computer via USB.
Make sure your USB Cable is connected from your computer to the EX-CommandStation. Make sure no other programs (like the Arduino IDE) are using the same USB port.

Download and Run EX-Installer

Warning

Antivirus Software
You may need to turn off your antivirus software before you try to install.
Sometimes our software gets blocked by antivirus apps. If you see any errors on the install screen, this is usually the issue.

  • Download the new EX-Installer app.

  • For Microsoft Windows:

    • Open the Windows File Manager

    • Find the folder in which the EX-Installer-Win64.exe or EX-Installer-Win32.exe was saved.
      Generally this will default to downloading to the downloads folder but your browser may be configured differently.

    • Run EX-Installer-Win64.exe (or EX-Installer-Win32.exe)

      Note: depending on the configuration of your computer the ‘.exe’ may or may not appear. This is not of concern.

  • For Apple macOS:

    • Open a terminal window and navigate to the that folder that you downloaded the file to. e.g.:
      cd Downloads

    • Enter the following command to tell the OS that it is an executable:
      chmod +x EX-Installer-macOS

    • Run the installer with the following command:
      ./EX-Installer-macOS

  • For Linux:

    • Right-click on the file, go to Properties, then the Permissions tab, and check “Allow executing file as program”

    • Open a terminal window and navigate to that folder

    • Run the installer with the following command:
      ./EX-Installer-Linux64

Warning

EX-Installer creates then maintains a folder (<home>\ex-installer) to hold the information it needs. Do not directly modify anything in this folder as it may be overwritten or deleted by the installer at any time.

You will be presented with the following screen…

a. The ‘EX-Installer Welcome’ screen

EX-Installer - Welcome

Figure 172 EX-Installer - Welcome screen

This screen provides some basic information about the process of loading the Software.

There is a debugging option on this page. If enabled this provides additional information about what is happening during the loading process. Unless you are having difficulties, or have been requested to enable this by one of our team, you do not need to select this.

To proceed, click the Manage Arduino CLI button.

b. ‘Manage Arduino CLI’ screen

EX-Installer - Manage CLI

Figure 173 EX-Installer - Manage CLI screen

This screen allows you to install or update the Arduino Command Line Interface (CLI).

We use the Arduino Command Line Interface (CLI) to upload the DCC-EX products to your Arduino. The CLI eliminates the need to install the more daunting Arduino IDE. EX-Installer is able to manage the installation and updating of the Arduino CLI for you at the click of a button.

If you have not installed the CLI previously you will see a Install Arduino CLI button.

If have previously installed the CLI you will see a Refresh Arduino CLI button.

Note

Enabling additional platforms will take more space on your hard drive and is likely to add several minutes to the installation process. Maybe grab a cup of tea or a coffee!

If you are using an Espressif or STMicroelectronics device, as opposed to the more common Uno or Mega based Arduinos, you will need to enable support for these by selecting the appropriate additional platform option.

You must have Arduino CLI installed to proceed, simply click the Install Arduino CLI button if it is showing.

If you already have the Arduino CLI installed, it is recommended that you refresh it periodically (e.g. weekly) to ensure support for the various device details are kept up to date. To refresh the CLI, simply click the Refresh Arduino CLI button.

Once the CLI is installed, To proceed, click the Select your device button.

c. ‘Select Your Device’ screen

EX-Installer - Select Device

Figure 174 EX-Installer - Device screen

On this screen you will need to
a) select the type of device you wish to load the EX‑CommandStation software onto, and
b) the USB port you have connected the device to on your computer.

EX‑Installer will attempt to work out both of these for you, but it may need assistance.

When navigating to this page, a scan for devices will start automatically.

If you see No devices found it means that you either a) have not connected the device to the computer, or b) the device was not recognised by the computer.

No Devices Found

If you have not connected the device, connect it now then click the Scan for Devices button again.

If the device is connected but not found refer to the Diagnosing Basic Problems page for assistance.

Multiple Devices Found

EX-Installer - Select Device - Multiple Devices

Figure 175 EX-Installer - Device - Multiple Devices

If more than one device is found (on different USB ports), you will need to select which one you wish to load the software on to.

EX-Installer - Select Device - Selection

Figure 176 EX-Installer - Device - Selection

EX‑Installer will attempt to work out what type of Arduino you have connected, but in some cases it will not be able to do so. (This is especially common with cheap clone devices.)

Check and select the appropriate board from the drop down list.

Once you have a port and device type selected, to proceed, click the Select product to install button.

d. ‘Select the Product to Install’ screen

EX-Installer - Select Product

Figure 177 EX-Installer - Product Screen

Currently, EX‑CommandStation, EX‑IOExpander, and EX‑Turntable can be installed by the EX‑Installer, however this page will focus only on EX‑CommandStation. For the other products, refer to the relevant documentation section.

Click on the EX‑CommandStation logo to proceed.

e. Product Specific screens - EX-CommandStation

i) ‘Select EX-CommandStation Version’ screen

EX-Installer - Select EX-CommandStation version

Figure 178 EX-Installer - EX-CommandStation version screen

On this screen you need to select:

  • Which version of the EX-CommandStation software you wish to load

  • How you wish to configure the software

Which version

Select which version of the EX‑CommandStation software to load onto your hardware. If you are unsure, or unless you have been otherwise directed by the support team, we recommend you select Latest Production.

Options are:

  • Latest Production - Recommended!

  • Latest Development

  • Select a specific version

How to configure

Select how you wish to configure your EX‑CommandStation. Unless you are updating a previous version that you manually configured, or want to manually make advanced configuration changes, select Configure options on the next screen

Options are:

  • Configure options on the next screen

  • Use my existing configuration files

EX-Installer - EX-CommandStation select existing config

Figure 179 EX-Installer - Select existing configuration files

If you select Use my existing configuration files you will be prompted to find the folder where the configuration files are located:

  • Click the Browse button and navigate through your computer’s folders and files to select the location containing your existing configuration files

  • Select one of the files in the folder and click the Open button to select it

  • The chosen folder will be displayed

If you have selected Configure options on the next screen, to proceed, click the Configure EX-CommandStation button.

If you have selected Use my existing configuration files, to proceed, click the Advanced Config button. In this case you will be presented with the ‘Advanced Config’ screen.

ii) ‘Install EX-CommandStation’ - Configuration screen

EX-Installer - EX-CommandStation Configuration

Figure 180 EX-Installer - EX-CommandStation Configuration screen

Only if you have selected Configure options on the next screen on the previous screen will you be presented with this screen.

On this screen you can select some of the flexible and optional features of the EX‑CommandStation:abbr:

  • Motor Driver type

  • LCD or oLED display

  • Wifi

  • Ethernet

  • Set track modes

  • Advanced Config

Motor Driver
EX-Installer - EX-CommandStation - Configure Motor Driver

Figure 181 EX-Installer - Configure Motor Driver

You must select the motor driver type that you have installed. The installer can’t detect this, so you must select the correct board or the EX‑CommandStation may not work.

These options are determined from the chosen version of EX‑CommandStation, and may include:

  • STANDARD_MOTOR_SHIELD

  • EX8874_SHIELD

  • POLOLU_MOTOR_SHIELD

  • FIREBOX_MK1

  • FIREBOX_MK1S

  • FUNDUMOTO_SHIELD

  • IBT_2_WITH_ARDUINO

  • YFROBOT_MOTOR_SHIELD

  • ORION_UNO_INTEGRATED_SHIELD

  • NANOEVERY_EXAMPLE

This list will change over time as new motor drivers are added, and any older ones no longer supported are removed.

Optional Display
EX-Installer - EX-CommandStation - Configure Display Driver

Figure 182 EX-Installer - Configure Display Driver

If you have installed and optional oLED or LED display, enable the I have a display option, which will present you with a drop down list to select the type of display you have.

The options include:

  • LCD - 16 columns x 2 rows

  • LCD - 20 columns x 4 rows

  • OLED 128 x 32

  • OLED 128 x 64

WiFi

If you have installed and optional WiFi board, or are using a microcontroller board with integrated WiFi, enable the I have WiFi option, which will enable the WiFi Options tab, allowing you to configure the WiFi settings.

EX-Installer - EX-CommandStation - Enable WiFi

Figure 183 EX-Installer - EX-CommandStation - Enable WiFi

You can configure the WiFi for EX-CommandStation two ways:

  • Access Point mode
    You can configure for EX-CommandStation to have its own, completely isolated, WiFi Network. This is referred to as Access Point Mode. (Most useful if your layout is away from the house, or you transport your layout frequently, or do not want to give guests access to your home WiFi.)
    To enable, select Use my EX-CommandStation as an Access Point

  • Station mode
    The EX-CommandStation can be setup so that it connects to your existing home WiFi Network. This is referred to as Station Mode.
    To enable, select Connect my EX-CommandStation to my existing wireless network

Use my EX-CommandStation as an Access Point

EX-Installer - EX-CommandStation - Configure WiFi - Access Point

Figure 184 EX-Installer - Configure WiFi - Access Point

Note

If possible, choose a channel that is unused (or least used) by other WiFi networks around your location.
There are numerious phone apps that can help you determine which channels are being used by other networks. For Android, ‘Wifi Analyzer’ is one that works. For iOS ‘Netspot’ is suitable (you don’t need to purchase WiPry device they mention).

If Use my EX-CommandStation as an Access Point is selected, two additional options are presented:

  • WiFi Password

  • WiFi Channel

WiFi Password is optional.
If this field is left blank the password will default to ‘PASS_xxxxxx’ where ‘xxxxxx’ will be the same as the SSID name that will be automatically configured.

WiFi Channel can be any value from 1-11.

Connect my EX-CommandStation to my existing wireless network

EX-Installer - EX-CommandStation - Configure WiFi - Station Mode

Figure 185 EX-Installer - Configure Wifi - Station Mode

If Connect my EX-CommandStation to my existing wireless network is selected, two additional options are presented:

  • WiFi SSID

  • WiFi Password

Both are required.

WiFi SSID is the name of your home network.

WiFi Password is the password for your home network.

Additionally, if you choose, you may customise the WiFi hostname, or leave it as the default “dccex”.

Note

See the WiFi Configuration page for more detailed information on the the WiFi options.

I have Ethernet

If you have installed and Ethernet board, select this option.

Note that it is not possible to have both WiFi and Ethernet enabled at the same time.

Start with power on

Enabling this option will cause the EX‑CommandStation to automatically start with the track power on.

If you don’t enable this, you will need to turn the track power with you controller, or with TrackManger automations.

Override current limit

Enabling this option will allow you to override the default current limit.

Set track modes

If you have selected an appropriate version of EX‑CommandStation, you will be able to enable the option to configure TrackManager. If the Configure TrackManager switch is disabled, you have not selected a version that includes the TrackManager feature.

Enabling this option will enable the TrackManager Config tab.

EX-Installer - EX-CommandStation - Enable TrackManager

Figure 186 EX-Installer - Enable TrackManager

EX-Installer - EX-CommandStation - Configure TrackManager

Figure 187 EX-Installer - Select Track Modes

EX-Installer - EX-CommandStation - Configure TrackManager

Figure 188 EX-Installer - Configure Track Modes

The tracks (channels) on your motor driver can be configured in a variety of different ways.

  • MAIN - DCC main

  • PROG - DCC Programming Track

  • DC

  • DCX - DC with the positive/negative inverted

  • OFF

By default track (channel) A will default to MAIN and Track (channel) B to PROG.

When selecting DC or DCX modes, you can customer the associated loco/cab ID.

Advanced Config
EX-Installer - EX-CommandStation - Advanced Config

Figure 189 EX-Installer - Advance Config

If you wish to edit the ‘config’ files directly, select this option. An additional screen will be presented for to edit the main config files.

Note there is an additional option Create myAutomation.h that allows a blank myAutomation.h file to be created, which you can edit on the following Advanced Config screen. Leaving this option disabled means a myAutomation.h file will not be generated if it is not required, which saves memory on your EX‑CommandStation device.

Unless you have selected Advanced Config, to proceed, click the Compile and Load button. See iv below.

If you have selected Advanced Config, to proceed, click the Advanced Config button. See iii below.

iii) ‘Advanced Configuration’ screen

EX-Installer - EX-CommandStation - Configure WiFi - Station Mode

Figure 190 EX-Installer - Advanced Config Screen

EX-Installer - EX-CommandStation - Advanced Config with multiple files

Figure 191 EX-Installer - Advance Config - more than two files

If you have selected Advanced Config on the previous screen, or if you chose to copy your existing configuration files, you will be presented with this screen.

On this screen you can edit the configuration files. If you have more than two files to edit, they will be separated into tabs as shown in the second figure above.

Note that if you did not enable any options requiring myAutomation.h, and did not enable Create myAutomation.h, you will only be able to edit config.h on this screen.

To proceed, click the Compile and Load button. See iv below.

iv) ‘Compile and Load’ screen

EX-Installer - Load

Figure 192 EX-Installer - Compile and Load Screen

To proceed, click the Load button.

Results are shown in the lower half of the screen.

If there are no errors, you can proceed to testing your setup.

If there are errors or you are having difficulties check the Troubleshooting page for assistance.

Backup

After loading the software onto your device, you can optionally copy the generated configuration files to a folder of your choice as a backup by clicking the Backup config files button.

EX-Installer - Backup

Figure 193 EX-Installer - Backup Option

You will be prompted to select a folder, and if the chosen folder already contains config files, you can overwrite these, or you can select an alternative location.

EX-Installer - Backup select folder

Figure 194 EX-Installer - Select backup folder

EX-Installer - Overwrite existing files

Figure 195 EX-Installer - Overwrite existing backup

Device Monitor

Once you have selected a device in EX‑Installer on the “Select your device” screen, or after successfully loading software onto your device, a View device monitor button will be available.

When clicking this button, the Device Monitor window will open, allowing you to interact with your device by sending commands and viewing the serial console output.

Device Monitor

For further details on using Device Monitor, continue on to the next page with the ‘Next’ button, or go straight to Using the EX-Installer Device Monitor.


Next Steps - Test your setup

Note

The programming track is for programming only. Make sure you are on the main track if you expect your loco to move or respond to light or sound commands.

See the Testing your installation page or click the ‘Next’ button to learn how to test and use your EX‑CommandStation.