Meshcore – Offgrid kommunikation

Den dag røderusserne, syndfloden eller den næste komplekse komponentfejl kommer, hvordan får vi så kontakt med hinanden? I denne artikel forklarer jeg, hvordan du både kan være del af et sjovt projekt og være med til at opbygge et ægte prepper-net! Med MeshCore kan vi bygge vores helt eget “pagernet”.

Udviklingen har givet os trådløs kommunikation som f.eks. 5G, der tilbyder imponerende tjenester og høj kapacitet – ved hjælp af et tæt netværk af højteknologiske basestationer, forbindelse mellem dem og servere til at styre dem.

Der har også været en anden spændende radioudvikling. Radioteknologier der har til formål at sende meget simple, korte beskeder mellem batteridrevne sensorer langt væk fra civilisationen. Uden for dækning af mobilnettet eller måske bare væk fra el-nettet. F.eks. jordfugtighedsmålere ude på marken, en simpel publikumstæller på en naturlejrplads eller en sensor på en skraldespand.

Til det blev i 2015 lanceret en ny LoRa-radioteknik. Kort for Long Range. Ideen er simpel: 1) Brug lav båndbredde for at opnå lang rækkevidde 2) Lav en protokol der hurtigt kan aflevere eller modtage en besked og så gå i dyb dvale i en periode for at kunne køre længe på et lille batteri.

Makemiljøet har nu kastet sig med kærlighed over LoRa og med hjælp fra bl.a. billige kinesiske elektronikfabrikker udviklet en række hardware- og softwareprojekter, der nu virkelig har nået et spændende niveau, hvor også ikke-ultra-nørder kan være med. For få hundrede kroner og med lidt guides på nettet kan man få en tekstpager eller mobiltelefonlignende kommunikator og skrive sammen med andre enheder helt uden mobilnettet. Der er sågar et ur der minder om noget man har set før, og man kan også bruge en enhed helt uden skærm og forbinde til den via bluetooth og en app på telefonen.

Hvis man tidligere har villet bruge LoRa, har man typisk enten skulle lave en aftale med en operatør helt på samme måde som med en mobiltelefon, f.eks. The Things Network. Super fint produkt – men ikke så fleksibelt og sjovt. Nu er der kommet (mindst) to open source-projekter, hvor man blot installerer software på enheden, og så laver enhederne selv et netværk mellem sig. Et såkaldt mesh-netværk, hvor enhederne sender beskederne videre til hinanden uden netværksforbundne basestationer. Det kan enten bruges til at et team i relativ nærhed af hinanden kan være i forbindelse, eller man kan gå sammen i større samarbejder og skabe forbindelse over længere afstande – typisk ved at der etableres enheder med gode antenner på høje punkter, der hjælper med at sende beskeder videre. Ofte kaldet en repeater eller en router. Det er typisk samme slags enhed, blot konfigureret til hele tiden at lytte efter beskeder. De bruger lidt mere strøm, men kan stadig let drives med en solcelle og et lille batteri.

En sådan base kan købes som en samlet enhed med solcelle og batteri for under 1000,- kr.

Der er to populære projekter, der begge bruger samme hardware. Meshtastic og MeshCore. Jeg har kort testet begge og dernæst valgt at arbejde videre med MeshCore. Der kan sikkert siges en masse om forskellen, men min umiddelbare konklusion er, at Meshtastic er kommet længst. Der er blandt andet en del aktive noder omkring København, og softwaren har måske flere funktioner. Til gengæld virker MeshCore til at være lidt mere grundig, mere gennemtænkt og en mere logisk app. Der er dog ikke rigtig nogen aktive noder i mit nabolag (ud over mine), så vidt jeg har kunnet finde. Måske de kommer.

MeshCore

Min artikel her vil derfor beskrive mine erfaringer og tips med MeshCore. Lad mig starte med ganske kort at forklare, hvordan man bruger MeshCore. Som en helt almindelig bruger.

BEMÆRKNING: Efter at have skrevet denne artikel har jeg genbesøgt Meshtastic og version 2.7 – Den er måske et bedre valg – Jeg undersøger pt. begge.

Kom i gang

Når man installerer software på sin enhed, skal man som helt almindelig bruger installere den software, der hedder companion. Hvis du køber en enhed med MeshCore installeret fra starten, vil det være det, der er på. Hvis din enhed er skærmfri, installerer du MeshCore-app på din telefon og forbinder til din enhed med bluetooth. I indstillingerne på din enhed giver du den et sigende navn, og det er nu det navn, andre på nettet vil kunne finde dig under.

Companion – En til en besked

Grundfunktionen er, at brugere kan sende tekstbeskeder til hinanden – præcis som en SMS. For at sende en besked skal du kende modtagerens adresse. Den består af enhedens navn og den offentlige del af den krypteringsnøgle, der er blevet lavet automatisk på din enhed. I MeshCores syntaks hedder det din Advert. Den kan du enten sende ud i luften, til de nærmeste via funktionen Advert Zero hub, til hele netværket via Advert Flood Route eller i en privat besked uden om netværket ved at lave Advert to clipboard og sende den f.eks. i en almindelig SMS til en, du kender. Den fælles udveksling af Adverts er din sikkerhed for, at beskeden kommer fra den rigtige afsender, og at en anden modtager ikke kan læse den.

