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.