SkillAgentSearch skills...

Railessentials

RailEssentials is a software for controlling your Model Trains especially when ESU's ECoS 50210/50200 is used. RailEssentials provides a Track-designer, an Analyzer for automatic detection of all possible Routes between directly connected Blocks, and an Event-system (e.g. by use of S88-Feedback-Bus) for setup a fully automatic drive of all your trains. Furthermore, any Train can be manually controlled, their functions are allowed to be switched directly on and off by the user interface.

Install / Use

/learn @cbries/Railessentials
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

RailEssentials - MIT License

Build and UnitTests Deploy Nightly

License: MIT

<a href="https://www.buymeacoffee.com/cbries" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a>

~~RailwayEssentials~~ is renamed to RailEssentials.

RailEssentials is a modern and intuitive software for creating and controling model railways. Currently, the only supported control unit is ESU's ECoS 50210/50200. The software is based on a client-server architecture, i.e the server is the brain and bridge between the control unit and any conntected webclient. The server is written in C# and .NET Framework and the client is written in JavaScript/TypeScript and can be used in Chrome, Firefox, and Vivaldi.

Table of Contents

<br>

Demonstration of RailEssentials (i.e. YouTube video, no sound)

I have created a small video of my modelrailway in my basement to demonstrate that RailEssentials just work. Just click the preview to jump directly to YouTube.

RailEssentials - Live demonstration with real hardware in my basement.

Tutorial: Welcome / First Steps

For making your first steps easier with RailEssentials, a welcome tutorial has been provided.

It is part of the Wiki Page

<br>

Daily/Nightly Builds

Setup/Installer

RailEssentials is automatically build everyday. During this build an always up-to-date Setup/Installer is generated and can be used to deploy the latest features on your personal computer. Currently, only Windows is supported, for other operating system the source must be used and build. The latest setup/installer is provided under the Releasetab: Daily Setup

  • download the Setup of your choice (e.g. Setup-20210322-4d9eb4.exe, where 20210322 stands for 22nd March 2021)
  • doubleblick the Setup and follow the instructions

Setup Screen Capture

Portable Zip-Archives

RailEssentials is automatically build everyday. The always latest version is provided under the Release tab: Daily Build

  • download the archive railessentials-dailybuild-*.zip
  • after unzip just call the included script startRailEssentials.bat

As default the workspace Basement is loaded and provided and can be used directly in simulation mode.

![Locomotives2]

<br>

Releases

We do not provide any official releases yet, because the software is still under development, but we provide a Daily Build. In January'21 the RailEssentials team decided to do a full rewrite. To use this software, checkout the source, and just click "Build and Run (F5)" in VisualStudio.

<br>

Contribute

Quick Start for Developer

  • install VisualStudio 2019 or the old variant VisualStudio 2017
  • clone the RailEssentials repository git clone https://github.com/cbries/railessentials.git or download the latest archive master.zip
  • open the solution railessentials.sln
  • set railessentials as Startup Project
  • click F5 or call VisualStudio Toolbar / Debug / Start Debugging

As a result the software will build and all relevant files are copied to the Output Directory, in general this is railessentials \ bin \ Debug|Release. railessentials.exe will be executed, a command prompt opens and shows some status information. If not browser opens automatially, go to your browser and open http://localhost:8081/?workspace=Basement.

Finally, you should see something like this: firstImpressionsAfterBuild

System Requirements

  • Windows 10
  • .NET Framework 4.8 or higher
  • Chrome, Firefox or Vivaldi

Bug Tracking

Have a bug or a feature request? Please open an issue here https://github.com/cbries/railessentials/issues. Please make sure that the same issue was not previously submitted by someone else.

Third-Party Components at Their Best

  • w2ui JavaScript UI Library for the Modern Web
  • WebSocket4Net A popular .NET WebSocket Client
  • SuperSocket SuperSocket is a light weight extensible socket application framework.
  • Newtonsoft Popular high-performance JSON framework for .NET
  • jQuery jQuery is a fast, small, and feature-rich JavaScript library.
  • jQuery colorpicker A full-featured colorpicker for jQueryUI with full theming support.
  • jQuery Boxfit Boxfit is a jQuery plugin for resizing text.
  • Contextual.js Javascript contextual menu library
  • select2 Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
  • FontAwesome Get vector icons and social logos on your website with Font Awesome, the web's most popular icon set and toolkit.
  • emgucv A cross platform .Net wrapper for the Open CV image-processing library.
<br>

Book

In the late of 2018 I wrote a book about programming the ESU's ECoS 50210.

Book

  • ISBN: 978-1-790-36403-9
  • ASIN (Kindle): B07L4Z4MYL

The book introduces the basics of managing commands for remote control of your model railway by use of C# and .NET Framework/.net Core. The included examples and API information are all used in ecos, a software library hosted on GitHub which is completly used by RailEssentials (with few improvements and bug fixes). The source is completly merged into RailEssentials, i.e. check out the subdirectory ecoslibNet48.

<br>

Features

Ui

  • Modern Web Frontend based on HTML5, JavaScript, Websocket-Communication
  • Frontend UI usable with Chrome, Firefox, Vivaldi, Edge on any device
  • Server-based architecture (currently the server is only running on Windows)
  • WebCam/Video support included by default for monitoring hidden yards (i.e. includes stream server and web viewer) Wiki
  • Import of Rocrail plans Wiki
  • Workspace support, to switch between different plan at any time
  • Track Designer based on modern web technology
  • Toolbox-support with drag&drop
  • Plan Item transformation directly by single clicks (i.e. move, rotate, remove)
  • Text Item support (i.e. bold, italic, underline, font size, font color)
  • Labels for Plan Items
  • Accessory can be changed directly by clicking the individual plan item at any time
  • Output/Button grouping Wiki
  • Report for Locomotives, Accessories, and Sensors Wiki, Issue #9

Routing

  • Block-based automatic mode, any train/locomotive can be controlled by a smart algorithmen and can travel between blocks without crossing routes
  • Accessory state change during AutoMode for individual routes Wiki
  • Route detection between blocks, any feasible route will be found and provided for your individual setup
  • Routes with direction are recognized
  • Route disabling/enabling on-demand
  • Block disabling/enabling on-demand

Feedback

  • S88 Viewer

Locomotives

  • Locomotive lock/unlock
  • Locomotive direct control via mouse over controls in the plan
  • Locomotive speed curve editor (i.e. individual acceleration/deceleration)
  • Locomotive image visualization [Wiki](https://gi

Related Skills

View on GitHub
GitHub Stars22
CategoryProduct
Updated6mo ago
Forks9

Languages

JavaScript

Security Score

87/100

Audited on Sep 16, 2025

No findings