Når andre sender en Advert, enten Zero Hub eller Flood Route, så modtager du den, hvis du er online og har forbindelse. Vær sikker på, at afsender er, hvem de udgiver sig for, inden du udveksler personlige beskeder.

Du kan finde mig på:

meshcore://1100bda8b9fcbcd0bf8045e14ebd785f4865bcd298885d68ee3d5ebe0018bf3093d043cead68b220470dfeaab61d01290094684c50bfaab9b0b3066eccde15753754f391bb4931400a92c0464033be8d1ef94d1a3e5e50438a1106a4271a41f25fe1b71fcb08919a565103d1d9bf005261736d75732053696e64756d

Kanaler – En til mange beskeder

Kanaler er den næste væsentlige funktion. Kanaler er en til mange-beskeder. Hvad du skriver i en kanal, modtager alle på kanalen, der er online, når beskeden bliver sendt. Til at starte med har alle Public-kanalen. Den bruger en kendt krypteringsnøgle, og alle kan derfor selvsagt læse med. Husk det, hvis du bare driver dit eget lille netværk. Hvis nogen sætter en enhed til, kan de læse med i Public-kanalen.

Du kan oprette dine egne kanaler. De kan dels være til forskellige formål. Lad os sige, at du bruger MeshCore på en stor spejderlejr, så kan en kanal være internt til lederne og en anden til at skrive med spejderne. En kanal består lige som en enkelt enhed af kanalens navn og dens krypteringsnøgler. Pas i øvrigt på at få navnet helt rigtigt. Jeg fik et mellemrum med i enden af min første kanal, da jeg kopierede den til min anden enhed. Det brugte jeg lige lidt tid på at regne ud var fejlen.

Room Server – Asynkrone beskeder

Som tidligere beskrevet er MeshCore et autonomt netværk af ganske simple enheder. Beskeder bliver sendt mellem enhederne til andre enheder, der måtte være online til at tage imod, men det bliver ikke gemt til senere. Hvis du ikke er online, får du ikke beskeden. Hvis du bruger en enhed via din telefon, så kan beskeden godt ligge og vente på enheden, så du får den, når du forbinder telefonen på bluetooth, men hvis din MeshCore-enhed ikke var forbundet til mesh-nettet, så får du ikke beskeden. Det er lidt som walkie-talkie bare med tekstbeskeder. Det er også det, man kan kalde synkron kommunikation.

Det kan dog forbedres lidt med en room server. Det er igen en helt almindelig lille enhed, der kunne have været en companion, der er installeret med room server-software.

En room server optræder som en bruger i brugerlisten, og man skal kende den på samme måde som en bruger, ved at få en advert. Når man forbinder til den, skal man kende et password, men når man så går ind på dens chat, vil man se en historik af de seneste beskeder også selv om man ikke har været forbundet. Der er to passwordtyper til et room. Guest der er for at skrive og læse i rummet og admin der er til at styre det. Der er en standard for, at guest password er “hello”, for offentlige rum. En room server kan lave et rum.

Hvis du kommer på mit Islandsbrygge-netværk, er du velkommen i mit “Netlogon Chat Room”

meshcore://1100f387fa9a11f70a1557550b7178df203c478805578f13ef11774df488674e86069695ad6886d0ca0b5f6e1952a7079ab9347552c68642c252a22bd51c9caec460114187898495e376158018481c1f68d6dda71c62ee83a35d46eaafcce654f107f0f9e80f9300000000000000004e65746c6f676f6e204368617420526f6f6d

Repeater – En lille hjælper

Rækkevidden mellem håndholdte enheder er ikke imponerende. Fra nogle få hundrede meter, hvis der er store bygninger og en lille antenne til måske 1 km i åbent land med gode antenner. Hvis der er behov for større udbredelse, kan det etableres ved at bruge en eller flere enheder placeret på strategiske punkter, gerne højt og med antenne med højere forstærkning. Til det formål kan man installere repeater-software i stedet for companion. Fordelen ved repeater er dels, at den er lidt mere aktiv i at få sendt pakker videre samtidig med, at den er bygget til remote administration. Hvis du kender dens password, kan du styre den via netværket og din companion-enhed.

Med enheder placeret med fri sigt kan der opnås forbindelse på 10 km eller mere. For en punkt til punkt-forbindelse med en retningsbestemt antenne kan jeg ikke se andet end, at det er line-of-sight og jordens krumning, der bliver begrænsningen. På 20 km vil det være en masthøjde på 30-40 meter, men hvis man har adgang til et højhus, er det jo en mulighed 😉

Map – Hvor er du?

