Rocrail

Last updated
Rocrail
Original author(s) Robert Jan Versluis
Developer(s) Rocrail team
Stable release
4578 / 12-05-2024
Written in C++ for the server
wxWidgets for rocview
Operating system Linux

Windows
macOS

Raspberry Pi OS
License Proprietary software
Website wiki.rocrail.net

Rocrail is a freeware software package [1] for controlling a model train layout from one or more computers. Users can run trains directly from a computer, or have some run automatically with manual control for any others.

Contents

Architecture

Rocrail uses a client-server architecture that communicates via TCP/IP, and the client and server do not need to be on the same computer. Rocrail can be used from a single computer connected directly to the layout, or via any other computer on a home network, or over the Internet. Rocrail also has an HTTP interface, which will let the layout run from a web browser. An Android app is available.

The server program runs on a computer connected to the layout by one of the standard computer interface setups, and supports many command stations.

The Rocrail client connects to the server over a network. The client can also be used by itself to plan layouts. There is no need for the server or the layout to be running to edit plans. Plans can be uploaded to the server after creation.

Rocrail runs under both the Windows and Linux operating systems, using the Wxwidgets toolkit. [2]

A partial list of supported command stations and protocols

Features

Users

Many users have already registered themselves at the Rocrail Forum. Some of them are actively translating the Wiki into their own language. Others are developing open-source hardware to contribute to the project.

Open source

Rocrail was released under GPL v3, but during September 2015, its license was changed to a proprietary model. [3] [4]

Related Research Articles

<span class="mw-page-title-main">X Window System</span> Windowing system for bitmap displays on UNIX-like systems

The X Window System is a windowing system for bitmap displays, common on Unix-like operating systems.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

wxWidgets Widget toolkit

wxWidgets is a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with minimal or no code changes. A wide choice of compilers and other tools to use with wxWidgets facilitates development of sophisticated applications. wxWidgets supports a comprehensive range of popular operating systems and graphical libraries, both proprietary and free, and is widely deployed in prominent organizations.

Zero-configuration networking (zeroconf) is a set of technologies that automatically creates a usable computer network based on the Internet Protocol Suite (TCP/IP) when computers or network peripherals are interconnected. It does not require manual operator intervention or special configuration servers. Without zeroconf, a network administrator must set up network services, such as Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS), or configure each computer's network settings manually.

aMule

aMule is a free peer-to-peer file sharing utility that works with the eDonkey network and the Kad network, offering similar features to eMule and adding others such as GeoIP. On August 18, 2003 it was forked from the xMule source code, which itself is a fork of the lMule project, which was the first attempt to bring the eMule client to Linux. These projects were discontinued and aMule is the resulting project, though aMule has less and less resemblance to the client that sired it.

<span class="mw-page-title-main">Pegasus Mail</span> Proprietary email client

Pegasus Mail is a proprietary email client for Microsoft Windows. It was originally released in 1990 on NetWare networks with MS-DOS and later Apple Macintosh clients, before being ported to Windows which is now the only platform actively supported. Since its inception it has been developed by David Harris and is donationware after having previously been freeware.

<span class="mw-page-title-main">UEFI</span> Operating system and firmware specification

Unified Extensible Firmware Interface is a specification that defines the architecture of the platform firmware used for booting the computer hardware and its interface for interaction with the operating system. Examples of firmware that implement the specification are AMI Aptio, Phoenix SecureCore, TianoCore EDK II, InsydeH2O. UEFI replaces the BIOS which was present in the boot ROM of all personal computers that are IBM PC compatible, although it can provide backwards compatibility with the BIOS using CSM booting. Intel developed the original Extensible Firmware Interface (EFI) specification. Some of the EFI's practices and data formats mirror those of Microsoft Windows. In 2005, UEFI deprecated EFI 1.10.

<span class="mw-page-title-main">MythTV</span> Free and open source home entertainment application

MythTV is a free and open-source home entertainment application with a simplified "10-foot user interface" design for the living room TV. It turns a computer with the necessary hardware into a network streaming digital video recorder, a digital multimedia home entertainment system, or home theater personal computer. It can be considered a free and open-source alternative to TiVo or Windows Media Center. It runs on various operating systems, primarily Linux, macOS, and FreeBSD.

<span class="mw-page-title-main">FileZilla</span> Free software, cross-platform file transfer protocol application

FileZilla is a free and open-source, cross-platform FTP application, consisting of FileZilla Client and FileZilla Server. Clients are available for Windows, Linux, and macOS. Both server and client support FTP and FTPS, while the client can in addition connect to SFTP servers. FileZilla's source code is hosted on SourceForge.

In computing, the X Window System is a network-transparent windowing system for bitmap displays. This article details the protocols and technical structure of X11.

Distributed File System (DFS) is a set of client and server services that allow an organization using Microsoft Windows servers to organize many distributed SMB file shares into a distributed file system. DFS has two components to its service: Location transparency and Redundancy. Together, these components enable data availability in the case of failure or heavy load by allowing shares in multiple different locations to be logically grouped under one folder, the "DFS root".

Music Player Daemon (MPD) is a free and open source music player server. It plays audio files, organizes playlists and maintains a music database. In order to interact with it, a client program is needed. The MPD distribution includes mpc, a simple command line client.

<span class="mw-page-title-main">Logitech Media Server</span> Open-source streaming audio server

Lyrion Music Server is a streaming audio server supported by the LMS community and formerly supported by Logitech, developed in particular to support their Squeezebox range of digital audio receivers.

<span class="mw-page-title-main">Buffalo network-attached storage series</span>

The Buffalo TeraStation network-attached storage series are network-attached storage devices.

A home server is a computing server located in a private computing residence providing services to other devices inside or outside the household through a home network or the Internet. Such services may include file and printer serving, media center serving, home automation control, web serving, web caching, file sharing and synchronization, video surveillance and digital video recorder, calendar and contact sharing and synchronization, account authentication, and backup services. In the recent times, it has become very common to run literally hundreds of applications as containers, isolated from the host operating system.

Digital model railway control systems are an alternative to control a layout and simplify the wiring and add more flexibility in operations. A number of control systems are available to operate locomotives on model railways. Analog systems where the speed and the direction of a train is controlled by adjusting the voltage on the track are still popular while they have recently given way to control systems based on computer technology.

VRPN is a device-independent, network-based interface for accessing virtual reality peripherals in VR applications. It was originally designed and implemented by Russell M. Taylor II at the Department of Computer Science of the University of North Carolina at Chapel Hill. VRPN was maintained and supported by Sensics while it was business. It is currently maintained by ReliaSolve and developed in collaboration with a productive community of contributors. It is described more fully at vrpn.net and in VRPN-VRST.

The following outline is provided as an overview of and topical guide to the Perl programming language:

References

  1. wiki.rocrail.net, license statement
  2. "wxWebView and Windows - wxWidgets Discussion Forum". forums.wxwidgets.org. Retrieved 2024-05-11.
  3. German Rocrail Forum, Discussion of source code access
  4. reddit.com "RocRail going closed source?"