Ceefax Station: Een moderne recreatie van de klassieke Ceefax-teletekstservice voor HAM-radio

Wat is Ceefax Station?

Met Ceefax Station kun je het volgende doen:

  • Live-stijl pagina's bekijken (zoals het weer, nieuws, voetbal, tv, loterij, etc.).
  • Deze pagina's verzenden via de radio (voor gelicentieerde operators).
  • Pagina's ontvangen van andere stations.
  • Zichtbaar zijn op de publieke kaart: ceefaxstation.com.

Er zijn geen API-sleutels nodig; stations downloaden automatisch een gedeeld 'page pack' van ceefaxstation.com. Je hebt geen radio nodig om simpelweg de viewer uit te proberen.

Let op: Dit is alpha-software; het programma werkt, maar functies kunnen nog veranderen.

Snelstart (Aanbevolen)

De beste manier om de nieuwste versie te verkrijgen is via installatie vanaf GitHub. Geïnstalleerde apps kunnen later zelf updates uitvoeren (via de U-toets in de viewer of via het commando ceefaxstation update).

Linux (Debian / Ubuntu / Raspberry Pi OS)

Installeer het Debian-pakket (tag v0.1.5 / versie 0.1.5-alpha):

Via deze repository (main):

curl -L -o ceefax-station.deb https://github.com/thaum-labs/ceefax_station/raw/main/installers/ceefax-station.deb
sudo apt install ./ceefax-station.deb
ceefaxstation

Als je de repository al hebt gekloond:

sudo apt install ./installers/ceefax-station.deb
ceefaxstation

Dit installeert het ceefaxstation-commando. Bij de eerste run worden de configuratie en pagina's opgeslagen in ~/.ceefax_station. Voor het live ontvangen via radio is het vereist om direwolf en alsa-utils te installeren: sudo apt install direwolf alsa-utils.

Windows

Windows-installaties kunnen later ook zelf updates uitvoeren (via U in de viewer of ceefaxstation update). Een setup-EXE is beschikbaar in de map installers/ en op ceefaxstation.com/download.

Installatie vanuit broncode (From source)

  1. Installeer Python 3.11

Download via python.org/downloads. Vink op Windows de optie "Add Python to PATH" aan.

  1. Download Ceefax Station

``bash git clone https://github.com/thaum-labs/ceefaxstation.git cd ceefaxstation `` (Zonder Git: klik op GitHub op de groene knop 'Code' → 'Download ZIP' en pak het bestand uit).

  1. Installeer pakketten

``bash python -m pip install -r ceefax/requirements.txt ` Voer op Windows daarnaast het volgende uit: `bash python -m pip install windows-curses ``

  1. Stel je stationnaam in

Bewerk het bestand ceefax/radioconfig.json: ``json { "callsign": "JOUWCALLSIGN", "frequency": "2m (144.0-148.0 MHz)", "grid": "IO91WM" } ``

  • callsign: Je amateur-callsign, of een korte naam voor testdoeleinden.
  • grid: Maidenhead-locator (bijv. IO91WM) om op de kaart te verschijnen.
  • frequency: Alleen nodig als je gaat verzenden.
  1. Uitvoeren

``bash python -m ceefaxstation debug --refresh --view `` Dit commando zal:

  • De gedeelde pagina's downloaden van ceefaxstation.com (geen sleutels nodig).
  • Je lokale weer- en callsign-pagina's bijwerken.
  • De Ceefax-viewer openen.

Gebruik van de viewer

ToetsActie
101, 200, 304...Ga naar die specifieke pagina
n of Volgende pagina
p of $\leftarrow$Vorige pagina
F5Pagina's herladen (hub-pack indien nieuwer)
UGitHub controleren en de geïnstalleerde app updaten
tVerzendmenu (Transmit)
rOntvangstmenu (Receive)
sStation-instellingen
Esc of qTerug / Afsluiten

Handige pagina's: 101 Weer $\cdot$ 200 Nieuws $\cdot$ 304 Voetbal $\cdot$ 402 Loterij $\cdot$ 503 TV $\cdot$ 504 Films.

Pagina's en databronnen

Standaard maakt de refresh-functie gebruik van het hub-page pack:

python -m ceefaxstation pages pull
python -m ceefaxstation debug --refresh --view
InhoudBron
Nieuws, sport, loterij, TV, films, UK weer...Gedownload van ceefaxstation.com
Lokaal weer (102)Bijgewerkt op jouw PC
Callsign / radio-pagina (700)Bijgewerkt op jouw PC

