Runs on the computer you already have.
Any Mac, Windows PC, Linux box or Raspberry Pi near your layout will do. It just needs to reach your EX-CommandStation with a USB cable.
- Mac
- Intel or Apple Silicon
- Windows
- Windows 10 (1809+) or 11, x64 or ARM64
- Linux
- x86_64 or arm64
- Raspberry Pi
- Pi 4 or 5 with a 64-bit OS
Works with
- Your EX-CommandStation
- Any DCC-EX EX-CommandStation on USB. The server talks to it at 115200 baud.
- Throttle, in any browser
- Phones, tablets and laptops reach your server through DEJA Cloud — no port forwarding.
- WiThrottle apps
- Engine Driver and ProtoThrottle find the built-in WiThrottle server on your network (port 12090).
- DEJA IO boards
- Arduino, ESP32 and Pico W over USB, or WiFi through the built-in MQTT broker. The firmware comes with DEJA — configure and deploy it from Throttle, no code to write.
Up and running in six steps.
You'll need a free DEJA account — sign up first if you haven't.
Step 1: Install it — one line
Open a terminal on the computer by your layout and paste the line for your system.
Mac, Linux or Raspberry Pi
curl -fsSL https://install.dejadcc.com | bashWindows (PowerShell)
irm https://install.dejadcc.com/install.ps1 | iexIt takes a couple of minutes and installs everything into one folder in your home directory (~/.deja). The download is checked before it's installed.
Node.js 20 or newer is the one thing the server needs. On Windows the installer sets it up for you; on a Mac, Linux or a Pi it checks and tells you exactly how to get it if it's missing.
Step 2: Connect your account
Link this computer to your DEJA account and pick which layout it runs:
deja loginA code appears and your browser opens Connect your server. Check the code, choose your layout, and tap Authorize. That's it — the terminal says you're logged in.
No screen on your Pi? Over SSH the browser can't open, so the link is printed instead — open it on your phone or laptop. On Windows, the installer runs this step for you.
Step 3: Start the server
deja startThe server starts and its console opens: the log scrolls above, and you type commands at the prompt below. Type help any time. Want your terminal back? Run it in the background instead:
deja start -bCheck on it with deja status or deja logs -f.
Step 4: Pick your EX-CommandStation’s port — once
The server finds every USB port on the computer. Tell it which one is your EX-CommandStation: in Throttle, open Devices, choose the port for your EX-CommandStation and turn on Auto Connect. From then on it connects every time the server starts.
Prefer the terminal? In the console, type devices, pick the EX-CommandStation and press p to choose its port.
Bumped the cable? If the USB link drops, the server keeps retrying in the background and reconnects on its own when you plug it back in.
Step 5: Drive
Open Throttle on any phone, tablet or laptop and drive — your server is already linked. Engine Driver and ProtoThrottle find it on your network too.
Step 6: Keep it up to date
deja updateDownloads the latest version, checks it, and installs it. Your settings and layout stay put, and if the server was running it comes straight back. Updates only happen when you run this — never on their own.
Day to day
The whole command line fits on one screen.
deja start- Start the server and open its console. Add -b to run it in the background.
deja stop- Stop the server.
deja restart- Stop, then start again.
deja status- Version, running or stopped, your account and layout, serial ports, log size.
deja logs -f- Follow the log. Use -n 200 for more lines.
deja resume- Wake a background server from standby.
deja update- Download, verify and install the latest version. Your settings stay put.
deja login- Link this computer to your DEJA account and layout.
deja config- Walk through settings — or config get / config set a single key.
deja devices- List your layout’s devices.
deja deploy- Flash firmware to an IO board.
deja help- Every command, with examples.
Inside the console
Type a command and press ↵. Full names work as they are; short forms take a slash — /r restarts, /q stops.
Every line: time · source · device · what happened. → is a command going out to the EX-CommandStation, ← its reply.
Server
restart- Restart — the console stays open
stop- Stop the server and leave (also quit, exit)
status- Status, devices and throttles
resume- Wake up from standby
Devices
devices- Pick a device: ↵ connect · p port · f flash
connect / disconnect- Connect or drop one device
deploy- Flash firmware
DCC-EX
<1>- Anything in angle brackets goes straight to the EX-CommandStation
dcc- The DCC-EX command reference
Logs & more
filter error- Show only errors (or warn, or all)
recent · errors- Reprint recent lines, or the last 20 errors
export- Save this session’s log
room- Show the Room Code full screen
settings- Change settings without leaving
Keys
- TabComplete a command
- ↑ ↓Move through suggestions and history
- EscClear the line
- Ctrl+C twiceStop the server (the first press just warns you)
Standby keeps an idle layout safe. After 30 quiet minutes (change that, or turn it off, in deja config) the server gives a minute's warning, then stops every train, cuts track power and pauses cloud sync. Type resume in the console, or run deja resume, to wake it — track power stays off until you turn it back on.
If something's not right
The server can’t reach my EX-CommandStation
1. Check the USB cable is firmly in at both ends.
2. Make sure the right port is chosen: Throttle → Devices, or devices then p in the console. deja status lists every serial port the computer can see.
3. Turn on Auto Connect so it connects whenever the server starts.
Permission denied on the serial port (Linux or Raspberry Pi)
Your user needs access to serial devices. Run this once, then log out and back in:
sudo usermod -a -G dialout $USERThe server won’t start
1. It says No layout configured? Run deja login and pick your layout.
2. Check Node.js is 20 or newer: node --version. (The Windows installer sets it up for you.)
3. Look at what happened with deja logs.
Start fresh
Run the install line again — it reinstalls in place and keeps your settings.
curl -fsSL https://install.dejadcc.com | bashirm https://install.dejadcc.com/install.ps1 | iex