Reticulum in RNode: tako začneš v šifriranem omrežju LoRa Mesh, iščemo pa tudi sopotnike

Ta stran je bila samodejno prevedena. Lahko pride do napak.

Predstavljaj si omrežje, v katerem šifrirano pošiljaš sporočila, slike in datoteke, odpiraš majhne spletne strani, celo vodiš glasovne klice, in to vse brez mobilnega omrežja in brez interneta, samo prek 25-evrskega radijskega modula z anteno. To je zamisel, ki stoji za Reticulum. Ni še eno klepetalno omrežje LoRa kot MeshCore ali Meshtastic, ampak omrežni sklad: osnova, na kateri gradijo klepet, prenos datotek, strani, govor in več, in ki enako uporablja LoRa, WLAN, internetne tunele in packet radio.

OE8YML zdaj eksperimentira z njim. Prvi RNode stoji na pisalni mizi, Sideband teče in preizkušamo korak za korakom. Ta članek je navodilo za vse, ki bi radi sodelovali. Meritve s Koroške bomo dodali, ko jih bomo imeli. Vse, česar nismo sami preverili, je v besedilu označeno.

Kaj vse je mogoče početi?

Reticulum je gradbeni komplet. Tukaj je naštetih nekaj stvari, ki jih že danes zmore, vsaka s potjo do cilja. Imena programov so iz uradnega seznama programov. Kar smo sami preizkusili, je zraven navedeno, ostalo je po dokumentaciji.

Posnetek zaslona programa Reticulum MeshChat s seznamom sporočil, objavami (announces) in potekom klepeta
Reticulum MeshChat v namiznem oknu: klepet prek LXMF, ob njem objave (announces) drugih vozlišč, telefonska funkcija in dostop do strani Nomad. Posnetek zaslona: Liam Cottle, iz repozitorija na GitHubu (licenca MIT).

Šifriran klepet, tudi brez povezave

To je vstopna točka. Vsak udeleženec dobi naslov (kriptografski hash, kakor e-poštni naslov brez ponudnika). Naslov daš sogovorniku in že si lahko pišeta s šifriranjem od konca do konca, prek LoRa, WLAN ali interneta. Programi za to:

  • Sideband (Android, Linux, macOS, Windows): standardni odjemalec s klepetom, prilogami in govorom.
  • Columba (samo Android): mlajši in hitro rastoč, s klepetom, klici, lokacijo in zemljevidi brez povezave.
  • Reticulum MeshChat (namizje, brskalniški vmesnik): za pisalno mizo.
  • NomadNet (terminal): za vse, ki raje delajo v konzoli.

Takole začneš: namesti program, pokaži si naslov, izmenjaj ga s kom, ki ga poznaš, pošlji sporočilo. Odjemalci se med seboj razumejo. Kako natančno se imenujejo menuji v Sidebandu, bomo dopolnili po svojem preizkusu.

Sporočila, ki prispejo, tudi ko si brez povezave

Če sogovornik trenutno ni dosegljiv, lahko Propagation Node sporočilo shrani in ga kasneje dostavi (store and forward). Za to na računalniku ali Raspberry Pi teče program lxmd, ki pride s paketom Python lxmf. Po dokumentaciji je to pot do »e-pošte v meshu«. Nismo je še postavili.

Majhne spletne strani v meshu: strani Nomad

Z NomadNet upravljaš vozlišče, ki servira besedilne strani (v preprosti označevalni obliki, Micron), ki jih drugi odpirajo. To je mini splet, ki deluje tudi prek čistih povezav LoRa. Primeri: oglasna deska za lokalno društvo, vremenski podatki, wiki. Kdor hoče kaj spektakularnega, naj pogleda Retipedia, ki vsebine Wikipedije ponuja prek NomadNet. Za ogled je na voljo video Simona Phillipsa:

»Viewing and serving Pages via LoRa Radio Nodes on Reticulum Meshchat and Nomadnet« Simona Phillipsa (angleško, YouTube). Videa nismo pregledali, vsebino poznamo samo iz naslova.

