Files
website/docs/radio-tracker.md
2026-10-26 17:24:03 +00:00

2.4 KiB

Radio tracker (/trackers/radio)

Private (owner-only, 404 for everyone else) tracker for Opa Chiel's scanner hobby.

  • Frequencies (radio.frequencies): freq in Hz, mode, band (marine/air/ham/pmr/other), name, location, notes, marine channel, tags. Seeded from Opa's lists (airband banks 4-6, marine banks 7-10) and the extras in his notes (Haagse ronde, KLM ronde, ISS downlink, ADS-B).
  • Scanner banks (radio.channels): Uniden UBC125XLT layout, 10 banks x 50 channels. /trackers/radio/banks.csv exports all 500 channels in BC125AT_SS column order.
  • Nets (radio.nets): days (1 = Mon .. 7 = Sun) and "HH:MM" times in Europe/Amsterdam.
  • ISS passes (radio.iss_passes, radio.iss_tle): computed in scripts/radio.ts iss with satellite.js from the Celestrak TLE (CATNR 25544) for Gouda (52.011 N, 4.711 E), 5 days ahead.
  • Log (radio.log): what was heard, linked to a frequency.

Jobs (systemd user timers on stan-ovh, copies in deploy/systemd)

  • radio-iss.timer: daily 04:15 Amsterdam, bun scripts/radio.ts iss in the app container.
  • radio-remind.timer: every minute, bun scripts/radio.ts remind. Sends an ntfy push 10 minutes before each net with remind on and each ISS pass with max elevation >= 10 deg. radio.reminders makes each reminder fire once.
  • Both read ~/.config/radio.env (mode 600): RADIO_NTFY_URL (ntfy topic URL), optional RADIO_NTFY_TOKEN. Log: ~/.local/state/radio.log.
  • bun scripts/radio.ts upcoming prints the next 24 h of reminders without sending.

Quiet hours

Reminders whose send time (event minus 10 min) falls in 00:00-08:00 Europe/Amsterdam are skipped. Override with RADIO_QUIET_HOURS=HH:MM-HH:MM (or off) in ~/.config/radio.env; the page shows the code default (QUIET_HOURS in src/lib/radio/index.ts). bun scripts/radio.ts upcoming marks skipped reminders as QUIET-SKIP.

Reminders and banks (26 Oct 2026)

Reminders are on only for live events worth tuning into: ISS passes >= 10 deg and the Haagse ronde. The routine coastguard broadcasts (weather 13:05/19:05, nav warnings 17:30) and the tentative KLM ronde (Sun 12:30, 3785 kHz LSB, from one observation) are off.

Banks 1-3 were filled by scripts/radio-banks-1-3.ts (idempotent; run once in the app container): bank 1 ISS + APRS, bank 2 calling channels + Haagse ronde, bank 3 FM repeaters around Gouda from the RDI list, cross-checked with Wikipedia.