Meshcore-sensor-net

From RevSpace

Project meshcore-sensor-net
File:Yunopicture.png
Status Initializing
Contact bertrik
Last Update 2026-02-22

Introduction

This project is an investigation for using meshcore as a transport layer for citizen science data.

Meshcore is basically a network of radio repeaters for lora messages with a specific radio setting. The idea is to use a citizen science sensor with a LoRa radio to uplink citizen science data through this repeater network, get the data repeated, then pick it up using a special kind of node is connected to the internet (e.g. MQTT) that forwards the data to a collection server for further processing.

The LoRa setting used almost universally in the Netherlands now is the EU/UK setting:

869.618 / SF8 / BW62.5 / CR8 header enabled sync word XXXX Description of the on-the-air message: https://gist.github.com/recrof/ca7ccff28c43d1b6bf7e55ce5159100b Dissection code: https://github.com/folkertvanheusden/meshcore-store/blob/master/utils/dissect.py

Meshcore repeaters a relatively "dumb", they just forward anything that resembles a packet (they can't inspect the encrypted part).

The idea is basically:

Sensor first starts up, sends a kind of discovery packet in "flood" mode. This kind of packet is flooded over the entire network. At some point the discovery packets reaches a special internet-connected gateway that forwards it to the backend software. The backend software processes the data payload and sends back an acknowledgement packet back over the (best) path that it received the message on. When this reaches the sensor node, the sensor node knows the most efficient way to reach the gateway node and uses a "direct" packet. Every now and then it expects a kind of acknowledgement packet back from the server, to know that messages are still coming through. This is actually a bit similar to how LoRaWAN works.

Investigation

Software

See https://github.com/bertrik/meshcore-sensor-net