Pošiljanje datotek in slik

Sideband in MeshChat pošiljata priloge. Za datoteke v ukazni vrstici obstaja rncp, »Reticulum copy«: datoteko pošlješ na naslov, na drugi strani pa čaka rncp v sprejemnem načinu. Natančno sintakso pokaže rncp --help, mi je še nismo preizkusili. Prek LoRa je to zelo počasno, pri pasovni širini 125 kHz je odvisno od spreading faktorja med približno 0,3 in 5,5 kbit/s (lastni izračun). Fotografijo v polni velikosti raje pošlji prek WLAN ali internetnega tunela.

Glasovni klici in skupine

Projekt LXST prinaša govor v mesh. Sem spadata rnphone (telefon za konzolo) in Partyline, nekakšen skupinski govorni kanal. Sideband, Columba in MeshChat prikazujejo telefonski del. Za skupinski klepet obstaja RRC (Reticulum Relay Chat) s središčem rrcd. Kako dobro je govor primeren za ozkopasovni LoRa, nismo preverili. Na povezavah prek WLAN in interneta ni težav.

Za tiste, ki radi tuhtajo in brkljajo

  • rnsh: oddaljena lupina, podobna SSH, za ozkopasovne povezave, da lahko vzdržuješ Raspberry Pi na hribu. Projekt je po GitHubu arhiviran, nismo preverili, kako je medtem vključen v jedro.
  • rngit: Git prek Reticulum, torej repozitoriji kode v meshu.
  • Boti z LXMFy: ogrodje za bote, ki odgovarjajo na sporočila, po seznamu programov tudi s Home Assistantom. Mogoče so statusne poizvedbe za senzorje ali repetitorje.
  • Vozlišča za samogradnjo: µReticulum je različica MicroPython za majhne plošče, kot je RP2040 (po opisu združljiva z izvirnikom).
  • Mostovi med radijskimi otoki: več omrežij LoRa je mogoče povezati prek TCP, I2P ali interneta. Iz tiska je znana povezava med Florido in Venezuelo (po Notebookcheck, april 2026, članka nismo sami prebrali).
  • Packet radio in kratki valovi: Reticulum pozna vmesnika KISS in AX.25. Hackaday je julija 2026 poročal o Reticulum na kratkih valovih v umetno anteno, ker šifriranje na amaterskih pasovih ni dovoljeno.

Na zemljevidu rmap.world je bilo ob našem raziskovanju 846 vozlišč, od tega 321 prek LoRa. Zemljevid je prostovoljen in šteje premalo. Vozlišča v Avstriji ali na območju DACH tam nismo našli, kar pa pomeni samo, da je nismo našli.

Gradnja lastnih aplikacij

Prava privlačnost: Reticulum je sklad s programskim vmesnikom. Sideband, NomadNet in drugi programi so samo aplikacije na njem, ti pa lahko zgradiš svoje, ne da bi se ukvarjal s šifriranjem, usmerjanjem ali radijsko strojno opremo. Uradni vmesnik za Python po priročniku med drugim ponuja te gradnike:

  • Identity in Destination: tvoja identiteta in cilj, ki ga lahko nagovarjajo drugi. Iz tega nastane naslov.
  • Announce: cilj objaviš v omrežju, po želji z dodatnimi podatki.
  • Link: šifrirana povezava, prek katere obe strani izmenjujeta podatke.
  • Requests in Responses: zahteva in odgovor prek povezave, kakor pri majhnem spletnem API-ju.
  • Channel in Buffer: strukturirana sporočila in podatkovni tokovi med dvema udeležencema.
  • Resource: zanesljiv prenos večjih količin podatkov in datotek. Vzorčni program »Filetransfer« prikazuje datotečni strežnik z odjemalcem.

Najmanjši primer iz priročnika (»Minimal«) zažene Reticulum, ustvari identiteto in cilj ter ob pritisku tipke pošlje announce. Jedro izgleda takole:

