Your company here — click to reach over 10,000 unique daily visitors

srcpd - Man Page

SRCP speaking daemon


srcpd [ options ]


This is not a complete manual. You have to consult the project home page at http://srcpd.sourceforge.net/ for full documentation!

srcpd is a UNIX daemon speaking the Simple Railroad Command Protocol (SRCP).

Upon start up it reads in the system wide configuration file named srcpd.conf. Contents and structure of this XML-file is explained in detail in the srcpd.conf (5) man page. The SRCP specification is published on http://srcpd.sourceforge.net/srcp.



Prints some useful help about command line options and exit


Do not daemonize upon start-up. The srcpd does not switch into background mode. This option can be used with the Ubuntu upstart system.


Print program version, SRCP level and exit

-f <filename>

Use the specified filename as the configuration file. The default value will be defined at compile time and can be displayed using the -h parameter.


Getting started

The srcpd system service (daemon) is compliant to the Filesystem Hierarchy Standard (FHS, http://www.pathname.com/fhs/). For more information and special options about daemon usage please refer to to your system documentation. The following instructions are on a general level of information.


Please first start assembling a configuration file (srcpd.conf) fitting exactly your needs to connect to your model railway controller interface. Save this file to the directory for host specific system configuration (/etc). The default configuration file delivered with this software must be replaced by the new one.

As soon as the adapted configuration file is at the right place, the daemon can be started using this command:

/etc/init.d/srcpd start

If the srcpd is already running, the daemon first must be stopped to get it aware of the new setup. Stopping the daemon is executed in analogy to the start command:

/etc/init.d/srcpd stop

Under certain conditions it is also possible to get the daemon re-read its configuration file without stopping it. With respect to hardware access rules under UNIXlike systems, the group and/or user rights must be properly set in srcpd.conf to let the daemon access the appropriate hardware resources at any time.

Common model railway interfaces will require access rights for serial lines (RS232, USB), which can be achieved using the proper group rights (e.g. dialout). The ddl-s88 module uses a special system function (ioperm) which always needs root rights to perform successfully. The ioperm() function is typically only available on x86 and x86-64 hardware. So if you are using other hardware and get an error about missing sys/io.h while compiling srcpd source code, just disable the ddl-s88 module. Refer to ./configure --help for more details about how to disable special srcpd modules.

To let srcpd re-read its configuration file, assumed the setup mentioned before is correct, the following command can be used:

/etc/init.d/srcpd reload

The log file /var/log/messages or /var/log/syslog of the syslog daemon can be used to monitor occurring errors on daemon start or during current operation.  With root rights the upcoming messages can be continuously watched in a separate terminal:

tail -f /var/log/messages


tail -f /var/log/syslog

The verbosity of these messages can be adjusted using the configuration file srcpd.conf. For more information refer to the adequate man page.

See Also

srcpd.conf (5)


Possibly there are some bugs. Please report them to the project developer mailing list.


This man page was written by Matthias Trute (mtrute@users.sourceforge.net), Frank Schmischke (schmischi@users.sourceforge.net) and Guido Scholz (gscholz@users.sourceforge.net).


GNU General Public License, Version 2

Referenced By

spdrs60(1), srcpd.conf(5).

December 19, 2009