Meshtastic is an interesting way to communicate across distances without the need of Wi-Fi or Cellular services. It is fairly localized communication that can span miles if you have line of sight to your transmitters. If they are closer to the ground your distance will suffer, if you put it up in a tree you can go a bit further. Antenna choice is also a consideration. If you have one with increased gain you can go further as well. I personally have tested with several nodes on my 13-acre property and the longest delay I had sending from the back of the property to the front was about 5 seconds.
Features
Attaches to your iOS or Android device using the Meshtastic App.
The default out of the box settings work and you can communicate immediately.
This has the unfortunate side effect that you will be on the LongFast Channel otherwise known as the Primary Channel and others that aren’t encrypting the LongFast Channel will be able to pinpoint location, find you as a client on the mesh and be able to send direct and channel messages to you.
You will have decent range without a repeater and there are many different devices that will connect to the mesh.
You can create encrypted private Channels to communicate with if you are in a group setting and can send direct messages to nodes your devices see on the LongFast Channel.
All visible Client nodes will act as a relay for your messages across the mesh, giving you greater range if you are around many similarly configured devices.
Encryption
Your LongFast/Primary Channel can be encrypted for secure applications up to 256bit, this is recommended if you want to limit who can send messages to you and who you want to send to. The node database can get pretty full if you are in area with a lot of nodes, or if you are driving around and picking them up in other areas. LongFast is also the Channel that telemetry data such as power, RSSI, and GPS go to, it is the Primary Channel where the others are secondary.
You can create additional channels and share them with QR codes or manually type in the key. The key does get fairly long though, so the QR code is easier. The Channel Name and the encryption key have to match and are case sensitive. When you create a channel always encrypt, these are typically created to be considered a group chat of sorts. You typically don’t want other people sending to a private channel or receiving messages that are sent to the mesh, encrypting the channel fixes that.
Range
It’s a little hit or miss on what to do to get longer range and it’s also a bit of a science and some trial and error, depending on what obstructions will weaken your signal. Below are some basic ways to get a better signal.
Stationary repeaters in various locations that are Clients. You can use Client Mute if you just want it to relay and it won’t show up but Client works well as is the recommended way to do it.
Longer antennas with higher gain, the antennas that come with the devices are OK but lack the range of an upgraded antenna.
More nodes, this is a mesh so the more routes back to a distant device the higher chance that the message will get there. You don’t want a lot of hops but 3 is OK, you start going much more and your success will vary. Repeaters help with this and can be used to extend without relying on devices that move around a lot.
These work in the 800-900mhz band and can go pretty far since the frequency is low but like most of these things you will need to test in the area you are using them in.
Use Cases
Meshtastic is based on LoRa and focuses primarily on off-grid messaging. This works good in a pinch but there are some other practical applications that I have implemented on my property that I thought were useful and, in some cases, more beneficial than texting alone. You can turn on the MQTT Proxy for a device connected to your phone and as long as it can MQTT messages to a server that can accept it you can log even while you’re remote. It will require you opening up the MQTT ports into your MQTT server or for a more secure option forcing it through a VPN connection. The other option is to use a Wi-Fi Meshtastic device such as the ESP32 models and having it act as a relay into MQTT for any messages it sees. This is beneficial if you are encrypting your primary channel as all the devices can send to the mesh are all encrypted.
GPS tracking of equipment. Most of the Meshtastic nodes have a GPS built-in or you can add one to many of the standard devices.
Home Assistant with the Meshtastic plugin.
MQTT, Telegraf, InfluxDB and Grafana will allow you to build a solution around Meshtastic nodes. It is more complicated, but you can keep historical logs, plot GPS, and link out to maps.
Message triggers to Home Assistant to run automations or scenes — for example when you are close to home.
Meshtastic also supports sensors such as temperature, humidity, air pressure. If you have the data, you can use other Arduino based devices to automate relays.
I’m sure there are others but all in all the ability of being able to automate things based on low-cost sensors that don’t require connectivity to cell or Wi-Fi is pretty amazing.
Resources
meshtastic.org↗ — main Meshtastic site
client.meshtastic.org↗ — browser client
flasher.meshtastic.org↗ — firmware upgrades
Heltec and Seeed Studio are good hardware catalogs. ESP32 boards cost more power and can do Wi-Fi or Bluetooth, not both at once. NRF boards sip power and stay on Bluetooth.