reticulum = RNS.Reticulum(configpath)
identity = RNS.Identity()
destination = RNS.Destination(
    identity,
    RNS.Destination.IN,
    RNS.Destination.SINGLE,
    APP_NAME,
    "minimalsample"
)
destination.set_proof_strategy(RNS.Destination.PROVE_ALL)

Dokončani primeri (Minimal, Announce, Echo, Link, Request, Channel, Buffer, Filetransfer) ležijo kot posamezne datoteke v mapi Examples/ repozitorija Reticulum. Še jih nismo zagnali, primer kode je iz priročnika. Dober začetek bi bil zagnati Echo.py in preizkusiti med dvema računalnikoma.

Zamisli za radioamaterje:

  • Statusni bot za repetitor, vremensko postajo ali sončni sistem, ki odgovarja na sporočila (»Napetost?«, »Temperatura?«). Za to obstajajo tudi pripravljena ogrodja za bote, kot je LXMFy.
  • Razdeljevalnik spotov za SOTA, POTA ali sporočila DX clusterja, ki kratka sporočila pošilja naročnikom v meshu.
  • Obrazec za poročanje v radiu za nujne primere: kratka, strukturirana sporočila (kraj, stanje, potreba) centrali, tudi ko mobilno omrežje in internet odpovesta.
  • Sinhronizacija dnevnika ali datotek med dvema postajama prek povezave.
  • Razdeljevanje lokacije za skupine na terenu, podobno kot pri Meshtasticu.

Na kaj moraš paziti: Aplikacija, ki dobro teče prek WLAN, je lahko prek LoRa neuporabna. Načrtuj z nekaj sto bajti na sporočilo in preračunaj čas oddajanja (pri enoodstotnem delovnem ciklu je to 36 sekund na uro). Licenca Reticulum pa velja tudi za to, kar zgradiš nanjo: ni dovoljena uporaba v sistemih, ki lahko ljudem namerno škodijo, in ne za učenje umetne inteligence. Kdor zgradi aplikacijo, nam lahko piše, z veseljem jo predstavimo tukaj.

Kaj je Reticulum in kaj je RNode?

Reticulum (RNS) je omrežni sklad Marka Qvista. Najpomembnejše lastnosti po priročniku:

  • Vedno šifrirano. Naslovi so kriptografski hashi, paketi ne nosijo naslova pošiljatelja.
  • Neodvisno od medija. Isto omrežje teče prek LoRa, WLAN, internetnih tunelov ali kabla.
  • Brez osrednje infrastrukture. Kdor hoče, upravlja vozlišče, vendar ni strežnika, ki bi vse držal skupaj.
  • Ni končne naprave. RNode je samo modem LoRa. Inteligenca teče na računalniku, Raspberry Pi ali telefonu.

Trenutna različica je RNS 1.6.0 z dne 7. novembra 2026. Obsežen uvod od samega razvijalca najdeš na koncu članka kot predavanje z 38C3.

Kaj potrebuješ

Zeleno ohišje z zaslonom OLED in privito anteno 868 MHz na zvezdišču USB
Preizkusni RNode OE8YML: plošča Heltec v ohišju, z zaslonom OLED in anteno 868 MHz. Foto: Michael, OE8YML.
  • Ploščo LoRa v ustrezni frekvenčni različici. Po vdelani programski opremi RNode so podprte na primer Heltec V3, V4 in T114, LilyGO T-Beam, T-Deck in T-Echo ter RAK4631. En sam cenovni vir (Metrum, september 2025) navaja okoli 25 evrov za Heltec V3, 35 do 45 za T-Beam in 55 do 70 za T-Echo. Trenutnih cen pri avstrijskih trgovcih nismo preverjali.
  • Ustrezno anteno. Plošče brez antene ne oddajaj, saj lahko poškoduješ končno stopnjo.
  • Računalnik ali telefon s povezavo do plošče prek USB, Bluetooth ali WLAN.

Mi preizkušamo na 868 MHz. Kdor želi preizkusiti območje 433 MHz, kupi različico plošče za 433 MHz. Več o tem v razdelku »Pravne zadeve« na koncu.

Začetek v šestih korakih

