Skip to content
Displays local Transport for Germany, NRW (VRR). Module for MagicMirror
JavaScript CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
translations redone commits with correct git profile May 20, 2018
.eslintrc.json initial release May 7, 2017
.gitignore initial release May 7, 2017
.stylelintrc initial release May 7, 2017
Gruntfile.js initial release May 7, 2017
MMM-Vrr.css redone commits with correct git profile May 20, 2018
MMM-Vrr.js removed notification spam to avoid large logfile Jul 20, 2018 markdown fix Jul 21, 2018
mmm-vrr-table.png redone commits with correct git profile May 20, 2018
node_helper.js initial release May 7, 2017
package.json added git repository, formatted and changed readme May 9, 2017
scrollAfter.gif better gif and formatting Jun 4, 2017

MMM-Vrr and more Areas

This is a module for the MagicMirror².

Displays the next departure times of Trains, subway and Buses from any city and station in the german federal state North Rhine-Westphalia (VRR).

This module was intended for VRR, but it also supports the following Areas.

displayType detail    displayType digital


  1. Navigate into your MagicMirror's modules folder.
  2. Execute git clone
  3. Execute cd MMM-Vrr.
  4. Execute npm install.

Using the module

To use this module, add the following configuration block to the modules array in the config/config.js file:

    module: 'MMM-Vrr',
    position: "top_right",
    config: {
        city: 'Düsseldorf',
        station: 'Hauptbahnhof',
        numberOfResults: 10,
        displayTimeOption: 'countdown',
        displayType: 'detail'

Configuration options

Option Description Options
city Required German City Name

Type: String (default: Düsseldorf)
Any City Name in North Rhine-Westphalia
station Required German Station Name

Type: String (default: Hauptbahnhof)
Any Station Name in North Rhine-Westphalia
numberOfResults Optional Number of results to be displayed

Type: Int (default: 10)
displayType Optional Changes the display type

Type: String (default: 'detail')
'detail', 'lcd'
displayIcons Optional Display fontawsome icons

Type: boolean (default: true)
updateInterval Optional Sets the Update Interval int

Type: int(milliseconds)
Default 60000 milliseconds (1 minute)
* (API result is always cached for 1 Min)
displayTimeOption Optional Changes the type of time

Type: String (default: 'countdown')
'time', 'time+countdown', 'countdown'
setWidth Optional Sets the width of the module in pixel

Type: int (default: false)
Any posible size like: 450
lcdWidth Optional Sets the width of the lcd display type

Type: int (default: 450)
any possible size
scrollAfter Optional Scrolls the destination text after the specified characters

Type: int (default: false)
any possible size or false

Supported Languages

Currently only de and en is supported. Gets the Value from the Global Magic Mirror language config.

"LCD" Display

This option can be set if displayType: 'lcd' is added. In this type are no delays, icons or abosulte time shown.

Visualization of the scrollAfter option

If you set scrollAfter:15, the text will be scrolled horizontally if it has 15 or more characters.

Auto scroll

EFA Support for other Areas

Please keep in mind, that everything besides VRR is not full supported.

Possible Side effects for not VRR Areas:

  • Icons don't match correctly
  • not all configured transport types hide correctly

Partly supported Areas:

  • BSVG
  • DING
  • IVB
  • KVV
  • LinzAG
  • NVBW
  • SVV
  • TLEM
  • VBL
  • VGN
  • VMV
  • VOR
  • VRN
  • VVO
  • VVS
  • VVV
  • BVG
  • DB
  • NASA
  • NVV
  • RSAG
  • SBB
  • VBB
  • VBN
  • ÖBB


Its my first Open Source Project, so it would be nice if you share your experience with this module with me! Feel free to suggest additional features and / or improvements.


Version 1.0

  • initial release

Version 1.1

  • added some additional configuration to set a custom width
  • added the option to scroll the destination text horizontally

Version 1.2

  • now displays delays

Version 1.5

  • delay bugfix and styling changes
  • rail track is now displayed
  • added additional display type

Version 1.5.1

  • fix for Issue #3 scrollAfter and displayType lcd
You can’t perform that action at this time.