Files
wadamesh/scripts/rf-presets

RF presets: weekly catalogue

update.py builds the Russian city/region radio list from meshcoretel.ru:

  • /api/regions — country, city code, English name;
  • /ru — __INITIAL_RADIO_SETTINGS_BY_REGION__ (frequency, bandwidth, SF, CR).

It writes two files into the public apps tree:

  • rf-presets.txt — what the firmware downloads (tab-separated, one city per line);
  • rf-presets.json — the same data with metadata, for people and future tools.

Server installation

scp update.py root@meshinfo.ru:/usr/local/bin/wadamesh-rf-presets.py
ssh root@meshinfo.ru 'chmod 755 /usr/local/bin/wadamesh-rf-presets.py'

Install the weekly cron entry (Monday 04:17 server time):

install -m 644 wadamesh-rf-presets.cron /etc/cron.d/wadamesh-rf-presets

Run it once by hand:

RF_PRESETS_DIR=/var/www/meshinfo/firmware/apps \
  /usr/bin/python3 /usr/local/bin/wadamesh-rf-presets.py

A failed scan leaves the previous catalogue in place and exits non-zero; the cron log is /var/log/wadamesh-rf-presets.log.

Firmware

The Radio page has Update radio presets. It downloads rf-presets.txt to the UI data filesystem (/rf-presets.txt, SD or internal) and rebuilds the dropdown. The 50 built-in cities are always the fallback if the file is missing, empty or corrupt.

Format

# wadamesh rf presets
# ver: 20261025-2025
# source: meshcoretel.ru
# count: 51
# Name	MHz	kHz	SF	CR	code
Москва	868.731	62.5	7	7	MOW

Only the first five tab-separated fields are used by the device; the region code is informational.