Vsi ukazi so iz dokumentacije (priročnik Reticulum) in iz naše lastne nastavitve. Kjer česa nismo sami videli, je to zapisano.

Za uvod: »How to get started with Reticulum and RNode« Andyja Kirbyja (angleško, video na YouTubu). Po Circuit Digest prikazuje sestavo RNode na Heltec LoRa32 V3, flashanje z spletnim flasherjem in nastavitev Sidebanda. Videa nismo sami pregledali. Opozorila o frekvenci in oddajni moči v tem članku veljajo za Avstrijo in imajo prednost.

1. Pripravi računalnik

Dovolj sta Python 3 in pip. Najbolje v virtualnem okolju:

python3 -m venv ~/reticulum
~/reticulum/bin/pip install rns --upgrade

V Linuxu poleg tega potrebuješ dostop do serijskega vmesnika (skupina dialout).

2. Flashaj RNode

Uradna pot je orodje rnodeconf iz paketa Reticulum:

~/reticulum/bin/rnodeconf --autoinstall

Vpraša po plošči in pasu. Izberi svojo ploščo in ustrezen pas (868/915 MHz). Nato z rnodeconf --info preveriš, ali model, pas in vdelana programska oprema ustrezajo. Kot alternativa obstaja spletni flasher Liama Cottla v brskalniku Chromium. Znani napaki tam sta »Hardware Failure« in »Firmware Corrupt«.

3. Neobvezno: RNode v WLAN

Z rnodeconf -w STATION --ssid <Name> --psk <Passwort> se RNode poveže z domačim WLAN (iz pomoči rnodeconf v različici 1.6.0). Potem kabla USB ne potrebuješ več, v konfiguraciji Reticulum je kot vrata navedeno tcp://<IP des RNode>. Geslo pri tem ukazu pristane v ukazni vrstici in s tem v zgodovini, zato ga raje ne vnašaj v klepet. Ali RNode po tem potrebuje ponovni zagon in ali vse deluje na vseh ploščah, še nismo dokončno preverili.

4. Nastavi Reticulum

Konfiguracija je v ~/.reticulum/config. Radijski vmesnik vpišemo, a ga najprej pustimo na enabled = no:

[[RNode LoRa Interface]]
  type = RNodeInterface
  enabled = no
  port = /dev/ttyUSB0
  frequency = 869850000
  bandwidth = 125000
  txpower = 7
  spreadingfactor = 8
  codingrate = 5
  airtime_limit_long = 1
  airtime_limit_short = 33
  • frequency = 869850000 je namenoma stran od frekvenc MeshCore in Meshtastic, več o tem v naslednjem razdelku. Primera iz dokumentacije z 867,2 MHz ne uporabljamo.
  • airtime_limit_long = 1 omeji oddajni čas na en odstotek. Primer iz dokumentacije navaja 1,5, kar bi bilo preveč.
  • txpower namenoma nizek. Ali nastavitev pri Heltec V4 opisuje moč na čipu ali na priključku, je odprto. Izmeri ali preberi v podatkovnem listu, preden povečaš.

5. Namesti Sideband

Sideband je standardni odjemalec za klepet (LXMF) v Androidu, Linuxu, macOS in Windows. Izdaje po README izhajajo prek PyPI, mi smo ga v Linuxu namestili takole:

python3 -m venv ~/sideband/.venv
~/sideband/.venv/bin/pip install sbapp
~/sideband/.venv/bin/sideband

Ob prvem zagonu so nam v Arch Linuxu manjkali xclip in xrandr za odložišče in skaliranje, kljub temu teče. V Windowsu še nismo preizkusili. V Play Store in na F-Droid Sidebanda po raziskavi ni, prenesi ga s strani projekta.

»How To Pair RNode With Sideband« avtorja GhostStrats, 4. del serije o nastavitvi (angleško, YouTube). Videa nismo pregledali, vsebino poznamo samo iz naslova in opisa.

6. Najprej preizkus brez radia, potem na pas

