External Publication
Visit Post

Setting up a Meshtastic Node with the ESP32 LoRa V3

~/.bnux February 9, 2026
Source
I’ve been wanting to experiment with Meshtastic for off-grid communication for a while now. It’s an open-source, decentralized mesh network that runs on low-cost LoRa (Long Range) radios (a technology that allows for sending small amounts of data over very long distances with very little power). After doing a bit of research, I picked up a MakerFocus ESP32 LoRa V3 Development Board (a Heltec V3 clone) to get started. tl;dr: I attached the antenna, connected the board to my Mac via USB-C, and used the CLI to flash the latest stable Meshtastic firmware. A Quick Warning When my device arrived, it didn't come with any instructions. My first instinct was to plug it in and see what happened. Don't do that. If you power on a LoRa board without an antenna attached, you risk frying the radio module. Before you plug anything in, make sure you snap the included 915 MHz antenna onto the small U.FL connector (a small, gold-colored plug near the antenna label on the board). Environment Setup If you're new to using a Terminal, it's simply a way to give your computer direct text-based instructions instead of clicking through a graphical interface. On a Mac, you can open it by pressing and typing "Terminal," or by finding it in your Applications > Utilities folder. Once it's open, you'll see a window where you can type commands and press to run them. Meshtastic also offers a Web Flasher that handles all of this through the browser, which is the recommended approach for most people. I went with the CLI because I wanted to understand what was happening under the hood. I decided to flash the firmware via the command line. "Flashing" is just a technical term for installing or updating the software (called firmware) that lives directly on the hardware of your device. I already had Python 3 installed, but if you're on a Mac and need it, Homebrew is the easiest way to get up and running. If you're not familiar with Homebrew, it's a package manager for macOS. Homebrew makes it simple to install, update, and manage software (like Python, Git, or other tools) directly from your terminal, without having to hunt for installers online. You can check your Python version by running: Once Python is ready, install from PyPI: Note: Depending on your setup, the command may be instead of . With the antenna attached and the board plugged into my laptop via USB-C, I ran a quick check to make sure everything was communicating properly: This confirmed the connection and gave me the specific chip details, which is helpful for making sure you download the right firmware. Download the Firmware Next, head over to the Meshtastic downloads page. Finding the right firmware can be confusing because Meshtastic supports many different boards. The key is to match the firmware to the specific microcontroller and hardware layout of your device. Click the "Download Stable" button, which redirects to the latest release on GitHub (it was at the time of writing). Look for the zip file that matches your hardware architecture. For the Heltec V3, which is an ESP32-S3 based board, I downloaded . Extract the contents locally. Inside the extracted folder, you'll see a lot of files. This is where it gets specific. You need the (binary) file that matches your exact board model. Since I'm doing a fresh install on a new board, I'm looking for the full installation binary. Based on my check and the board's name, I needed: . If you're using a different board, like a T-Beam or a Lora32, make sure the filename explicitly mentions your hardware to avoid bricking the device or having features like the screen not work. Flashing the Board Meshtastic includes a script to make flashing easier. In your terminal, with the device still connected via USB, navigate to the extracted firmware folder and run: The flag tells the script exactly which firmware file to use. The process takes a few minutes to complete. If you ever need to update the firmware in the future, you'll follow the same process but use the "update" file. Initial Configuration Once the CLI finishes and the board reboots, you can connect to it using the Meshtastic app on your phone. Here are the basic steps to get everything configured: Download the App: Get the Meshtastic app for iOS or Android. Pair via Bluetooth: Open the app and ensure Bluetooth is enabled on your phone. The app should automatically scan for nearby devices. Look for a device named something like (the last four characters usually match the end of your device's MAC address, which is a unique identifier assigned to every piece of network hardware). Set Your Region: This is the most important step for regulatory compliance. In the app, go to Settings > LoRa and select your region (e.g., for 915 MHz). The device will reboot once the change is saved. Configure Your Profile: Under Settings > User, set your Display Name (what others see) and a four-character Short Name (used for identification in compact lists). Send a Test Message: Go to the Messages tab and try sending a message to the channel. Even if no one else is around, you should see your message appear on the device's screen (if it has one). Now that your node is configured, you're part of the mesh! You can join additional channels, set up private encrypted groups, or even use your node as a gateway to the internet via MQTT.

Discussion in the ATmosphere

Loading comments...