Choose LetsMesh
When the installer asks which MQTT broker/preset you want, choose the current LetsMesh U.S. option if you are in the United States.
The current project documentation lists the U.S. endpoint as mqtt-us-v1.letsmesh.net.
No Linux wizardry required. No MQTT degree required. This page assumes you are starting from basically zero and tells you what to plug in, what to paste, and what “working” looks like.
You already have — or will have — a MeshCore repeater. We plug that repeater into a Raspberry Pi with USB. The Pi runs a small program called meshcoretomqtt. That program sends the repeater's packet data over the internet to LetsMesh, where you can view it in the analyzer.
That is the whole idea. Everything below is just getting those four pieces talking to each other.
A Pi 4 is perfect. It needs Raspberry Pi OS, internet access, power and a free USB port.
Not just a Companion. This guide expects a repeater that can output packet logging data.
Not every USB cable carries data. If nothing works later, the cable is one of the first things to swap.
The Pi must be online because it sends data to LetsMesh over the internet.
meshcoretomqtt can only send data that the repeater gives it. The upstream project recommends building the repeater firmware with:
-D MESH_PACKET_LOGGING=1You may also see this optional debug setting:
-D MESH_DEBUG=1Plug the MeshCore repeater into a USB port on the Raspberry Pi with a known-good data cable.
If your Pi has a screen and keyboard, click the Terminal icon. If you normally SSH into it from another computer, that is fine too.
You should see a prompt where you can type commands. You do not need to understand every command on this page. Copy carefully and paste.
curl -fsSL https://raw.githubusercontent.com/Cisien/meshcoretomqtt/main/install.sh | sudo bashPaste it into the Pi terminal and press Enter.
The installer does the annoying setup work for you. It creates the program folder, Python environment, configuration files and a Linux service so the bridge can start automatically.
When the installer asks which MQTT broker/preset you want, choose the current LetsMesh U.S. option if you are in the United States.
The current project documentation lists the U.S. endpoint as mqtt-us-v1.letsmesh.net.
The installer will ask for an IATA-style three-letter location code. This is used to organize the observer's MQTT data by area.
If you are unsure what code LetsMesh wants for your area, use the current LetsMesh onboarding page instead of guessing.
The program can auto-detect the MeshCore device public key. Newer compatible firmware also allows token authentication using the key stored on the radio.
You do not need to manually type your radio's giant public key unless the current installer specifically asks you to.
Paste this:
sudo systemctl status mctomqttLook for:
If you see that, the program itself is running. Press Q to leave the status screen.
Open the LetsMesh Analyzer and look for your observer/repeater data.
Give it a little time. Seeing the service running on the Pi does not necessarily mean data will appear on the website instantly.
Run this and leave it open:
sudo journalctl -u mctomqtt -fLook for the first clear error mentioning USB/serial, authentication, MQTT or configuration.
Try another USB data cable and another USB port before touching the software.
Re-check that your repeater firmware has packet logging enabled. This is one of the most important requirements.
Use the current LetsMesh onboarding instructions and upstream GitHub settings. Do not copy old usernames/passwords from stale tutorials.
sudo systemctl status mctomqttsudo systemctl restart mctomqttsudo journalctl -u mctomqtt -fcurl -fsSL https://raw.githubusercontent.com/Cisien/meshcoretomqtt/main/scripts/update.sh | sudo bashMQTT is just the internet messaging system this setup uses to move data from your Pi to LetsMesh. For this basic setup, no — you do not need to learn MQTT first. The installer handles the connection details.
It sits between the radio and LetsMesh. It reads packet/debug output from the repeater over USB and forwards that information over the internet.
No. Sending data to LetsMesh does not increase RF range. Your antenna, height, terrain, radio settings and actual repeater operation determine radio coverage.
Not if you want this observer bridge to keep working. meshcoretomqtt is running on the Pi, so the Pi must stay powered, online and connected to the repeater.
The upstream project says meshcoretomqtt forwards raw MeshCore packet data it receives from the repeater to the configured MQTT service. Private/secret channel content remains protected by channel keys, but this is still an internet-connected network-analysis setup.
The project also states that when token authentication is used, the repeater's private key is used locally for signing and is not transmitted or saved to disk by meshcoretomqtt.
This guide intentionally removes the jargon. If the software changes, the LetsMesh onboarding page and the original meshcoretomqtt repository are the current sources to check.