Najprej poveži Sideband samo prek interneta (prehod TCP iz priročnika, naslov in ali še deluje, preveriš sam). To je čista komunikacija IP in pravno nekritična, aplikacijo pa pri tem spoznaš. Šele potem pri RNodeInterface nastaviš enabled = yes, zaženeš rnsd in z rnstatus preveriš, ali se vmesnik pojavi s frekvenco in stanjem. Kako natančno RNode vključiš v Sidebandu pod Hardware, še nismo korak za korakom dokumentirali. To bomo dopolnili po svojem preizkusu. Do takrat pomaga zgornji video.

Dodatni videi o nastavitvi od Simona Phillipsa (angleško, YouTube, jih nismo pregledali): Install and Configure Reticulum Network Stack RNS for RNode in Browse Reticulum Nomad Network Pages using LoRa Radio Link Only.

Obzirnost: MeshCore in Meshtastic nočemo motiti

V Avstriji in Evropi MeshCore in Meshtastic delujeta v podpasu 869,4 do 869,65 MHz, po rezultatih iskanja s standardom EU pri okoli 869,525 MHz in deloma s pasovno širino 250 kHz. Tam je že tako gneča, v koroškem omrežju (glej MeshCore: radio brez mobilnega omrežja) je v uporabi veliko vozlišč. Delovni cikel ščiti samo lasten časovni proračun, ne pred trki. Signali LoRa z enako pasovno širino in enakim spreading faktorjem se močno motijo med seboj. Zato naša pravila za preizkus:

  1. Ne na frekvence mesh omrežij. Preizkušamo v podpasu 869,7 do 870 MHz, na primer na 869,850 MHz s pasovno širino 125 kHz.
  2. Najprej poslušaj, potem oddajaj. S SDR in OpenWebRX+ vidiš, kaj se dogaja na pasu. Kako to deluje, piše v Branje paketov LoRa Mesh z OpenWebRX+.
  3. Nobenega transportnega vozlišča z internetnimi announces na radijskem vmesniku. Sicer na radijsko zvezo trajno teče promet iz interneta.
  4. Kratki preizkusi, beleži airtime. Kdor pozna svoj oddajni čas, ga zna tudi omejiti.
  5. Nobenih repetitorjev ali stalnih postaj, dokler ne vemo, kako se omrežje obnaša.

Ali je ta podpas v vaši regiji res prost, ne vemo. To mora vsak preveriti na kraju samem. In ali RNode in sosednja omrežja uporabljajo isto sinhronizacijsko besedo LoRa (sync word), nismo preverili.

Iskreni minusi

  • Počasno. Pri pasovni širini 125 kHz in CR 4/5 naš izračun da približno 5,5 kbit/s pri SF7 in 0,29 kbit/s pri SF12. Announce s 167 bajti potrebuje pri SF8 približno 0,6 sekunde oddajnega časa. Pri enoodstotnem delovnem ciklu se tako na uro prilega samo približno 55 do 60 takih paketov (lasten izračun, bomo še merili).
  • Zahtevnejše kot MeshCore ali Meshtastic. Je omrežni sklad, ne naprava z zaslonom. Zato pa zmore več.
  • Majhna baza uporabnikov v nemško govorečem prostoru, malo dokumentacije v nemščini. To želimo s tem člankom spremeniti.
  • Licenca: Reticulum je pod MIT z dvema dodatnima klavzulama (ni dovoljena uporaba v sistemih, ki lahko ljudem namerno škodijo, in ne za učenje umetne inteligence). To ni licenca odprte kode, skladna z OSI. Za hobi radioamaterje je to v praksi nekritično, pravno svetovanje pa ni. Sideband je pod CC BY-NC-SA 4.0.
  • Razvoj ene osebe. Repozitorij na GitHubu je samo zrcalo. Po blogu razvijalca je bilo financiranje polnega razvoja tema že maja 2025, konec decembra 2025 pa je ukinil svojo spletno stran unsigned.io. Razvoj po PyPI teče naprej (1.6.0 z dne 7. novembra 2026), vendar je to tveganje za večje omrežje.

Pridruži se!

