jsrcpd Homepage
Introduction
jsrcpd means "java simple railroad command protocol daemon".
SRCP is a TCP-based Internet protocol for controlling and programming
(digital) model railroads. It is a part of the DER_MOBA Digitalprojekt
http://wwww.der-moba.de (a website derived
from the newsgroup de.rec.modelle.bahn).
The definition can be found at
http://srcpd.sourceforge.net/srcp.
This software is designed as a reference implementation of the SRCP
0.8.1. It has to be considered as "experimental".
Description
The package written in Java is a communication protocol handler and
a device processor. The processor is designed mainly for testing the protocol
handling. The architecture allows to replace it with a real software-CPU
or CPU-serial-line interface in the future.
What does the jsrcpd currently do?
Server jsrcpd-translator:
- parse for correct SRCP command syntax
- support SRCP handshake mode, command mode and info mode.
- accept SERVER, SESSION, GA, POWER, FB, DESCRIPTION commands
- store values and status (SET,CHECK,GET,INIT,TERM,RESET) in a database
- simulates a polled feedback bus (like S88) with values from a
database, supports the commands INIT,TERM, GET and WAIT
- forwards SET commands for generic accessory devices and POWER
ON|OFF commands to a SRCP 0.7 server. This feature can be turned off.
Also included is a basic client implementation for testing the server:
- commandset: RESET SERVER, SET/GET GA,
- device group POWER: whole commandset
- lowlevel validation: fragmented commands, fragmented handshake, oversized
commands, commands will NULL-bytes
Required Software
- a make utility
- JDK 1.3 (tested with Java 2 Runtime Environment build 1.3.0, IBM
on Linux 2.4.17 i686)
- Any MySQL server supporting version 9 or 10 of the MySQL protocol
- MM.MySQL 2.0 Mark Matthews JDBC Driver for MySQL
- a SRCP 0.7 server like DDL, see
http://www.vogt-it.com/OpenSource/DDL (optional)
Download
Please go to the
srcpd project
page for getting a downloadable package.
API Documentation
jsprcd is desgined to serve as a framework for implementing SRCP servers
and SRCP clients. The related
API Documentation
is also available on this site.
created: 2002-01-20 by
Olaf Schlachter
updated: 2002-01-30