Mesh-hunter
Mesh-Hunter.eu is een webapp voor MeshCore waarmee je de fysieke locatie van een node kunt bepalen aan de hand van radiosignalen. Tijdens het wandelen/fietsen/rijden worden directe (zero-hop) ontvangsten gecombineerd met de GPS-locatie van je telefoon. Op basis hiervan wordt een warmtekaart opgebouwd waarmee je de waarschijnlijke locatie van een node kunt bepalen.
Mesh-Hunter draait volledig in de browser als een Progressive Web App (PWA) en communiceert via Bluetooth met een MeshCore-node waarop de companion-firmware draait.
Waarom Mesh-Hunter?
Binnen een MeshCore-netwerk zijn regelmatig nodes zichtbaar waarvan de fysieke locatie onbekend is. Bijvoorbeeld:
- een onbekende repeater;
- een node die regelmatig adverts verstuurt;
- een storende of spammende node;
- een node waarvan je wilt weten hoe deze het netwerk bereikt.
Normaal gesproken is uit het MeshCore-protocol alleen af te leiden dat een node bestaat en hoe deze bereikbaar is. De locatie van de node wordt niet meegestuurd.
Mesh-Hunter helpt om deze locatie in het veld te bepalen door radiosignalen te meten terwijl je onderweg bent.
Hoe werkt het?
Mesh-Hunter toont uitsluitend directe ontvangsten (dus alleen zero- of last-hop). Wanneer een packet wordt ontvangen, registreert Mesh-Hunter onder andere:
- de GPS-locatie van jouw telefoon
- het tijdstip van ontvangst;
- het packet-type
- de signaal-sterkte (SNR+RSSI)
Deze metingen worden weergegeven op een warmtekaart. Belangrijk om te weten is dat de kaart niet de locatie van de node toont. De kaart laat zien waar jij was toen je de node rechtstreeks ontving. Door vanuit verschillende richtingen metingen te verzamelen ontstaat een patroon waarmee de vermoedelijke locatie van de node kan worden bepaald.
Wanneer een pakket eerst via een repeater is doorgestuurd en dan wordt ontvangen, hebben de RSSI- en SNR-waarden alleen nog betrekking op de laatste repeater. Die kan daarmee in kaart worden gebracht. In de app kun je door middel van filters zelf instellen waar je naar op zoek bent: zero-hop, packet-type, specifieke repeaters of afzenders.
Benodigdheden
Voor het gebruik van Mesh-Hunter heb je nodig:
- een MeshCore companion;
- een smartphone met Bluetooth en GPS met een browser met ondersteuning voor Web Bluetooth.
- Op Android wordt Google Chrome aanbevolen.
- iOS/Safari ondersteunt geen Web Bluetooth. Gebruik op iOS daarom een browser die dat wel ondersteunt zoals Bluefy.
Installatie
Mesh-Hunter is beschikbaar als Progressive Web App (PWA).
Open https://rx.mesh-hunter.eu - De webapp kan vervolgens aan het beginscherm van je telefoon worden toegevoegd.
Een node zoeken
Een typische zoekactie verloopt als volgt
- Open Mesh-Hunter.
- Verbind de companion via Bluetooth.
- Stel de filters in, bijvoorbeeld op packet-type en "direct-only".
- Rijd door het gebied waar je de node verwacht.
- Verzamel meerdere zero-hop ontvangsten.
- Gebruik de warmtekaart om het zoekgebied steeds kleiner te maken.
Discover
Niet iedere repeater verstuurt regelmatig adverts. Als je op zoek bent naar een repeater kun je de Discover-functie gebruiken waarbij repeaters in de directe omgeving worden gevraagd zichzelf opnieuw kenbaar te maken. De auto-discover gaat elke 10 seconden of per elke 50 meter af, welke maar eerder is. Dit zijn zero-hop packets.
Gedeelde kaart
Een account is optioneel. Via de settings in de app kun je een account aanmaken en koppelen aan de companions die je gebruikt. Op de kaart kun je vervolgens inloggen om je eigen metingen terug te zien: https://map.mesh-hunter.eu. Hierdoor ontstaat een gezamenlijke dekkingskaart die door meerdere gebruikers wordt opgebouwd. Als er in teamverband wordt gespeurd kunnen de leden inzicht in elkaars metingen krijgen, via een beheerder.
Privacy
De applicatie verzamelt:
- de GPS-locatie van jouw eigen telefoon;
- radiosignalen die een MeshCore-node zelf uitzendt.
De locatie van een node wordt afgeleid uit meerdere radiometingen.