Mesh živi od vozlišč. OE8YML zdaj preizkuša, ali je Reticulum na LoRa v Avstriji smiselno uporaben, za to pa potrebujemo vas:

  • Imaš ploščo Heltec, T-Beam ali RAK? Flashaj jo po zgornjih navodilih in preizkušaj z nami.
  • Imaš SDR? Poglej, kaj se dogaja na 869,7 do 870 MHz pri tebi, in nam sporoči, ali je pas prost.
  • Poznaš vozlišča Reticulum v Avstriji? Potem se javi, da lahko naredimo seznam.
  • Bi rad pozneje preizkušal zveze? Piši nam svojo lokacijo (približno, dovolj je kraj) in kakšno strojno opremo imaš.

Piši nam na [email protected] s krajem, strojno opremo, frekvenco in, če želiš, RSSI in SNR. Ko bomo imeli dovolj odzivov, bomo objavili rezultate in seznam lokacij. In še enkrat prošnja: Bodite obzirni do obstoječih mesh omrežij. Kdor posluša, preden odda, nikomur ne škodi.

Pravne zadeve na kratko

  • Brez licence, brez klicnega znaka: Preizkušamo na frekvencah SRD (Short Range Devices) in ne v amaterski službi. Meje izhajajo iz sklepa EU 2022/180 (različica iz uradnega lista, ki jo gosti tudi RTR), na katerega se sklicuje uredba o uporabi frekvenc. Ali pozneje spremenjeni sklep 2025/105 kaj spreminja, nismo prebrali.
  • 868 MHz: V podpasu 869,7 do 870 MHz je dovoljenih 25 mW ERP pri 1 % delovnem ciklu (36 sekund oddajnega časa na uro), v 869,4 do 869,65 MHz 500 mW pri 10 %. Antena šteje k ERP. Hobi plošče zmorejo že iz tovarne bistveno več, zato oddajno moč namenoma nastavi nizko.
  • 70 cm kot pas ISM (433 MHz): V območju 433,05 do 434,79 MHz je dovoljenih 10 mW ERP pri 10 % delovnem ciklu. To je sredi amaterskega pasu 70 cm, a kdor tam oddaja kot naprava ISM, ni radioamater in ne potrebuje klicnega znaka. Prednost: veliko plošč obstaja v različici za 433 MHz, razširjanje je nekoliko boljše. Slabost: samo 10 mW, in radioamaterji uporabljamo iste frekvence. Tega nismo sami preizkusili.
  • Ne v amaterski službi: Reticulum vedno šifrira. TKG 2021 § 147 v amaterski službi zahteva »odprt jezik«, uredba o amaterski radijski službi (§ 20 odst. 5) prepoveduje naprave, ki omejujejo razumljivost. To je naše branje, uradnega mnenja nimamo. V dvomu vprašaj RTR. To ni pravno svetovanje.

Za nadaljnji ogled in branje

Obsežen uvod od samega razvijalca je na voljo kot predavanje z 38C3 (december 2024, 43 minut, licenca CC BY 4.0):

»Reticulum: Unstoppable Networks for The People«, predavanje Marka Qvista na 38C3, media.ccc.de (CC BY 4.0). Angleško, z nemško zvočno sled.

73, Michael OE8YML

Kako ocenjuješ ta članek?
Piškotki niso nastavljeni. Shranjeni so le tvoja ocena, neobvezen komentar in anonimiziran IP-hash (zaščita pred večkratnim glasovanjem). Varstvo podatkov

RSS Vir

Ostanite obveščeni!

Ne zamudite nobene novice – naročite se na naš RSS vir

„Wire and will, we’re breaking through –Share · Connect · Create!“

Gradiš antene, aktiviraš vrhove, eksperimentiraš z SDR ali programiraš Meshtastic vozlišča? OERadio.at je tvoja platforma. Deli svoje znanje – kot članek, navodila za gradnjo, terensko poročilo ali tehnični nasvet. Ne glede na to, ali si izkušen YL ali OM, sveže licenciran ali star maček: Tvoje izkušnje štejejo.