Generic Safety Logic for MRBus-based interlockings

This page is about the development of a generic Safety Logic, that processes configuration read at runtime. This means that the firmware in the controller is standard, uniform and generic; configuration of the interlocking is done with personal computer GUI tools, producing an output file that can be loaded into the controller.

The content is to be filled as I make progress. Any hint, help, idea or whatsoever is appreciated.

Functional requirements:

  • fully dynamic/runtime configuration
  • hardware connections are user-selectable
  • support for items directly connected to the controller, or remotely via TWI/I2C
  • automatic mode must be included (for automated interlockings)
  • manual mode must be available
  • suitable for any type of American signal system (GCOR, NORAC, CROR, searchlights, tri-lights, PRR position signals, CPL, ...)