Meshtastic
This is how I got into Meshtastic as a European mostly residing in Sweden or Croatia during Q1 of 2024, using a Linux laptop.
Purchase device
I ordered the WiFi LoRa 32 V3 from heltec.org and they arrived within a few weeks. I would suggest you order at least 3 of them to test the mesh capability.
Flashed firmware
I used the CLI method in the official docs.
Install app
Install the Meshtastic app on a smartphone you want to use to test the mesh while on the go.
Testing
At first I just left one device connected to a laptop at home, and went outside with the other device and my smartphone.
I left a simple Python script running at home to provide some sort of response over Meshtastic for a basic test.
#!/usr/bin/env python3
import os
import sys
import logging
from time import sleep
from pubsub import pub
import meshtastic
import meshtastic.serial_interface
logging.basicConfig(stream=sys.stdout, level=logging.INFO)
def onReceive(packet, interface):
if not 'decoded' in packet.keys():
return False
if not 'text' in packet['decoded'].keys():
return False
if packet['decoded']['text'] == 'Roger Boxerboi':
interface.sendText('Pilki01 side-on 📻')
else:
logging.debug(packet)
def onConnection(interface, topic=pub.AUTO_TOPIC):
interface.sendText("{} signed on".format(os.uname()[1]))
pub.subscribe(onReceive, "meshtastic.receive")
pub.subscribe(onConnection, "meshtastic.connection.established")
interface = meshtastic.serial_interface.SerialInterface()
while True:
sleep(1000)
interface.close()
Then went outside with the other unit, connected it to the phone, used the meshtastic app to send a message to the other device.
This way I measured their range in various situations.
Testing the mesh
Now I just need to add a 3rd device and go outside of range of the first device to test the mesh.