Skip to main content

Time Trial Start Console

Project description

metarace-ttstart

Time trial start console application. Includes time of day, rider number, rider name, a 30 second count-down and audible start beeps.

ttstart screenshot

For battery operated terminals, the screen can be set to dim in between starters.

Configuration

Configuration is via metarace sysconf section 'ttstart' with the following keys:

key (type) description [default]
topic (string) telegraph topic for start list updates [startlist]
fullscreen (boolean) run application fullscreen after initialisation
backlightdev (string) sysfs path to backlight device [null] (1) eg: /sys/class/backlight/acpi_video0
backlightlow (float) dimmed backlight level between starters [0.25]
backlighthigh (float) backlight level during countdown [1.0]
startlist (string) filename for a csv startlist file [startlist.csv]
syncthresh (float) maximum allowed audio de-sync in seconds [0.12] (2)

Notes:

  1. The backlight brightness file must be writable in order for dimming to work
  2. The acoustic start signal is terminated if it is not playing in sync with the displayed countdown.

Remote Control

ttstart connects to telegraph and subscribes to the topic nominated. To re-configure the start list, publish a JSON encoded array of arrays with the following columns:

  • start time (string), required
  • rider number (string), optional
  • rider series (string), ignored
  • rider name (string), optional

For example:

[["9h15:00","","","[Event Start]"], ["9h16:00","1","","First RIDER"]]

Requirements

  • Python >= 3.9
  • Gtk >= 3.0
  • metarace >= 2.1.1
  • tex-gyre fonts
  • gstreamer alsa plugins

Note: Some 32 bit systems (notably Intel Atom Toughbooks) will not play audio with the default Debian desktop installation. The workaround is to remove pulseaudio and use alsa directly:

$ sudo apt remove 'pulseaudio*'

Installation

Debian 11+

Install system requirements for ttstart and metarace with apt:

$ sudo apt install python3-venv python3-pip python3-cairo python3-gi python3-gi-cairo
$ sudo apt install gir1.2-gtk-3.0 gir1.2-rsvg-2.0 gir1.2-pango-1.0 gir1.2-gstreamer-1.0 gstreamer1.0-alsa tex-gyre
$ sudo apt install python3-serial python3-paho-mqtt python3-dateutil python3-xlwt

If not already created, add a virtualenv for metarace packages:

$ mkdir -p ~/Documents/metarace
$ python3 -m venv --system-site-packages ~/Documents/metarace/venv

Activate the virtualenv and install ttstart with pip:

$ source ~/Documents/metarace/venv/bin/activate
(venv) $ pip3 install metarace-ttstart

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

metarace-ttstart-1.0.1.tar.gz (242.9 kB view details)

Uploaded Source

Built Distribution

metarace_ttstart-1.0.1-py3-none-any.whl (251.5 kB view details)

Uploaded Python 3

File details

Details for the file metarace-ttstart-1.0.1.tar.gz.

File metadata

  • Download URL: metarace-ttstart-1.0.1.tar.gz
  • Upload date:
  • Size: 242.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for metarace-ttstart-1.0.1.tar.gz
Algorithm Hash digest
SHA256 f8ed0d275867ede50a3a10912200c2720d9c6e210e9624256031499b247adc63
MD5 88cfa9e30c19b089b867d436716fc0aa
BLAKE2b-256 8afd18920a2c73565ec9257ef46ead9b360e4c18d4ead1038a1552c4ed2f6b12

See more details on using hashes here.

File details

Details for the file metarace_ttstart-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for metarace_ttstart-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 44b7af270aea5c97d3084fb9e9811a6b7406baa34c0dd02c93e8a2ac3d01413a
MD5 048bc5d218ede74b9f542aca7fcf22c5
BLAKE2b-256 0b2adc924ce126e68faf27c73c8624ee1e12443e15d30eabc1d611c16f1467b2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page