rsmp-nordic / rsmp_core

RSMP core specification
MIT License
6 stars 1 forks source link

RSMP core specification

RSMP is a open, modern and flexible communication protocol primarily suited for communication between road side equipment and supervision systems.

RSMP uses signal exchange lists (SXL) to define the message exchange, e.g. alarms, status and commands to be used for a specific road side equipment. Please see the specification for more in-depth technical information

The following branch defines RSMP version 3.2.2.

The specification is available the following formats:

Wiki

Please see the RSMP Core Wiki for best practices and frequently asked questions.

Generating the specification from source

Requirements:

On Ubuntu:

# apt-get install python3-sphinx texlive texlive-latex-extra \
  texlive-humanities texlive-fonts-extra mscgen imagemagick \
  librsvg2-bin latexmk graphviz python3-sphinx-rtd-theme

On MacOS:

  1. Download MacTeX and install from http://www.tug.org/mactex
  2. Install Homebrew
  3. Install Python3 using homebrew
  4. Install Sphinx
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install sphinx sphinx_rtd_thenme
  1. Install Graphwiz using homebrew

    brew install gts
    brew install graphwiz
  2. Install mscgen

curl -O http://www.mcternan.me.uk/mscgen/software/mscgen-src-0.20.tar.gz
tar xfz mscgen-src-0.20.tar.gz 
cd mscgen-0.20/
./configure
make
make check
sudo make install

Then:

make latexpdf # For generating pdf
make html # For generating a hierarchy of html pages
make singlehtml # For generating a single html page