Python script to display replica real-time UK railway station departure screens for SSD13xx devices
To run this code, you will need Python 3.6+.
If you're using Raspbian Lite, you'll also need to install:
libopenjp2-7
with:
$ sudo apt-get install libopenjp2-7
Clone this repo
Install dependencies
$ pip install -r requirements.txt
Sign up for the Transport API, and generate an app ID and API key
Copy config.sample.json
to config.json
and complete the values, including your Transport API keys from step 3. _Note: station names should be provided as their three-letter station code, all available here._
Start the app with:
$ python ./src/main.py --display pygame --width 256 --height 64
Change the --display
flag to alter the output mechanism (a list of options can be found in this README: https://github.com/rm-hull/luma.examples). Use capture
to save to images, and pygame
to run a visual emulator.
Remember to pass --interface spi
if you are using SPI to communicate with your screen. Otherwise, the default of i2c
should suffice.
$ python ./src/main.py --display ssd1322 --width 256 --height 64 --interface spi
I've tweeted a video demo of the software running on a real device: https://twitter.com/chrishutchinson/status/1136743837244768257
The fonts used were painstakingly put together by DanielHartUK
and can be found on GitHub at https://github.com/DanielHartUK/Dot-Matrix-Typeface - A huge thanks for making that resource available!