RailCommand Desktop App

Last updated: August 11, 2026

RailCommand Desktop App

The RailCommand desktop app is the native operator surface for running trains. Use it when you need local hardware status, session readiness, Engineer Cab controls, CTC dispatching, Yardmaster workflows, tablet pairing, or offline .rspkg operation.

Web, Desktop, and Runtime

RailCommand has three parts:

Surface What it is best for
RailCommand web Layout planning, imports, schedules, panels, reports, training, and account-backed management.
Desktop app Live operation, hardware status, running trains, CTC dispatching, Engineer Cab, pairing, and local/offline workflows.
UE5/local host Runtime authority for local graph execution, safety state, and physical-hardware decisions.

The desktop app presents controls and forwards operator intent. The local runtime owns safety-critical execution decisions.

First Launch

When the desktop app opens:

  1. Log in to the cloud backend or open a trusted local .rspkg layout file.
  2. Choose the operating layout.
  3. Open Hardware Setup if the command station or local runtime needs attention.
  4. Run Ops Readiness.
  5. Start, resume, or join an operating session.
  6. Open the role surface you need: Engineer Cab, CTC Dispatcher, Yardmaster, Crew Management, Roster, Inventory, Layout Editor, or Panel Editor.

When to Use the Desktop App

Use the desktop app for:

  • Hardware-connected operating sessions.
  • Running locomotives from Engineer Cab.
  • Dispatching with a native CTC panel.
  • Pairing phones or tablets to a local session.
  • Offline operation from a local .rspkg.
  • Monitoring local runtime and hardware health.

Use the web app when you are setting up account-level data, writing reports, importing large datasets, reviewing training, or managing organization settings.

Closing vs Quitting (all platforms)

Closing the main window does not stop RailCommand. After login, the window close button (X / Alt+F4 on Windows) hides RailCommand to the system's notification area and everything keeps running — the app, the local runtime, hardware links, and any operating session. This is deliberate: an operating layout should not lose its authority because a window was closed.

  • To reopen the window: click the RailCommand icon in the notification area, or choose Open RailCommand from its menu. On Windows 11 the icon may sit behind the hidden-icons ^ overflow next to the clock.
  • To stop RailCommand completely: open the RailCommand notification-area menu and choose Quit RailCommand. This is the real shutdown — it stops the app, its background services, and the entire supervised engine.
  • Before login: the login screen has its own Quit link, so you can exit without entering the main application.

Do not end the engine process from Task Manager. Ending only RailCommand-Win64-Shipping.exe looks like a crash to RailCommand's engine supervisor, which restarts it — that restart is the supervisor doing its job, not a bug. Quit RailCommand is the supported way to stop everything.

On macOS the same menu (with the same Open RailCommand / Quit RailCommand items) lives on the RailCommand icon in the menu bar at the top-right of the screen; on Ubuntu it lives in the system's indicator/tray area. The window-close behaviour is the same on all three platforms; only where the icon appears differs.

Troubleshooting

  • "The window disappeared but trains are still running" — that is close-to-tray working as designed. Reopen from the notification-area icon (Open RailCommand); use Quit RailCommand there when you actually want to stop.
  • "I ended the RailCommand engine in Task Manager and it came straight back" — the engine supervisor restarts an unexpectedly terminated engine on purpose. Stop the application with Quit RailCommand instead; that shuts down the supervisor and the engine together.
  • "I can't find the tray icon on Windows" — check the hidden-icons ^ overflow beside the clock, then drag the RailCommand icon out if you want it always visible.

Safety Notes

  • Do not bypass disabled actions.
  • If layout switching is blocked, follow the reason shown by the app.
  • If movement is unexpected or uncertain, use emergency stop.
  • Do not assume the browser, cloud, or desktop UI alone is the physical-hardware authority.

Next Steps