Den sidste del, du har på din enhed, om det er en smart enhed med skærm eller på din smartphone-app, er map. Her kan du se, hvor andre enheder og repeatere er. Hvis de altså har valgt at opgive det. Det kan enten være baseret på data, brugerne selv har valgt, eller fra en indbygget gps/gnss-modtager. Hvis man bruger MeshCore i en outdoor- eller hjælpeindsats i en nødsituation, kan det være ret praktisk. Det udgør selvfølgelig også en privatlivsproblematik. MeshCore er derfor programmeret til at slå positionsdeling fra, hver gang en enhed bliver genstartet. Vær opmærksom på det, hvis du bruger positionsdeling aktivt.

Hardware

Hvad skal man så være opmærksom på, når man kikker på hardware?

Frekvens

Den er nem. For Europa skal du vælge en model med 868 MHz.

CPU

Enhederne bliver typisk lavet med enten den forholdsvis kraftige ESP32 cpu, kendt fra Arduino-udviklingsmiljøet, eller den langt mindre kraftige NRF52840, der til gengæld er langt mere batterieffektiv. Til de fleste formål og til at komme i gang vil jeg anbefale ESP32-baseret. Man kan sagtens køre en enhed på 3000 mAh batteri i 24 timer.

GPS/GNSS

Har du brug for positionsinfo, så husk at ikke alle enheder har GPS/GNSS. Mange har, men ikke de mindste og billigste.

Batteri

Har enheden batteri indbygget fra starten, eller plads til at sætte et direkte i en holder. Hvis ikke, har den så ladekredsløb, så du bare skal sætte et batteri på med en ledning.

Antenne

Følger der en med. Hvis ikke, hvad skal du bruge for at sætte den til. Der er printkort, der har det helt lille ipex 1.0-stik og kræver et pigtail-kabel, og der er enheder, der har det lidt større RP-SMA-stik og kan få en antenne skruet direkte på. De fleste små antenner jeg har set er med RP-SMA-stik, men check det grundigt, inden du bestiller. Antennestik er en jungle.

Jeg har endnu ikke den store erfaring med en god mobil antenne, men jeg mistænker, at den lille dims, der kommer med de fleste produkter, ikke er meget værd. Hvis du ikke kender lidt til antenneforstærkning og udstrålingsdiagram, så sæt dig lige lidt ind i det, inden du køber noget dumt.

Hele det præcise modelnavn

https://flasher.meshcore.co.uk er der en oversigt over alle understøttede enheder. Hvis du vælger en enhed, kan du også se, om der er support for companion, repeater og room server. Vær grundig med hele modelnavnet, når du researcher. Der er modeller, der minder meget om hinanden.

Med eller uden kasse

Har du brug for en kasse. Nogle produkter kommer som samlede færdige enheder, andre bare et print. Har du adgang til en 3D-printer, er der nogle cool designs du kan bruge. F.eks. Alley Cat på printables, der har nogle virkelig gennemarbejdede designs til Lilygo T-beam https://www.printables.com/model/730602-lilygo-t-beam-v1x-tb1-case-by-alley-cat

Anbefalinger

Jeg har ikke de store erfaringer, så en egentlig anbefaling vil jeg ikke give, men jeg kan sige, hvad jeg har

To stk Lilygo T-Beam SX1276 v 1.2. En der kører companion og en der kører repeater. Den kan ikke køre room server (Lilygo T-Beam SX1262 – den kan. Det var det med detaljerne). De har batteriholder til et standard 18650-batteri, der kan fås i Biltema for småpenge. Det er et råt print, så ovenstående design fra Alley Cat står på todo-listen.

En stk Heltec WSL3. Meget billig og lille enhed uden GPS. Den kan dog køre room server, så det er det, den gør. Jeg mistænker, at LoRa-radioen ikke er specielt god, men det gør ikke så meget. Den skal bare nå ud til min repeater, der står 5 meter væk. Den har ladekredsløb, så den kan lade en lille batteripakke, så den er en god kandidat til en ultra lille enhed. Den fås også i en udgave i en kasse med batteri.

På min radar

Jeg vil gerne teste en samlet enhed med skærm og tastatur, så jeg kan undvære telefonen. Lilygo T-Lora pager er på min shortlist. Det kunne også være Lilygo T-Deck pro, der har mere smartphone-lignende design.

Hvis jeg finder et godt sted til en repeater, bliver det en SenseCAP solar node P1. En samlet enhed med radio, solcelle, batteri og antenne. Måske med en antenne med lidt mere forstærkning.

Endelig er SenseCAP Card Tracker T1000-E også ret cool. Når den kommer på lager i Tyskland, tror jeg jeg må have en eller to af dem. Den er lige til at smide i rygsækken, når flere hold er ude på ski.

Vil du være med til at etablerer et Islandsbrygge/København/Sjælland/Amager net?

Det kunne være super sjovt at få et net op at køre. Kom over på Mastodon og skrive med på #MeshCoreDK

Er du ikke på Mastodon endnu, så anbefaler jeg https://mstdn.dk/

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *