Start here
Tern is a LoRa mesh: small radios that pass short messages to each other over kilometres, with no phone network or internet. You carry or place a node, a board running Tern's firmware, and use it from an app on your phone or computer.
Tern is early. The firmware is an alpha, a later release may not talk to an earlier one, and nobody outside the project has yet reviewed its cryptography. It is for trying out, not for anything you depend on.
In five steps
- Get a board, the 863-928 MHz kind: any of those on Hardware. The Heltec WiFi LoRa 32 V3 is the one checked on hardware so far; the others are built and waiting to be tried.
- Fit its antenna before you power it. A board sends as soon as it starts, and a radio sending with no antenna can damage itself.
- Flash it from the flash page, in Chrome or Edge on a computer, over USB. Choose the region you are in.
- Get an app: Android, iPhone, iPad, Mac, or the browser. Connect to the node over Bluetooth and type the passkey its screen shows.
- Add someone. Scan the QR code on their node's screen or app, or open their node's link. Check the twelve-digit code with them, then write.
With two boards of your own you can try all of it on a desk: drive one from a phone and the other from the browser app, add each as the other's contact, and write. Using Tern goes through each step.
The docs
- Using Tern
- Connecting an app, contacts, messages and what their states mean, groups, sharing a position, the node's own screen and button, and updating its firmware.
- Hardware
- Every board the firmware is built for, which run today, and how each is flashed.
- Troubleshooting
- When flashing, pairing or a message does not go as it should.
- FAQ
- How Tern differs from Meshtastic and MeshCore, what is private, what is legal where, and more.
Going deeper
The protocol itself is defined by the specification, and Why Tern sets out what the simulator measured against Meshtastic and MeshCore. The firmware's own documentation, for building it and for its serial console, is in ternmesh/firmware.