FAQs
Overview
This site (which has a great search function) is the preferred place for up-to-date documentation. Many of our users and developers hang out on the Meshtastic Discord server where you may connect with like-minded people.
Everyone contributes in a different way. Join the Meshtastic Discord and introduce yourself. We're all very friendly. If you'd like to pitch in some code, check out the Development menu on the left. If you'd like to contribute financially, please visit our page on Open Collective or you may choose to sponsor a developer. Check out Contributing for more details.
Firmware
No, Meshtastic does not support OTA updates over LoRa. Please visit Flash Firmware for update options.
Currently, there are two types of Meshtastic firmware releases, "Alpha" and "Beta". Firmware releases are labeled with the version number, commit hash and the type. Installing the latest beta release recommended for most cases. Alpha release are geared towards users interested in testing the new features, fixes or enhancements with the understanding there are additional risks and potential for instability compared to running a beta release.
Firmware should be kept up to date. While it is not necessary to update whenever a new release comes out it's a good idea to follow the Discord Server and Forums linked in the Introduction where developers may advise the community about important updates. The Meshtastic firmware releases page on Github has a summary of what has changed in each release.
Android Client
Minimum requirement is Android 5 (Lollipop 2014, first BLE support), however at least Android 6 (Marshmallow 2015) is recommended as Bluetooth is more stable. While Android 5/6 are officially supported by Meshtastic, it is not recommended that you purchase devices with these versions due to their limited OS support and limited battery life due to age. Many newer models exist that are very affordable. A good resource to use when researching affordable devices is the LineageOS Supported Devices List.
- Cloud with an up arrow - Queued on the app to be sent to your device.
- Cloud only - Queued on the device to be sent over the mesh.
- Cloud with a check mark - At least one other node on the mesh acknowledged the message.
- Person with a check mark - The intended recipient of your direct message acknowledged the message.
- Cloud crossed out - Not acknowledged or message error.
Long press any message to select and show the menu with "delete" and "select all" buttons.
Try forgetting the Bluetooth connection from the Android Bluetooth Settings menu. Re-pair and try again. This is a security measure and there is no workaround for it. It prevents apps and other accessories from spoofing an existing accessory by un-pairing and "re-pairing" themselves without the users' knowledge.
Apple Clients
The Meshtastic App on Apple Clients require the following minimum OS versions: iOS 16.2, iPadOS 16.2, and macOS 13.
See Apple Apps
Try forgetting the Bluetooth connection from the iOS/iPadOS/macOS System Settings. Re-pair and try again. This is a security measure and there is no workaround for it. It prevents apps and other accessories from spoofing an existing accessory by un-pairing and "re-pairing" themselves without the users' knowledge.
Yes, when the message is sent you will first see a Waiting to be acknowledged...
status beneath the message. If the message is acknowledged by a node on the mesh this will update to Acknowledged
in orange, which turns into grey when sending a direct message and the intended recipient acknowledged it. If no nodes have responded it will indicate Max Retransmission Reached
. If there is an error, the status will update to the appropriate error. Additionally, you can long press on the message and select Message Details
to view the date/time sent, if ack was received and the time ack was received or the error (if there was one).
Channels
Your Meshtastic client (Android, Apple, Web, or Python) will provide you a URL or QR code. You can email, text or print this URL or QR code and share it with people you want to join your Meshtastic Channel.
Python CLI
It's been reported that App execution aliases
might conflict with one another and prevent python3 from being able to run properly. There is an example of a fix located here.
Devices
Hold down the left PWR button for about 10 seconds and the display should turn off.
Push the left PWR button for about 1 second.
T-Beam Buttons explained here
Each supported device has a "Purchase Link".
Updating firmware varies with hardware. See Flashing Firmware.
The LoRa radio on the node is still active and will wake up the CPU when the device is sleeping. If your phone is in range, the node will relay any messages your phone may have missed. If you're in range and your device is active, messages have not been lost.
Once the node wakes up from sleep, your phone will relay any delayed messages through your node and to the mesh network. Give it a few minutes and it'll do the right thing.
See Device Power Configuration options.
Europe has an hourly duty cycle limit of 10% in the frequency band that Meshtastic uses. It might be that you hit this limit if you are sending a lot. You can confirm this by checking whether you see duty cycle limit errors in the serial log, Mesh Log (Apple apps) or Debug Panel (Android). To limit traffic, you can consider setting the device metrics and position update intervals higher. Alternatively, the device can be configured to override the duty cycle limit, but then you will violate the regulations.
There was a bug where Meshtastic Starter kits were sent out with the same MAC address. With a single MAC address the devices all report as being the same device. Without the battery connected, flash the starter kit device(s) to any firmware > 1.2.59 and then do a factory reset, disconnect and reconnect the board and run meshtastic --info
.
Amateur Radio (ham)
Meshtastic can be used by both unlicensed people and licensed HAM operators.
If you use your ham radio license with Meshtastic, consider both the privileges and restrictions:
Privileges
- Increased Transmit Power
- Up to 10W transmit power in the United States! 47 CFR 97.313(j)
- Higher Gain Antennas
Restrictions
- Plain-Text Only
- On amateur radio bands, encryption is illegal. FCC Part 97.113.A.4
- Lack of Privacy
- As a ham operator, it is a requirement that you identify yourself by your call sign periodically when transmitting. Your call sign will be publicly transmitted at least once every 10 minutes at minimum. FCC Part 97.119.A
- On Android navigate to Radio configuration -> User and set Long name to your Ham Radio callsign, then activate the slider for 'Licensed amateur radio'.
- On iPhone navigate to Settings -> User and set Long Name to your Ham Radio callsign, then activate the slider for 'Licensed Operator'.
- Instructions for Enabling ham License from the Python CLI can be found [here](/docs/software/python/cli/usage#ham-radio-support).
Mesh
No, Meshtastic uses LoRa peer to peer (p2p), which allows much more flexibility in how LoRa is utilized compared to LoraWan. Our messaging and position updates are far too "random" compared to LoRaWAN requirements.
Meshtastic uses LoRa peer to peer (p2p), which has allowed us to customize how we use the protocol. Likely it will not work with the service you have in mind, but it may be possible to build a bridge between services using MQTT. That will require further development outside the scope of this project to implement.
There is a community project that has worked out how to accomplish this.
Modules
Modules are features that expand the basic device functionality and/or integrate with other services.
A list of available modules is available here.
API documentation for creating modules is available here.