Skip to main content
DEJA.jsDEJA.js

Simple to start. Built to grow.
The cloud platform for DCC-EX.

DEJA.js connects your DCC-EXDCC-EX EX-CommandStation to every phone, tablet, and laptop in the room. Throttle, manage, and automate your layout from any browser — no app store required.

Web app · iOS & Android coming soon · No app store required

You tap

Throttle app — slide to control speed

Server routes

deja — tamarack

$

✓ Ready

← throttle {addr:3, speed:50}

<t 3 50 1>

DCC-EX Translates

DCC-EX EX-CommandStation — Arduino Mega with Motor ShieldDCC-EX

Train moves

Scroll
Quick Start

Running trains in three steps.

01

Sign Up

Create your free DEJA Cloud account. Choose a plan that fits your layout. Your roster, settings, and layout data sync instantly across every device.

Sign Up
03

Run

Open the Throttle app on any device — phone, tablet, or desktop. Scan the QR code to launch it instantly on your phone.

Scan to open on phone

See It In Action

Watch the 2-minute quickstart

DEJA.js — Getting Started

$ curl -fsSL https://install.dejajs.com | bash

Downloading DEJA Server v1.2.0...

Installing dependencies...

✓ DEJA Server v1.2.0 installed

→ Starting server...

✓ Server running on ws://localhost:8082

✓ EX-CommandStation connected on /dev/ttyUSB0

ℹ Signed in · Layout: Pittsburg & Shasta 1:87

Video coming soon

Check back shortly

~2 min
DEJA.jsThrottle App

DEJA Throttle

Precision locomotive control.

Precise speed control, function mapping, EZ Consist, and CV programming — from any browser. No app store, no install. Add it to your homescreen and open it with a tap.

  • 🎚️Speed & Direction Smooth 0–126 step control with momentary and toggle functions
  • 🚂EZ Consist Build multi-loco consists with independent function control per unit
  • ⚙️CV Programming Read and write decoder CVs directly from the Throttle app
  • 🗂️Roster Snap a photo and AI fills in the roster entry — addresses, names, road numbers, and function mapping
  • 🚦Track Diagrams Turnouts, routes, and signals — all automated from a clickable track map
  • 🎆Effects, WLED & Sounds Toggle lights and relays, activate WLED scenes, and play your sound library from any device
  • Accessible by Design Large, chonky touch targets and four throttle styles to match how you operate.Buttons · Slider · Dashboard · Proto
📱

Web App — works on any device

Open throttle.dejajs.com in Safari or Chrome and tap "Add to Homescreen". Full-screen, no browser chrome.

DEJA Throttle — locomotive control
DEJA Throttle — mobile home

📱

More screens
coming soon

Server + CLI

One command. Everything connects.

The DEJA Server is a lightweight Node.js process that bridges your DCC-EX EX-CommandStation to the cloud. Install it once, start it with a single command, and your entire layout — throttles, turnouts, signals, effects — is live.

  • 🔌USB serial bridge to DCC-EX EX-CommandStation at 115,200 baud
  • 📡MQTT broker for IO devices, WebSocket server for real-time browser sync
  • ☁️DEJA Cloud sync — layout commands flow from cloud to track instantly
  • 🕹️WiThrottle server — ProtoThrottle, Engine Driver, ThrottleCard, and JMRI-style throttles connect directly
  • 🔄Self-updating via deja update — always on the latest version
macOSLinuxRaspberry Pi

install

bash
$ curl -fsSL https://install.dejajs.com | bash
Downloading DEJA Server v1.2.0...
Installing dependencies...
DEJA Server v1.2.0 installed
Starting server...
Server running on ws://localhost:8082
EX-CommandStation connected on /dev/ttyUSB0
Signed in · Layout: Pittsburg & Shasta 1:87

deja cli

deja
$ deja start # Start the server
$ deja stop # Stop the server
$ deja restart # Restart the server
$ deja update # Update to latest version
$ deja status # Check server health
$ deja logs # Stream server logs
$ deja init # Re-initialize layout
DEJA.jsCloud App

DEJA Cloud

Command central for your layout.

Configure your roster, wire up turnouts and signals, manage devices and connections, and control your layout from anywhere. Connects via USB, WebSocket, or MQTT — including DEJA IO devices.

  • 🗂️Roster Management Add locos with addresses, names, road numbers, and photos — or snap a photo and let AI fill in the details and function mapping
  • 🔌Device & Connection Management Connect via USB, WebSocket, or MQTT — configure DEJA IO devices or use custom integrations
  • 🔀Turnouts & Routes Map physical turnouts and build automated route sequences
  • 🚦Signals Configure signal heads and assign them to track blocks
  • 🎆Effects, WLED & Sounds Toggle lights and relays, activate WLED scenes, and play your sound library from any device
  • 🖥️DCC Console Send raw DCC-EX commands and view live serial output
