Hlavní navigace

Tři možnosti, jak si zprovoznit vlastní síť LoRaWAN pro internet věcí

LoRa nejsou jen sítě od velkých komerčních provozovatelů. Díky open source nástrojům si lze zprovoznit vlastní, lokální a komunitní.
Adam Hořčica 26. 5. 2020
Doba čtení: 4 minuty

Sdílet

LoRaWAN je na rozdíl od jiných LPWAN jako Sigfox nebo NB-IoT víc svobodná. Pokud nejste v dosahu žádné gateway, prostě si můžete vztyčit vlastní. Pak ale vzniká otázka – kam s ní? Můžete využít nějakou existující síť (například komunitní síť TTN nebo třeba komerční Loriot) a gateway do ní připojit přes internet a víc neřešit. Anebo když už máte svoji gateway, proč si nezprovoznit i vlastní privátní síť?

Důvody mohou být různé. Ať už jsou to problémy s konektivitou do internetu (nemusí to být ani nedostupnost, ale například firemní politiky). Citlivá data, která nesmí opustit infrastrukturu. Nedůvěra ke cloudovému řešení (co si neudělám sám…). Nebo prostě chcete experimentovat, tak jako já. Pojďme se tedy podívat na tři open source implementace LoRaWAN, které můžete použít a vyzkoušet si, jaké to je provozovat vlastní síť.

The Thing Stack

The Things Stack (TTS) je to, co pohání komunitní The Things Network (TTN). Autoři TTN od začátku samotný network server vyvíjí jako open source. TTN se skládá z mnoha komponent. Ne všechny jsou open source, nebo je open source pouze jejich odlehčená verze (například identity server).

High-level architektura TTS
Autor: The Things Stack

High-level architektura TTS

The Thing Industries (firma, která za tím vším stojí) nabízí i enterprise řešení, které má mnoho komponenty navíc (FOTA, monitoring, …), cloudovou variantu nebo placený support. Pokud vás zajímá víc, mrkněte na následující video.

Pokud chcete TTS vyzkoušet, je k dispozici dokumentace. Nejjednodušší je použití Dockeru (v dokumentaci je popsaný deployment pomocí docker-compose).

Dokumentace předpokládá, že trochu víte, co děláte, a znáte použité technologie. Jinak můžete narazit na nepěkné oříšky, které vás potrápí. Povzbudit vás může skutečnost, že aktuální V3 je na tom, co se dokumentace týče, o několik řádů lépe než V2. Dokumentace k V2 byla v zásadě jedna stránka a k dispozici byl pouze CLI nástroj pro správu (web ani identity server ve V2 OSS nebyly). V3 se stále vyvíjí, a to včetně dokumentace (například poslat downlink zprávu z webové konzole ještě ve verzi 3.7 nešlo, v době psaní článku je aktuální 3.8).

Úvodní stránka TTS webové konzole
Autor: Adam Hořčica

Úvodní stránka TTS webové konzole

Pokud znáte TTN, tak pro vás webová konzole TTS nebude ničím neznámým. Je jenom trochu víc detailní (prozradí víc informací o stavu vaší sítě) a má trochu víc flat design.

Mimochodem, TTN stále běží na V2. V3 má některé funkce navíc, které si na TTN dnes nevyzkoušíte. Zejména je to podpora class C (B je na roadmapě). A také podpora LoRaWAN 1.1 (pokud máte takové zařízení). TTN by mělo přejít na V3 v průběhu tohoto roku (viz záznam z dubnové The Thing Conference).

Jedna z věcí, kterou jiné projekty nemají, je Packet Broker. Pomocí něj můžete zprovoznit peering mezi TTS a TTN, případně pasivní roaming mezi dalšími sítěmi. Podrobnosti třeba někdy příště.

ChirpStack

ChirpStack (dříve LoRa Server) je další open source network server. Není tak „těžkotonážní“ jako TTS — přeci jen není navržený s ohledem na to, aby utáhl celé TTN. To mu ale neubírá na funkcích. Naopak, některé funkce jako FOTA (firmware over the air upgrade) má TTS až v placené verzi. I webové rozhraní působí subjektivně víc dotažené. Nemluvě o podpoře class B i C.

V základu pak přímo obsahuje několik zajímavých integrací, které mohou ušetřit práci (například integrace na oblíbenou time-series databázi InfluxDB).

High-level architektura ChirpStack
Autor: ChirpStack

High-level architektura ChirpStack

ChirpStack má přívětivější instalaci, pokud vám jde o to si jej rychle vyzkoušet. V zásadě, první spuštění bude rychlejší a konfigurace zabezpečení a podobně vás čeká až později, pokud se rozhodnete u něj zůstat. TTS to má naopak. Nejjednoduší je opět docker-compose, ale možností je víc, viz dokumentace.

Killer feature je předpřipravený image pro Raspberry PI (chirpstack-gateway-os-full), který obsahuje celý stack včetně gatewaye. Takže pokud máte LoRaWAN gateway postavenou nad Raspberry Pi, spustit na ní ChirpStack se vším všudy je otázka minut. Pro produkční nasazení se bez serveru neobejdete, ale na vyzkoušení je to geniální.

Ukázka webové konzole ChirpStack
Autor: Adam Hořčica

Ukázka webové konzole ChirpStack

Webové rozhraní je intuitivní a opět vás nepřekvapí, pokud znáte TTN. Máte pouze navíc věci, které na veřejném TTN nemáte po kontrolou (konfigurace sítě a různých profilů, organizací atd.).

lorawan-server

Třetí projekt nese název prostě jen lorawan-server. Ze všech tří je to nejmenší a nejkompaktnější řešení (heslo zní: The server aims to be an all-in-one software package for small private LoRaWAN networks.).

Co se funkcí týče, nejsou zde nejmodernější výstřelky typu LoRaWAN 1.1 nebo class B, ale stále je to srovnatelné s tím, co máte k dispozici v TTN.

High-level architektura lorawan-server
Autor: lorawan-server

High-level architektura lorawan-server

Pokud chcete mít co nejsnazší instalaci, je to asi ideální řešení. Opět je k dispozici Docker image (tentokrát opravdu pouze jeden image, žádný docker-compose), ale instalace mimo Docker je jednoduchá a popsaná v dokumentaci.

MIF mobilni aplikace

Ukázka dashboardu lorawan-server
Autor: Adam Hořčica

Ukázka dashboardu lorawan-server

Tento článek není vyčerpávající recenze (jak jste asi poznali – spíš fůra odkazů). Určitě se podívejte na vlastnosti a dokumentaci jednotlivých projektů a udělejte si vlastní obrázek. I pokud neplánujete provozovat vlastní síť, je zajímavé podívat se, jaké možnosti má konkurence – např. všimli jste si v dokumentaci, že TTS umí generovat QR kódy pro převod zařízení mezi majiteli? Docela cool, co?

Pokud víte o dalších open source LoRaWAN řešeních, které stojí za pozornost, dejte mi vědět. Rád je doplním.