Indien de hub tijdelijk offline is, valt Ceefax terug op het bouwen van pagina's op je eigen PC (sommige pagina's vereisen dan API-sleutels; dit kan meestal genegeerd worden).

Optionele installateurs

  • Linux (v0.1.5): installers/ceefax-station.deb en installers/ceefax-station0.1.5~alpha-1all.deb. Installatie via sudo apt install ./installers/ceefax-station.deb.
  • Windows: installers/CeefaxStation-Setup-0.1.4.exe.

De Windows-installer is de eenvoudigste methode voor dat platform, aangezien deze de app en Dire Wolf (voor live RX) bundelt. Het Debian-pakket maakt gebruik van systeem-Python en adviseert het distributie-pakket van direwolf.

Radio (TX / RX)

Voor gebruik is een geldige licentie, een radio en een audioverbinding met de pc vereist. Voor het decoderen van live ontvangst is Dire Wolf nodig.

  • Windows: Gebundeld onder ceefax/tools/direwolf in de installer.
  • Linux: sudo apt install direwolf.
  • Handmatige installatie: Plaats direwolf of direwolf.exe in de PATH of in de projectmap.

Commando's:

# Eenmaal verzenden
python -m ceefaxstation tx now --play

# Elk uur verzenden (ververst eerst de pagina's)
python -m ceefaxstation tx hourly --play

# Laatste WAV / live audio ontvangen
python -m ceefaxstation rx latest
python -m ceefaxstation rx live

In de interactieve viewer verzendt de toets T nu (3 loops) en blijft vervolgens 'armed': het programma ververst de pagina's voor het volgende uur en verzendt opnieuw op :00, totdat ESC wordt ingedrukt.

Verschijnen op de kaart

Na een TX- of RX-sessie uploadt Ceefax Station automatisch het nieuwe logboek naar ceefaxstation.com (vereist callsign en grid in radio_config.json).

Je kunt eventueel een achtergrondwatcher draaien:

python -m ceefaxstation upload

Op Windows: .\startuploader.ps1. Schakel automatische uploads uit met de omgevingsvariabele CEEFAXAUTO_UPLOAD=0.

Pagina-gids

Pagina'sInhoud
101–103Weer + UK kaart
200–202Nieuws
300–305Sport / voetbal
400–402Geld, reizen, loterij
500–504Feiten, citaten, TV, films
600–602Grappen, kunst, quiz
700Radio / callsign activiteit
900Over

Mini-glossarium

TermBetekenis
Hub / page packGedeelde pagina's gehost op ceefaxstation.com, zodat stations geen eigen API-sleutels nodig hebben.
CallsignJouw amateurradio-identificatie.
GridKorte locatiecode voor de kaart (Maidenhead).
TX / RXTransmit (verzenden) / Receive (ontvangen).
AX.25Packet radio-formaat gebruikt om pagina's als audio te verzenden.

Handige links

  • Live kaart + hub: ceefaxstation.com
  • Extra technische aantekeningen: ceefax/README.md
  • Licentie: MIT

Voor ontwikkelaars

Mapstructuur

  • ceefax/: Station-app, page updaters, viewer.
  • ceefaxstation/: CLI (python -m ceefaxstation ...).
  • ceefaxweb/: Broncode van de officiële site (ceefaxstation.com — niet bedoeld voor self-hosting).
  • installers/: Windows Setup .exe + Linux .deb.
  • packaging/debian/: Build-notities voor het Debian-pakket.

Testen: python -m pytest

Notitie over het Hub page pack

De officiële site ververst de gedeelde teletekstpagina's ongeveer elke 2 uur. Dit ritme is afgestemd op de gratis API-limieten van de gebruikte providers:

  • football-data.org (10 req/min)
  • Guardian developer (500/dag)
  • Lottery Results Feed free (100/maand)
  • Open-Meteo (10k/dag)

Stations downloaden enkel het gepubliceerde pakket en hebben deze API-sleutels dus niet zelf nodig.

Upload-emailmeldingen (voor site-eigenaar)

Op de DigitalOcean-box bevindt de live checkout zich in /root/ceefax_station. Voeg de volgende variabelen toe aan de .env en voer systemctl restart ceefaxweb uit:

  • RESENDAPIKEY=re_...
  • CEEFAXWEBNOTIFYTO=you@example.com
  • CEEFAXWEBNOTIFYFROM=Ceefax Station <notify@your-verified-domain> (optioneel)
  • CEEFAXWEBNOTIFYCOOLDOWN_SECONDS=120 (optioneel)

Demo-uploads (waarbij source_path begint met sample:) genereren geen e-mailmeldingen.