☁️

Instant sync across all devices

Change a setting on your desktop — it instantly updates on your phone, tablet, and every connected device.

DEJA Cloud roster view
AI-assisted locomotive enrichment
DEJA IO

Expand your layout. On your terms.

DEJA IO lets you connect common devices — Arduino, Raspberry Pi Pico W, ESP32, or your own custom build — communicating over any supported protocol to expand what your layout can do.

Protocols

MQTTUSB SerialWebSocketWiThrottle

DCC-EX Track Modes

🚂DCC Main⚙️ProgrammingDC / PWM📡Booster

Hardware Devices

🚂

EX-CommandStation

USB Serial

The DCC-EX hardware that drives your track. Connects to the DEJA Server over USB at 115,200 baud.

🔌

Arduino Mega

USB Serial

Connect via USB to DEJA Server for pin-level control of outputs, sensors, and signal heads. WiFi support coming soon.

📡

ESP32

USB SerialMQTT

Connect via USB, or go WiFi-native over MQTT for pin-level control without a cable. WebSocket support coming soon.

📶

Raspberry Pi Pico W

MQTT

WiFi-native CircuitPython device. Connects over your network via MQTT — no USB cable required. WebSocket support coming soon.

💡

WLED

WiFi

Register any WLED controller as a device and trigger its scenes from Throttle, Cloud, or Tour.

Expansion Capabilities

Lights
Sounds
Servos
Sensors
Relays
Signals
Turnouts
Outputs
Platform

Built for the way you operate.

🤖

AI Roster Enrichment

Snap a photo — AI fills in your roster entry, function mapping and all. Review and accept field-by-field.

☁️

Cloud Sync

Roster, turnouts, and settings sync instantly across all devices through DEJA Cloud.

📱

Any Device

Web app works on phone, tablet, and desktop. PWA install — no app store.

🔒

Private Platform

Subscription-gated access. Your layout data is yours — secured end-to-end by DEJA.js.

Real-Time

Commands reach your track in under 100ms via WebSocket + serial bridge.

🔧

DCC-EX Native

Built specifically for DCC-EX. Full protocol support — not a general-purpose tool.

🎮

WiThrottle Compatible

Built-in WiThrottle server replaces JMRI for that role. Engine Driver, ThrottleCard, ProtoThrottle, and other WiThrottle clients connect directly — including ThrottleCard’s Apple Watch and game-controller support.

🎆

Effects, WLED & Sounds

Toggle lights and relays, activate WLED scenes, and play your sound library from any device on your network.

📡

MQTT Ready

Optional MQTT broker integration for advanced automation and sensor inputs.

🗺️

Track Diagrams

Drag-and-drop schematic editor — turnouts, routes, and signals, all automated from a clickable track map.

🔀

Multi-Track

Support for Main, Programming, DC/PWM, and Booster modes on separate EX-CommandStations.

🚦

Signal Control

Configure signal heads with full aspect control tied to block occupancy.

Coming Soon
📱 iOS Native App🤖 Android Native App🗺️ Layout Map Editor🎬 Automated Sequences📊 Operations Mode🔔 Push Notifications🔗 Multi-layout Support📱 iOS Native App🤖 Android Native App🗺️ Layout Map Editor🎬 Automated Sequences📊 Operations Mode🔔 Push Notifications🔗 Multi-layout Support
FAQ

Common questions.

Support

Help when you need it.

From community forums to hands-on consulting — we've got you covered.

Community (Discord)

Ask questions, share layouts, and connect with other DEJA.js users. Free for all.

Join Discord →

AI Chat Support

Coming Soon

Get instant answers about setup, configuration, and troubleshooting from our AI assistant.

Support Tickets

Paid plans include support tickets with a guaranteed response time. Priority handling for Engineer and Conductor.

View Plans →

Consulting Services

Per-incident help, prepaid hours, or direct consultation with Track and Trestle Technology for complex layouts and custom integrations.

Get in Touch →
DEJA.jsDEJA.js

Ready to run trains?

Sign up free — you'll be driving in minutes.

No credit card required for free tier · Cancel anytime

DEJA.js is developed by Track and Trestle Technology, LLC

We offer consulting services for DEJA.js projects — big or small. Get in touch →