The CANService is a small application which acts like a bridge between UDP/TCP and CAN.
It provides the same UDP ports as the Märklin CS2/CS3, 15730/15731, and TCP default port 15731 for communicating with a PC.
The TCP port 5550 is for use with RCAN. The linefeed option is required.
The TCP port 15731 can be used in combination with the binary option.
The TCP port 15731 can also be for used for BiDiB, if the command line option
-usb is set.
The default USB device is
Rocrail must be set to BiDiB type TCP with port 15731. The hostname is the IP or name of the RPi.
An unused Raspberry Pi 1, 2 or 3 can be used as USB-TCP bridge.
Command line options:
The TCP/IP can only handle one client.
If there is need for multiple connections, this can be extended.
The CANService application is installed in the /opt/rocrail directory, and is included in all provided rocrail*.deb packages.
See: Raspberry Pi Setup
Set the CAN bit rate according to the target CAN:
|MBUS (CS2, CS3, GleisBox)||250000|
There are no settings to configure, just run it in user context.
To run it automatically after every boot, it can be setup like the Rocrail Server.
#/bin/bash cd /home/pi /opt/rocrail/canservice.sh <options>
Make the script executable:
chmod +x /home/pi/canservice.sh
Add it to the crontab with the command